ALIYUN::APIG::Gateway は、クラウドネイティブ API Gateway インスタンスを作成するために使用されます。
構文
{
"Type": "ALIYUN::APIG::Gateway",
"Properties": {
"PaymentType": String,
"Spec": String,
"ZoneConfig": Map,
"GatewayName": String,
"LogConfig": Map,
"NetworkAccessConfig": Map,
"VSwitch": Map,
"Vpc": Map
}
}プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
PaymentType | String | はい | いいえ | 課金方法。 | 有効な値:
|
Spec | String | はい | いいえ | インスタンスタイプ。 | なし。 |
ZoneConfig | Map | はい | いいえ | ゾーン構成。 | 詳細については、「ZoneConfig プロパティ」をご参照ください。 |
GatewayName | String | いいえ | はい | インスタンスの名前。 | なし。 |
LogConfig | Map | いいえ | いいえ | ログ構成。 | 詳細については、「LogConfig プロパティ」をご参照ください。 |
NetworkAccessConfig | Map | いいえ | いいえ | ネットワーク構成。 | 詳細については、「NetworkAccessConfig プロパティ」をご参照ください。 |
VSwitch | Map | いいえ | いいえ | インスタンスの vSwitch 構成。 | 詳細については、「VSwitch プロパティ」をご参照ください。 |
Vpc | Map | いいえ | いいえ | インスタンスの仮想プライベートクラウド (VPC) 構成。 | 詳細については、「Vpc プロパティ」をご参照ください。 |
NetworkAccessConfig 構文
"NetworkAccessConfig": {
"Type": String
}NetworkAccessConfig プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
Type | String | はい | いいえ | ネットワークアクセスタイプ。 | 有効な値:
|
VSwitch 構文
"VSwitch": {
"VSwitchId": String,
"Name": String
}VSwitch プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
VSwitchId | String | はい | いいえ | vSwitch の ID。 | なし。 |
Name | String | いいえ | いいえ | vSwitch の名前。 | なし。 |
ZoneConfig 構文
"ZoneConfig": {
"SelectOption": String
}ZoneConfig プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
SelectOption | String | はい | いいえ | ゾーンを選択するためのオプション。 | 有効な値:
|
Vpc 構文
"Vpc": {
"VpcId": String,
"Name": String
}Vpc プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
VpcId | String | はい | いいえ | VPC の ID。 | なし。 |
Name | String | いいえ | いいえ | VPC の名前。 | なし。 |
LogConfig 構文
"LogConfig": {
"Sls": Map
}LogConfig プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
Sls | Map | いいえ | いいえ | Simple Log Service (SLS) 構成。 | なし。 |
Sls 構文
"Sls": {
"Enable": Boolean
}Sls プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
Enable | Boolean | いいえ | いいえ | SLS 構成を有効にするかどうかを指定します。 | なし。 |
戻り値
Fn::GetAtt
CreateTime: 作成タイムスタンプ。単位: ミリ秒。
Vpc: インスタンスの VPC。
LoadBalancers: インスタンスのイングレス IP アドレス。
SecurityGroup: インスタンスのセキュリティグループ。
GatewayId: インスタンスの ID。
Zones: インスタンスのゾーン構成。
VSwitch: インスタンスの vSwitch 構成。
Version: インスタンスのバージョン。
UpdateTime: 更新タイムスタンプ。単位: ミリ秒。
PaymentType: 課金方法。
GatewayName: インスタンスの名前。
ExpireTime: サブスクリプションの有効期限のタイムスタンプ。単位: ミリ秒。
Spec: インスタンスタイプ。
Environments: API が公開される環境。
例
ROSTemplateFormatVersion: '2015-09-01'
Metadata:
ALIYUN::ROS::Interface:
ParameterGroups:
- Parameters:
- Vpc
- ZoneConfig
- VSwitch
Label:
default:
ja: ネットワーク構成
- Parameters:
- PaymentType
- Spec
Label:
default:
ja: ゲートウェイ構成
Parameters:
VSwitch:
AssociationPropertyMetadata:
Parameters:
VSwitchId:
AssociationPropertyMetadata:
VpcId: ${Vpc.VpcId}
AssociationProperty: ALIYUN::VPC::VSwitch::VSwitchId
Type: String
Description:
ja: vSwitch の ID。
Required: true
Name:
Type: String
Description:
ja: vSwitch の名前。
Required: false
Type: Json
Description:
ja: ゲートウェイに関連付けられた仮想スイッチ。
Required: false
ZoneConfig:
AssociationPropertyMetadata:
Parameters:
SelectOption:
Type: String
Description:
ja: |-
アベイラビリティーゾーンのオプション。有効な値:
* Auto
* Manual
AllowedValues:
- Auto
- Manual
Required: true
Type: Json
Description:
ja: アベイラビリティーゾーンの構成。
Required: true
Vpc:
AssociationPropertyMetadata:
Parameters:
VpcId:
AssociationProperty: ALIYUN::ECS::VPC::VPCId
Type: String
Description:
ja: VPC ネットワーク ID。
Required: true
Name:
Type: String
Description:
ja: VPC ゲートウェイの名前。
Required: false
Type: Json
Description:
ja: ゲートウェイに関連付けられた VPC。
Required: false
PaymentType:
AssociationProperty: InstanceChargeType
Type: String
Description:
ja: |-
ゲートウェイの支払いタイプ。有効な値:
* PayAsYouGo
* Subscription
AllowedValues:
- PayAsYouGo
- Subscription
Required: true
Default: PayAsYouGo
Spec:
Type: String
Description:
ja: ゲートウェイインスタンスの仕様。
Required: true
Default: apigw.small.x1
Resources:
ExtensionResource:
Type: ALIYUN::APIG::Gateway
Properties:
VSwitch:
Ref: VSwitch
ZoneConfig:
Ref: ZoneConfig
Vpc:
Ref: Vpc
PaymentType:
Ref: PaymentType
Spec:
Ref: Spec
Outputs:
CreateTime:
Description: '作成タイムスタンプ。単位: ミリ秒。'
Value:
Fn::GetAtt:
- ExtensionResource
- CreateTime
Vpc:
Description: ゲートウェイに関連付けられた VPC。
Value:
Fn::GetAtt:
- ExtensionResource
- Vpc
LoadBalancers:
Description: ゲートウェイイングレスアドレスのリスト。
Value:
Fn::GetAtt:
- ExtensionResource
- LoadBalancers
SecurityGroup:
Description: ゲートウェイのセキュリティグループ。
Value:
Fn::GetAtt:
- ExtensionResource
- SecurityGroup
GatewayId:
Description: ゲートウェイの ID。
Value:
Fn::GetAtt:
- ExtensionResource
- GatewayId
Zones:
Description: ゲートウェイに関連付けられたゾーンのリスト。
Value:
Fn::GetAtt:
- ExtensionResource
- Zones
VSwitch:
Description: ゲートウェイに関連付けられた仮想スイッチ。
Value:
Fn::GetAtt:
- ExtensionResource
- VSwitch
Version:
Description: ゲートウェイのバージョン。
Value:
Fn::GetAtt:
- ExtensionResource
- Version
UpdateTime:
Description: '更新タイムスタンプ。単位: ミリ秒。'
Value:
Fn::GetAtt:
- ExtensionResource
- UpdateTime
PaymentType:
Description: ゲートウェイの支払いタイプ。
Value:
Fn::GetAtt:
- ExtensionResource
- PaymentType
GatewayName:
Description: リソースの名前。
Value:
Fn::GetAtt:
- ExtensionResource
- GatewayName
ExpireTime:
Description: 'パッケージの年とパッケージの月の有効期限のタイムスタンプ。単位: ミリ秒。'
Value:
Fn::GetAtt:
- ExtensionResource
- ExpireTime
Spec:
Description: ゲートウェイインスタンスの仕様。
Value:
Fn::GetAtt:
- ExtensionResource
- Spec
{
"ROSTemplateFormatVersion": "2015-09-01",
"Metadata": {
"ALIYUN::ROS::Interface": {
"ParameterGroups": [
{
"Parameters": [
"Vpc",
"ZoneConfig",
"VSwitch"
],
"Label": {
"default": {
"ja": "ネットワーク構成",
}
}
},
{
"Parameters": [
"PaymentType",
"Spec"
],
"Label": {
"default": {
"ja": "ゲートウェイ構成",
}
}
}
]
}
},
"Parameters": {
"VSwitch": {
"AssociationPropertyMetadata": {
"Parameters": {
"VSwitchId": {
"AssociationPropertyMetadata": {
"VpcId": "${Vpc.VpcId}"
},
"AssociationProperty": "ALIYUN::VPC::VSwitch::VSwitchId",
"Type": "String",
"Description": {
"ja": "vSwitch の ID。"
},
"Required": true
},
"Name": {
"Type": "String",
"Description": {
"ja": "vSwitch の名前。"
},
"Required": false
}
}
},
"Type": "Json",
"Description": {
"ja": "ゲートウェイに関連付けられた仮想スイッチ。"
},
"Required": false
},
"ZoneConfig": {
"AssociationPropertyMetadata": {
"Parameters": {
"SelectOption": {
"Type": "String",
"Description": {
"ja": "アベイラビリティーゾーンのオプション。有効な値:\n* Auto\n* Manual"
},
"AllowedValues": [
"Auto",
"Manual"
],
"Required": true
}
}
},
"Type": "Json",
"Description": {
"ja": "アベイラビリティーゾーンの構成。"
},
"Required": true
},
"Vpc": {
"AssociationPropertyMetadata": {
"Parameters": {
"VpcId": {
"AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
"Type": "String",
"Description": {
"ja": "VPC ネットワーク ID。"
},
"Required": true
},
"Name": {
"Type": "String",
"Description": {
"ja": "VPC ゲートウェイの名前。"
},
"Required": false
}
}
},
"Type": "Json",
"Description": {
"ja": "ゲートウェイに関連付けられた VPC。"
},
"Required": false
},
"PaymentType": {
"AssociationProperty": "InstanceChargeType",
"Type": "String",
"Description": {
"ja": "ゲートウェイの支払いタイプ。有効な値:\n* PayAsYouGo\n* Subscription"
},
"AllowedValues": [
"PayAsYouGo",
"Subscription"
],
"Required": true,
"Default": "PayAsYouGo"
},
"Spec": {
"Type": "String",
"Description": {
"ja": "ゲートウェイインスタンスの仕様。"
},
"Required": true,
"Default":"apigw.small.x1"
}
},
"Resources": {
"ExtensionResource": {
"Type": "ALIYUN::APIG::Gateway",
"Properties": {
"VSwitch": {
"Ref": "VSwitch"
},
"ZoneConfig": {
"Ref": "ZoneConfig"
},
"Vpc": {
"Ref": "Vpc"
},
"PaymentType": {
"Ref": "PaymentType"
},
"Spec": {
"Ref": "Spec"
}
}
}
},
"Outputs": {
"CreateTime": {
"Description": "作成タイムスタンプ。単位: ミリ秒。",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"CreateTime"
]
}
},
"Vpc": {
"Description": "ゲートウェイに関連付けられた VPC。",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"Vpc"
]
}
},
"LoadBalancers": {
"Description": "ゲートウェイイングレスアドレスのリスト。",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"LoadBalancers"
]
}
},
"SecurityGroup": {
"Description": "ゲートウェイのセキュリティグループ。",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"SecurityGroup"
]
}
},
"GatewayId": {
"Description": "ゲートウェイの ID。",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"GatewayId"
]
}
},
"Zones": {
"Description": "ゲートウェイに関連付けられたゾーンのリスト。",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"Zones"
]
}
},
"VSwitch": {
"Description": "ゲートウェイに関連付けられた仮想スイッチ。",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"VSwitch"
]
}
},
"Version": {
"Description": "ゲートウェイのバージョン。",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"Version"
]
}
},
"UpdateTime": {
"Description": "更新タイムスタンプ。単位: ミリ秒。",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"UpdateTime"
]
}
},
"PaymentType": {
"Description": "ゲートウェイの支払いタイプ。",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"PaymentType"
]
}
},
"GatewayName": {
"Description": "リソースの名前。",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"GatewayName"
]
}
},
"ExpireTime": {
"Description": "パッケージの年とパッケージの月の有効期限のタイムスタンプ。単位: ミリ秒。",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"ExpireTime"
]
}
},
"Spec": {
"Description": "ゲートウェイインスタンスの仕様。",
"Value": {
"Fn::GetAtt": [
"ExtensionResource",
"Spec"
]
}
}
}
}