ALIYUN::PrivateLink::VpcEndpointService creates an endpoint service.
Syntax
{
"Type": "ALIYUN::PrivateLink::VpcEndpointService",
"Properties": {
"User": List,
"ServiceDescription": String,
"Resource": List,
"ConnectBandwidth": Integer,
"AutoAcceptEnabled": Boolean,
"Payer": String,
"ZoneAffinityEnabled": Boolean,
"ServiceResourceType": String,
"Tags": List,
"ResourceGroupId": String,
"DeletionForce": Boolean
}
}
Properties
|
Property |
Type |
Required |
Editable |
Description |
Constraint |
|
User |
List |
No |
Yes |
Alibaba Cloud accounts in the endpoint service whitelist. |
Maximum: 20 accounts. |
|
ServiceDescription |
String |
No |
Yes |
Description of the endpoint service. |
2-256 characters. Supports letters, digits, underscores (_), and hyphens (-). Must start with a letter. |
|
Resource |
List |
No |
Yes |
Service resources to add to the endpoint service. |
Maximum: 20 service resources. For more information, see Resource properties. |
|
ConnectBandwidth |
Integer |
No |
Yes |
Default maximum bandwidth. |
Valid values: 100 to 1024. Unit: Mbit/s. |
|
AutoAcceptEnabled |
Boolean |
No |
Yes |
Whether to auto-accept endpoint connection requests. |
Valid values:
|
|
Payer |
String |
No |
No |
Payer of the endpoint service. |
Valid values:
|
|
ZoneAffinityEnabled |
Boolean |
No |
Yes |
Whether to enable zone affinity. |
Valid values:
|
|
ServiceResourceType |
String |
No |
No |
Service resource type. |
Set to slb (Classic Load Balancer). |
|
Tags |
List |
No |
Yes |
Tags. |
Maximum: 20 tags. |
|
ResourceGroupId |
String |
No |
Yes |
Resource group ID. |
None. |
|
DeletionForce |
Boolean |
No |
Yes |
Whether to force-delete the endpoint service. |
Valid values:
|
Resource syntax
"Resource": [
{
"ZoneId": String,
"ResourceId": String,
"ResourceType": String
}
]
Resource properties
|
Property |
Type |
Required |
Editable |
Description |
Constraint |
|
ZoneId |
String |
Yes |
No |
Zone ID of the service resource. |
None. |
|
ResourceId |
String |
Yes |
No |
ID of the service resource to add. |
None. |
|
ResourceType |
String |
Yes |
No |
Type of the service resource to add. |
Set to slb (SLB instances in a VPC that support PrivateLink). Note
Only PrivateLink-enabled SLB instances can serve as endpoint service resources. |
Tags syntax
"Tags": [
{
"Value": String,
"Key": String
}
]
Tags properties
|
Property |
Type |
Required |
Editable |
Description |
Constraint |
|
Key |
String |
Yes |
No |
Tag key. |
Maximum: 20 tag keys. Cannot be empty. Up to 64 characters. Cannot start with |
|
Value |
String |
No |
No |
Tag value. |
Maximum: 20 tag values. Can be empty. Up to 128 characters. Cannot start with |
Return values
Fn::GetAtt
-
ServiceName: endpoint service name.
-
ServiceDomain: endpoint service domain name.
-
ServiceId: endpoint service ID.
-
ServiceDescription: endpoint service description.
-
MinBandwidth: minimum endpoint connection bandwidth.
-
MaxBandwidth: maximum endpoint connection bandwidth.
-
Arn: Alibaba Cloud Resource Name (ARN).
Examples
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
MasterZoneId:
Type: String
Description: The master zone id to create load balancer instance.
AssociationProperty: ALIYUN::ECS::Instance::ZoneId
SlaveZoneId:
Type: String
Description: The slave zone id to create load balancer instance.
AssociationProperty: ALIYUN::ECS::Instance::ZoneId
VpcId:
Type: String
Description: The VPC id to create load balancer instance. For VPC network only.
AssociationProperty: ALIYUN::ECS::VPC::VPCId
VSwitchId:
Type: String
Description: The VSwitch id to create load balancer instance. For VPC network only.
AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
AssociationPropertyMetadata:
VpcId: VpcId
ZoneId: MasterZoneId
Resources:
LoadBalancer:
Type: ALIYUN::SLB::LoadBalancer
Properties:
SupportPrivateLink: true
PayType: PayOnDemand
VpcId:
Ref: VpcId
VSwitchId:
Ref: VSwitchId
LoadBalancerSpec: slb.s1.small
LoadBalancerName: mytest
AddressType: intranet
MasterZoneId:
Ref: MasterZoneId
SlaveZoneId:
Ref: SlaveZoneId
VpcEndpointService:
DependsOn: LoadBalancer
Type: ALIYUN::PrivateLink::VpcEndpointService
Properties:
User:
- Ref: ALIYUN::AccountId
ServiceDescription: test service endpoint
Resource:
- ZoneId:
Ref: MasterZoneId
ResourceId:
Ref: LoadBalancer
ResourceType: slb
ConnectBandwidth: 100
AutoAcceptEnabled: true
Outputs:
ServiceName:
Description: The name of the endpoint service.
Value:
Fn::GetAtt:
- VpcEndpointService
- ServiceName
ServiceDomain:
Description: The domain name of the endpoint service.
Value:
Fn::GetAtt:
- VpcEndpointService
- ServiceDomain
ServiceId:
Description: The ID of the endpoint service.
Value:
Fn::GetAtt:
- VpcEndpointService
- ServiceId {
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
"MasterZoneId": {
"Type": "String",
"Description": "The master zone id to create load balancer instance.",
"AssociationProperty": "ALIYUN::ECS::Instance::ZoneId"
},
"SlaveZoneId": {
"Type": "String",
"Description": "The slave zone id to create load balancer instance.",
"AssociationProperty": "ALIYUN::ECS::Instance::ZoneId"
},
"VpcId": {
"Type": "String",
"Description": "The VPC id to create load balancer instance. For VPC network only.",
"AssociationProperty": "ALIYUN::ECS::VPC::VPCId"
},
"VSwitchId": {
"Type": "String",
"Description": "The VSwitch id to create load balancer instance. For VPC network only.",
"AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
"AssociationPropertyMetadata": {
"VpcId": "VpcId",
"ZoneId": "MasterZoneId"
}
}
},
"Resources": {
"LoadBalancer": {
"Type": "ALIYUN::SLB::LoadBalancer",
"Properties": {
"SupportPrivateLink": true,
"PayType": "PayOnDemand",
"VpcId": {
"Ref": "VpcId"
},
"VSwitchId": {
"Ref": "VSwitchId"
},
"LoadBalancerSpec": "slb.s1.small",
"LoadBalancerName": "mytest",
"AddressType": "intranet",
"MasterZoneId": {
"Ref": "MasterZoneId"
},
"SlaveZoneId": {
"Ref": "SlaveZoneId"
}
}
},
"VpcEndpointService": {
"DependsOn": "LoadBalancer",
"Type": "ALIYUN::PrivateLink::VpcEndpointService",
"Properties": {
"User": [
{
"Ref": "ALIYUN::AccountId"
}
],
"ServiceDescription": "test service endpoint",
"Resource": [
{
"ZoneId": {
"Ref": "MasterZoneId"
},
"ResourceId": {
"Ref": "LoadBalancer"
},
"ResourceType": "slb"
}
],
"ConnectBandwidth": 100,
"AutoAcceptEnabled": true
}
}
},
"Outputs": {
"ServiceName": {
"Description": "The name of the endpoint service.",
"Value": {
"Fn::GetAtt": [
"VpcEndpointService",
"ServiceName"
]
}
},
"ServiceDomain": {
"Description": "The domain name of the endpoint service.",
"Value": {
"Fn::GetAtt": [
"VpcEndpointService",
"ServiceDomain"
]
}
},
"ServiceId": {
"Description": "The ID of the endpoint service.",
"Value": {
"Fn::GetAtt": [
"VpcEndpointService",
"ServiceId"
]
}
}
}
}