ALIYUN::ECS::Instance リソースタイプは、Elastic Compute Service (ECS) インスタンスを作成します。
このリソースは今後更新されません。代わりに ALIYUN::ECS::InstanceGroup リソースをご利用ください。
構文
{
"Type": "ALIYUN::ECS::Instance",
"Properties": {
"DedicatedHostId": String,
"Period": Number,
"AutoRenew": String,
"RamRoleName": String,
"IoOptimized": String,
"InternetChargeType": String,
"PrivateIpAddress": String,
"KeyPairName": String,
"SystemDiskDiskName": String,
"PeriodUnit": String,
"Description": String,
"Tags": List,
"HostName": String,
"AutoRenewPeriod": Number,
"ImageId": String,
"ResourceGroupId": String,
"InstanceChargeType": String,
"VSwitchId": String,
"Password": String,
"PasswordInherit": Boolean,
"InstanceType": String,
"SystemDiskCategory": String,
"SubscriptionDeletionForce": Boolean,
"UserData": String,
"SystemDiskSize": Number,
"ZoneId": String,
"InternetMaxBandwidthOut": Integer,
"VpcId": String,
"SpotStrategy": String,
"InstanceName": String,
"DeletionProtection": Boolean,
"DeploymentSetId": String,
"SecurityGroupIds": List,
"SecurityGroupId": String,
"SecurityEnhancementStrategy": String,
"SpotPriceLimit": String,
"HpcClusterId": String,
"AllocatePublicIP": Boolean,
"SystemDiskDescription": String,
"SystemDiskPerformanceLevel": String,
"DiskMappings": List,
"SpotInterruptionBehavior": String,
"ZoneIds": List,
"SpotDuration": Integer,
"CreditSpecification": String,
"PrivatePoolOptions": Map,
"StorageSetId": String,
"HttpTokens": String,
"HttpEndpoint": String,
"Tenancy": String,
"StorageSetPartitionNumber": Integer,
"DeploymentSetGroupNo": Integer,
"Affinity": String,
"UseAdditionalService": Boolean,
"ImageFamily": String
}
}プロパティ
プロパティ名 | 型 | 必須 | 更新可能 | 説明 | 制約 |
ResourceGroupId | String | いいえ | はい | リソースグループの ID。 | なし |
SpotInterruptionBehavior | String | いいえ | いいえ | スポットインスタンスの中断モード。 | Terminate のみがサポートされています。この値を指定すると、インスタンスが即時に解放されます。デフォルト値は Terminate です。 |
ZoneIds | List | いいえ | いいえ | ゾーンの一覧。 | このプロパティは、コンソールでパラメーターを選択した場合にのみ有効になります。 |
SpotDuration | Integer | いいえ | いいえ | スポットインスタンスの保持期間。 | 有効な値:0~6。 単位:時間。
|
SecurityGroupIds | List | いいえ | いいえ | セキュリティグループ ID の一覧。 | SecurityGroupId または SecurityGroupIds のいずれか一方のみを指定できます。両方を同時に指定することはできません。 |
ImageId | String | いいえ | はい | イメージ ID。有効な値には、パブリックイメージ、カスタムイメージ、Alibaba Cloud Marketplace のイメージが含まれます。 | パブリックイメージを指定する場合は、完全なイメージ ID の代わりに部分的なイメージ ID を入力できます。パブリックイメージはあいまい検索をサポートしています。例:
|
InstanceType | String | はい | はい | ECS インスタンスタイプ。 | ECS インスタンスタイプの詳細については、「インスタンスファミリー」をご参照ください。 |
SecurityGroupId | String | いいえ | いいえ | セキュリティグループ ID。 | SecurityGroupId または SecurityGroupIds のいずれか一方のみを指定できます。両方を同時に指定することはできません。 |
SecurityEnhancementStrategy | String | いいえ | いいえ | セキュリティ強化を有効にするかどうかを指定します。 | 有効な値は以下のとおりです。
|
Description | String | いいえ | はい | 説明。 | 長さ:2~256 文字。 |
InstanceName | String | いいえ | はい | インスタンス名。 | 名前の長さは 2~128 文字である必要があります。先頭文字は英字または漢字でなければならず、 このプロパティを空欄のままにした場合、デフォルトでインスタンス ID が使用されます。 |
Password | String | いいえ | はい | ECS インスタンスのログインパスワード。 | 長さ:8~30 文字。パスワードには、大文字、小文字、数字、特殊文字のうち少なくとも 3 種類を含める必要があります。有効な特殊文字: |
PasswordInherit | Boolean | いいえ | いいえ | イメージに事前に設定されたパスワードを使用するかどうかを指定します。 | 有効な値は以下のとおりです。
説明 このプロパティを使用する場合は、Password を空欄にしてください。また、使用するランタイムイメージにパスワードが設定されていることを確認してください。 |
HostName | String | いいえ | はい | ECS インスタンスのホスト名。 | ホスト名の長さは最低でも 2 文字である必要があります。先頭および末尾にピリオド (.) やハイフン (-) を使用できず、連続したピリオド (.) やハイフン (-) を含めることもできません。
|
AllocatePublicIP | Boolean | いいえ | いいえ | パブリック IP アドレスを割り当てるかどうかを指定します。 | 値:
説明 InternetMaxBandwidthOut が 0 より大きい場合、パブリック IP アドレスが自動的に割り当てられます。 |
PrivateIpAddress | String | いいえ | いいえ | 仮想プライベートクラウド (VPC) 内のプライベート IP アドレス。 | この IP アドレスは、VPC 内の他のインスタンスの IP アドレスと重複してはいけません。 |
InternetChargeType | String | いいえ | はい | パブリックネットワークへのアクセスの課金方法。 | 有効な値:
|
InternetMaxBandwidthOut | Integer | いいえ | はい | 最大パブリックアウトバウンドトラフィック。 | 有効な値:0~100。 デフォルト値:0。 単位:Mbit/s。 |
IoOptimized | String | いいえ | いいえ | I/O 最適化インスタンスを作成するかどうかを指定します。 | 有効な値:
|
DiskMappings | List | いいえ | はい | アタッチするデータディスク。 | 最大 16 個のデータディスクを指定できます。 詳細については、「DiskMappings 構文」および「DiskMappings プロパティ」をご参照ください。 |
SystemDiskCategory | String | いいえ | はい | システムディスクのカテゴリ。 | 有効な値は以下のとおりです。
廃止されたインスタンスタイプの非 I/O 最適化インスタンスの場合、デフォルト値は cloud です。その他のタイプのインスタンスの場合、デフォルト値は cloud_efficiency です。 |
SystemDiskDescription | String | いいえ | いいえ | システムディスクの説明。 | なし |
SystemDiskDiskName | String | いいえ | いいえ | システムディスク名。 | 長さ:2~128 文字。先頭文字は英字または漢字でなければならず、 |
SystemDiskSize | Number | いいえ | はい | システムディスクのサイズ。 | 有効な値:20~500。 単位:GB。 カスタムイメージを使用してシステムディスクを作成する場合は、システムディスクのサイズがカスタムイメージのサイズより大きくなるようにしてください。 |
Tags | List | いいえ | はい | カスタムタグ。 | 最大 20 個のタグを指定できます。フォーマット: 詳細については、「Tags 構文」および「Tags プロパティ」をご参照ください。 |
UserData | String | いいえ | はい | ECS インスタンス作成時に渡すユーザー定義データ。 | コンテンツは 16 KiB 未満である必要があります。Base64 エンコーディングは行わないでください。特殊文字はバックスラッシュ (\) でエスケープしてください。 |
ZoneId | String | いいえ | いいえ | ゾーン ID。 | なし |
HpcClusterId | String | いいえ | いいえ | インスタンスが属する HPC クラスターの ID。 | なし |
VpcId | String | いいえ | いいえ | 仮想プライベートクラウド (VPC) の ID。 | なし |
VSwitchId | String | いいえ | いいえ | vSwitch の ID。 | なし |
InstanceChargeType | String | いいえ | いいえ | ECS インスタンスの課金方法。 | 有効な値は以下のとおりです。
|
Period | Number | いいえ | いいえ | 課金期間。 | InstanceChargeType が PrePaid の場合、Period は必須です。InstanceChargeType が PostPaid の場合、Period は任意です。 |
KeyPairName | String | いいえ | はい | ECS インスタンスにバインドされるキーペアの名前。 | インスタンスタイプが Windows の場合、このプロパティは無視されます。インスタンスタイプが Linux の場合、初期化時にパスワードによるログインは無効になります。セキュリティを向上させるため、キーペアによるログインをご利用ください。 |
RamRoleName | String | いいえ | いいえ | インスタンス RAM ロールの名前。 | 詳細については、「CreateRole」および「ListRoles」をご参照ください。 |
SpotPriceLimit | String | いいえ | いいえ | インスタンスの 1 時間あたりの最大価格。 | 小数点以下 3 桁までサポートされます。このプロパティは、SpotStrategy が SpotWithPriceLimit に設定されている場合にのみ有効です。 |
SpotStrategy | String | いいえ | いいえ | 従量課金インスタンスの入札戦略。 | InstanceChargeType を PostPaid に設定する場合は、このプロパティを指定する必要があります。 値:
|
DedicatedHostId | String | いいえ | いいえ | ECS インスタンスを作成する専用ホスト。 | 専用ホスト ID のリストは、DescribeDedicatedHosts API を呼び出すことでクエリできます。 専用ホスト上ではスポットインスタンスを作成できません。DedicatedHostId を指定した場合、システムはリクエスト内の SpotStrategy および SpotPriceLimit の設定を自動的に無視します。 |
PeriodUnit | String | いいえ | いいえ | 購入期間。 | 有効な値は以下のとおりです。
|
AutoRenewPeriod | Number | いいえ | いいえ | 各自動更新の期間。 | AutoRenew を True に設定した場合、AutoRenewPeriod は必須プロパティです。 値:
|
AutoRenew | String | いいえ | いいえ | 自動更新を有効にするかどうかを指定します。 | 有効な値:
このプロパティは、InstanceChargeType プロパティを PrePaid に設定する場合に必須です。 |
DeletionProtection | Boolean | いいえ | はい | インスタンスのリリース保護設定。コンソールまたは DeleteInstance 操作によるインスタンスのリリースを許可するかどうかを指定します。 | 値:
説明 このプロパティは、従量課金インスタンスにのみ適用されます。手動によるリリース操作のみを制限します。システムが開始したリリース操作には影響しません。 |
DeploymentSetId | String | いいえ | いいえ | デプロイメントセット ID。 | なし |
SystemDiskPerformanceLevel | String | いいえ | はい | ESSD をシステムディスクとして作成する際に、パフォーマンスレベルを設定できます。 | 有効な値:
ESSD パフォーマンスレベルの選択方法については、「エンタープライズ SSD」をご参照ください。 |
CreditSpecification
| String | いいえ | はい | バースト可能インスタンスの実行モード。 | 有効な値:
|
PrivatePoolOptions | Map | いいえ | いいえ | インスタンス起動時のプライベートプール容量オプション。 | 詳細については、「PrivatePoolOptions プロパティ」をご参照ください。 |
StorageSetId | String | いいえ | いいえ | ストレージセット ID。 | なし |
HttpTokens | String | いいえ | はい | インスタンスメタデータへのアクセス時に、強化モード(IMDSv2)を強制するかどうかを指定します。 | 有効な値は以下のとおりです。
説明 インスタンスメタデータへのアクセスパターンについては、「インスタンスメタデータ」をご参照ください。 |
SubscriptionDeletionForce | Boolean | いいえ | いいえ | このプロパティは、サブスクリプションインスタンスにのみ適用されます。このプロパティが true の場合、インスタンスは削除前に従量課金インスタンスに変換されます。このプロパティが false の場合、強制削除は行われません。この操作には追加料金が発生します。ご注意ください。 | なし |
HttpEndpoint | String | いいえ | はい | インスタンスメタデータエンドポイントを有効にするかどうかを指定します。 | 有効な値は以下のとおりです。
説明 インスタンスメタデータの詳細については、「インスタンスメタデータ」をご参照ください。 |
Tenancy | String | いいえ | いいえ | 専用ホスト上でインスタンスを作成するかどうかを指定します。 | 有効な値は以下のとおりです。
|
StorageSetPartitionNumber | Integer | いいえ | いいえ | ストレージセット内の最大パーティション数。 | 有効な値:2 以上の整数。 |
DeploymentSetGroupNo | Integer | いいえ | いいえ | デプロイメントセットが AvailabilityGroup ポリシーを使用する場合、このパラメーターを使用して、デプロイメントセット内のインスタンスのグループ番号を指定します。 | 有効な値:1~7。 |
Affinity | String | いいえ | いいえ | 専用ホストインスタンスが専用ホストに関連付けられているかどうかを指定します。 | 有効な値:
|
UseAdditionalService | Boolean | いいえ | いいえ | Alibaba Cloud が提供する VM システム構成(Windows:NTP および KMS;Linux:NTP および YUM)を使用するかどうかを指定します。 | 有効な値は以下のとおりです。
|
ImageFamily | String | いいえ | いいえ | イメージファミリー名。 | 現在のイメージファミリーに属する最新の利用可能なイメージを照会し、そのイメージを使用してインスタンスを作成するために、このパラメーターを指定できます。
説明 Alibaba Cloud イメージに関連付けられたイメージファミリーについては、「パブリックイメージ」をご参照ください。 |
DiskMappings 構文
"DiskMappings": [
{
"Category": String,
"DiskName": String,
"Description": String,
"Device": String,
"SnapshotId": String,
"PerformanceLevel": String,
"Size": String
}
]DiskMappings プロパティ
プロパティ名 | 型 | 必須 | 更新可能 | 説明 | 制約 |
Size | String | はい | いいえ | データディスクのサイズ。 | 有効範囲:20~500。 単位:GB。 |
Category | String | いいえ | いいえ | データディスクのカテゴリ。 | 有効な値は以下のとおりです。
I/O 最適化インスタンスの場合、デフォルト値は cloud_efficiency です。非 I/O 最適化インスタンスの場合、デフォルト値は cloud です。 カスタムイメージにデータディスクが含まれている場合、ROS テンプレートで ECS インスタンスを作成するときに、Category プロパティを希望するデータディスクのカテゴリに設定できます。例: |
DiskName | String | いいえ | いいえ | データディスク名。 | 長さ:2~128 文字。先頭文字は英字または漢字でなければならず、 |
Description | String | いいえ | いいえ | 説明。 | 長さ:2~256 文字。説明は |
Device | String | いいえ | いいえ | マウントポイント。 | なし |
PerformanceLevel | String | いいえ | いいえ | データディスクとして使用される ESSD のパフォーマンスレベル。 | 有効な値は以下のとおりです。
ESSD パフォーマンスレベルの選択方法については、「エンタープライズ SSD」をご参照ください。 |
SnapshotId | String | いいえ | いいえ | データディスクに使用するスナップショット ID。 | なし |
Tags 構文
"Tags": [
{
"Value": String,
"Key": String
}
]Tags プロパティ
プロパティ名 | 型 | 必須 | 更新可能 | 説明 | 制約 |
Key | String | はい | いいえ | タグキー。 | 長さ:1~128 文字。キーは |
Value | String | いいえ | いいえ | タグ値。 | 長さ:0~128 文字。値は |
PrivatePoolOptions 構文
"PrivatePoolOptions": [
{
"Id": String,
"MatchCriteria": String
}
]PrivatePoolOptions プロパティ
プロパティ名 | 型 | 必須 | 更新可能 | 説明 | 制約 |
Id | String | いいえ | いいえ | プライベートプール ID。これは、弾力的保証サービスまたはキャパシティ予約サービスの ID です。 | なし |
MatchCriteria | String | いいえ | いいえ | 弾力的保証サービスまたはキャパシティ予約サービスが有効になると、インスタンス起動用のプライベートプール容量が生成されます。 | 有効な値:
以下のいずれかのシナリオでは、インスタンス起動のプライベートプール容量オプションは
|
戻り値
Fn::GetAtt
InstanceId:インスタンス ID。これは、システムによって生成されるグローバルに一意な識別子です。
PrivateIp:VPC タイプのインスタンスのプライベート IP アドレス。
InnerIp:クラシックタイプのインスタンスの内部 IP アドレス。
PublicIp:クラシックタイプのインスタンスのパブリック IP アドレス。
ZoneId:ゾーン ID。
HostName:ECS インスタンスのホスト名。
PrimaryNetworkInterfaceId:プライマリ NIC ID。
SecurityGroupIds:作成されたインスタンスのセキュリティグループ ID の一覧。
例
シナリオ 1: 2 つの ECS インスタンスを作成し、パスワードレスログインを有効にする。
ROSTemplateFormatVersion: '2015-09-01'
Description: VPC ECS インスタンスを作成します
Metadata: {}
Parameters:
VpcId:
AssociationProperty: ALIYUN::ECS::VPC::VPCId
Type: String
Description:
en: コンソールの [仮想プライベートクラウド] から、(vpc-xxx) で始まる ID を検索してください
zh-cn: 既存の仮想プライベートクラウド (VPC) ID
Label:
en: VPC ID
zh-cn: 仮想プライベートクラウド (VPC) ID
VSwitchZoneId:
AssociationProperty: ALIYUN::ECS::Instance:ZoneId
Type: String
Description:
zh-cn: ゾーン ID。
<b>注: <font color='blue'>選択する前に、該当のゾーンが ECS インスタンスタイプをサポートしていることを確認してください。他の vSwitch とは異なるゾーンを選択することを推奨します。</font>
en: 可用性ゾーン ID。<br/><b>注: <font color='blue'>選択する前に、該当の可用性ゾーンが ECS インスタンスタイプをサポートしていることを確認してください。他の vSwitch とは異なるゾーンを選択することを推奨します。</font>
Label:
zh-cn: vSwitch ゾーン
en: vSwitch 可用性ゾーン
VSwitchId:
AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
AssociationPropertyMetadata:
VpcId: ${VpcId}
ZoneId: ${VSwitchZoneId}
Type: String
Description:
en: 既存の vSwitch ID。コンソールの [仮想プライベートクラウド] → [vSwitch] で確認できます
zh-cn: 既存の vSwitch ID
Label:
en: vSwitch ID
zh-cn: vSwitch ID
SecurityGroupId:
Type: String
AssociationProperty: ALIYUN::ECS::SecurityGroup::SecurityGroupId
AssociationPropertyMetadata:
VpcId: ${VpcId}
Description:
en: ビジネス用セキュリティグループ ID (sg-xxx で始まる)。コンソールの [ECS] → [ネットワークとセキュリティ] で確認できます
zh-cn: 既存のビジネス用セキュリティグループ ID
Label:
en: ビジネス用セキュリティグループ ID
zh-cn: ビジネス用セキュリティグループ ID
InstanceType:
Type: String
Description:
zh-cn: vSwitch ゾーンで利用可能なインスタンスタイプ。
en: vSwitch の可用性ゾーンで利用可能な ECS インスタンスタイプ。
Label:
zh-cn: インスタンスタイプ
en: ECS インスタンスタイプ
AssociationProperty: ALIYUN::ECS::Instance::InstanceType
AssociationPropertyMetadata:
ZoneId: ${VSwitchZoneId}
SystemDiskCategory:
Type: String
AssociationProperty: ALIYUN::ECS::Disk::SystemDiskCategory
AssociationPropertyMetadata:
ZoneId: ${VSwitchZoneId}
InstanceType: ${InstanceType}
Label:
en: システムディスクタイプ
zh-cn: システムディスクタイプ
Description:
en: '<font color=''blue''><b>選択可能な値:</font>
[cloud_efficiency: <font color=''green''>高性能クラウドディスク</font>]<br>[cloud_ssd: <font color=''green''>SSD クラウドディスク</font>]<br>[cloud_essd: <font color=''green''>ESSD クラウドディスク</font>]<br>[cloud: <font color=''green''>クラウドディスク</font>]<br>[ephemeral_ssd: <font color=''green''>ローカル SSD クラウドディスク</font>]'
zh-cn: '<font color=''blue''><b>選択可能な値:</font><br>[cloud_efficiency: <font color=''green''>高性能クラウドディスク</font>]<br>[cloud_ssd: <font color=''green''>SSD クラウドディスク</font>]<br>[cloud_essd: <font color=''green''>ESSD クラウドディスク</font>]<br>[cloud: <font color=''green''>クラウドディスク</font>]<br>[ephemeral_ssd: <font color=''green''>ローカル SSD クラウドディスク</font>]'
SystemDiskSize:
Default: 40
Type: Number
Description:
zh-cn: システムディスクサイズ。有効値: 40~500。単位: GiB。
en: 'システムディスクサイズ。有効値の範囲: 40~500。単位: GiB。'
Label:
zh-cn: システムディスク領域
en: システムディスク領域
Resources:
OpsEcsInstance:
Type: ALIYUN::ECS::Instance
Properties:
HostName: OpsEcsInstance
UserData:
Fn::Sub:
- |
#!/bin/bash
RootPassword=${RootPassword}
ProdIP=${ProdIP}
SSHConfig() {
echo '[ ! -f /root/.ssh/id_rsa.pub ] && ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa &>/dev/null' >> /tmp/auto_ssh.sh
echo 'while read line;do' >> /tmp/auto_ssh.sh
echo ' ip=`echo $line | cut -d " " -f1`' >> /tmp/auto_ssh.sh
echo ' user_name=`echo $line | cut -d " " -f2`' >> /tmp/auto_ssh.sh
echo ' pass_word=`echo $line | cut -d " " -f3`' >> /tmp/auto_ssh.sh
echo 'expect <<EOF' >> /tmp/auto_ssh.sh
echo ' spawn ssh-copy-id -i /root/.ssh/id_rsa.pub $user_name@$ip' >> /tmp/auto_ssh.sh
echo ' expect {' >> /tmp/auto_ssh.sh
echo ' "yes/no" { send "yes\n";exp_continue}' >> /tmp/auto_ssh.sh
echo ' "password" { send "$pass_word\n"}' >> /tmp/auto_ssh.sh
echo ' }' >> /tmp/auto_ssh.sh
echo ' expect eof' >> /tmp/auto_ssh.sh
echo 'EOF' >> /tmp/auto_ssh.sh
echo 'done < /tmp/host_ip.txt' >> /tmp/auto_ssh.sh
}
SetHostsConfig() {
echo "`ifconfig eth0 | awk '/inet /{print $2}'` root ${RootPassword}" >> /tmp/host_ip.txt
echo "${ProdIP} root ${RootPassword}" >> /tmp/host_ip.txt
sh /tmp/auto_ssh.sh
}
main() {
yum install -y expect
SSHConfig
SetHostsConfig
rm -rf /tmp/host_ip.txt
}
main
- ProdIP:
Fn::GetAtt:
- ProdEcsInstance
- PrivateIp
RootPassword: Admin@123!
VpcId:
Ref: VpcId
SecurityGroupId:
Ref: SecurityGroupId
VSwitchId:
Ref: VSwitchId
ImageId: centos_7
AllocatePublicIP: false
InstanceType:
Ref: InstanceType
SystemDiskSize: 40
SystemDiskCategory:
Ref: SystemDiskCategory
Password: Admin@123!
ProdEcsInstance:
Type: ALIYUN::ECS::Instance
Properties:
HostName: ProdEcsInstance
SystemDiskCategory:
Ref: SystemDiskCategory
VpcId:
Ref: VpcId
SecurityGroupId:
Ref: SecurityGroupId
SystemDiskSize: 40
ImageId: centos_7
VSwitchId:
Ref: VSwitchId
Password: Admin@123!
InstanceType:
Ref: InstanceType
AllocatePublicIP: false
Outputs: {} <br/><br/><br/>
{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": "VPC ECS インスタンスを作成します",
"Metadata": {},
"Parameters": {
"VpcId": {
"AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
"Type": "String",
"Description": {
"en": "コンソールの Virtual Private Cloud で、(vpc-xxx) で始まる ID を検索します。",
"zh-cn": "Existing virtual private cloud (VPC) ID"
},
"Label": {
"en": "VPC ID",
"zh-cn": "Virtual private cloud (VPC) ID"
}
},
"VSwitchZoneId": {
"AssociationProperty": "ALIYUN::ECS::Instance:ZoneId",
"Type": "String",
"Description": {
"zh-cn": "Zone ID.
<b>Note: <font color='blue'>Before selecting, confirm that the zone supports the ECS instance type. We recommend selecting a different zone than other vSwitches.</font>",
"en": "可用性ゾーン ID。<br/><b>注: <font color='blue'>選択する前に、可用性ゾーンが ECS インスタンスタイプをサポートしていることを確認してください。他の vSwitch とは異なるゾーンを選択することをお勧めします。</font>"
},
"Label": {
"zh-cn": "vSwitch zone",
"en": "vSwitch 可用性ゾーン"
}
},
"VSwitchId": {
"AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
"AssociationPropertyMetadata": {
"VpcId": "${VpcId}",
"ZoneId": "${VSwitchZoneId}"
},
"Type": "String",
"Description": {
"en": "既存の vSwitch ID。コンソールの Virtual Private Cloud - vSwitches で確認できます。",
"zh-cn": "Existing vSwitch ID"
},
"Label": {
"en": "vSwitch ID",
"zh-cn": "vSwitch ID"
}
},
"SecurityGroupId": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::SecurityGroup::SecurityGroupId",
"AssociationPropertyMetadata": {
"VpcId": "${VpcId}"
},
"Description": {
"en": "(sg-xxx) で始まるビジネスセキュリティグループ ID。コンソールの ECS - ネットワーク & セキュリティで確認できます。",
"zh-cn": "Existing business security group ID"
},
"Label": {
"en": "ビジネスセキュリティグループ ID",
"zh-cn": "Business Security Group ID"
}
},
"InstanceType": {
"Type": "String",
"Description": {
"zh-cn": "Instance type available in the vSwitch zone.",
"en": "vSwitch の可用性ゾーンで使用可能なインスタンスタイプ。"
},
"Label": {
"zh-cn": "Instance type",
"en": "インスタンスタイプ"
},
"AssociationProperty": "ALIYUN::ECS::Instance::InstanceType",
"AssociationPropertyMetadata": {
"ZoneId": "${VSwitchZoneId}"
}
},
"SystemDiskCategory": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::Disk::SystemDiskCategory",
"AssociationPropertyMetadata": {
"ZoneId": "${VSwitchZoneId}",
"InstanceType": "${InstanceType}"
},
"Label": {
"en": "システムディスクタイプ",
"zh-cn": "System disk type"
},
"Description": {
"en": "<font color='blue'><b>選択可能な値:</font><br/>[cloud_efficiency: <font color='green'>高効率クラウドディスク</font>]<br>[cloud_ssd: <font color='green'>SSD クラウドディスク</font>]<br>[cloud_essd: <font color='green'>ESSD クラウドディスク</font>]<br>[cloud: <font color='green'>クラウドディスク</font>]<br>[ephemeral_ssd: <font color='green'>ローカル SSD クラウドディスク</font>]",
"zh-cn": "<font color='blue'><b>Optional values:</font><br>[cloud_efficiency: <font color='green'>Efficient Cloud Disk</font>]<br>[cloud_ssd: <font color='green'>SSD Cloud Disk</font>]<br>[cloud_essd: <font color='green'>ESSD Cloud Disk</font>]<br>[cloud: <font color='green'>Cloud Disk</font>]<br>[ephemeral_ssd: <font color='green'>Local SSD Cloud Disk</font>]"
}
},
"SystemDiskSize": {
"Default": 40,
"Type": "Number",
"Description": {
"zh-cn": "System disk size. Valid values: 40 to 500. Unit: GiB.",
"en": "システムディスクサイズ。有効値: 40~500、単位: GiB。"
},
"Label": {
"zh-cn": "System disk space",
"en": "システムディスク領域"
}
}
},
"Resources": {
"OpsEcsInstance": {
"Type": "ALIYUN::ECS::Instance",
"Properties": {
"HostName": "OpsEcsInstance",
"UserData": {
"Fn::Sub": [
"#!/bin/bash\nRootPassword=${RootPassword}\nProdIP=${ProdIP}\nSSHConfig() {\necho '[ ! -f /root/.ssh/id_rsa.pub ] && ssh-keygen -t rsa -P \"\" -f ~/.ssh/id_rsa &>/dev/null' >> /tmp/auto_ssh.sh\necho 'while read line;do' >> /tmp/auto_ssh.sh\necho ' ip=`echo $line | cut -d \" \" -f1`' >> /tmp/auto_ssh.sh\necho ' user_name=`echo $line | cut -d \" \" -f2`' >> /tmp/auto_ssh.sh\necho ' pass_word=`echo $line | cut -d \" \" -f3`' >> /tmp/auto_ssh.sh\necho 'expect <<EOF' >> /tmp/auto_ssh.sh\necho ' spawn ssh-copy-id -i /root/.ssh/id_rsa.pub $user_name@$ip' >> /tmp/auto_ssh.sh\necho ' expect {' >> /tmp/auto_ssh.sh\necho ' \"yes/no\" { send \"yes\\n\";exp_continue}' >> /tmp/auto_ssh.sh\necho ' \"password\" { send \"$pass_word\\n\"}' >> /tmp/auto_ssh.sh\necho ' }' >> /tmp/auto_ssh.sh\necho ' expect eof' >> /tmp/auto_ssh.sh\necho 'EOF' >> /tmp/auto_ssh.sh\necho 'done < /tmp/host_ip.txt' >> /tmp/auto_ssh.sh\n}\nSetHostsConfig() {\necho \"`ifconfig eth0 | awk '/inet /{print $2}'` root ${RootPassword}\" >> /tmp/host_ip.txt\necho \"${ProdIP} root ${RootPassword}\" >> /tmp/host_ip.txt\nsh /tmp/auto_ssh.sh\n}\nmain() {\nyum install -y expect\nSSHConfig\nSetHostsConfig\nrm -rf /tmp/host_ip.txt\n}\nmain\n",
{
"ProdIP": {
"Fn::GetAtt": [
"ProdEcsInstance",
"PrivateIp"
]
},
"RootPassword": "Admin@123!"
}
]
},
"VpcId": {
"Ref": "VpcId"
},
"SecurityGroupId": {
"Ref": "SecurityGroupId"
},
"VSwitchId": {
"Ref": "VSwitchId"
},
"ImageId": "centos_7",
"AllocatePublicIP": false,
"InstanceType": {
"Ref": "InstanceType"
},
"SystemDiskSize": 40,
"SystemDiskCategory": {
"Ref": "SystemDiskCategory"
},
"Password": "Admin@123!"
}
},
"ProdEcsInstance": {
"Type": "ALIYUN::ECS::Instance",
"Properties": {
"HostName": "ProdEcsInstance",
"SystemDiskCategory": {
"Ref": "SystemDiskCategory"
},
"VpcId": {
"Ref": "VpcId"
},
"SecurityGroupId": {
"Ref": "SecurityGroupId"
},
"SystemDiskSize": 40,
"ImageId": "centos_7",
"VSwitchId": {
"Ref": "VSwitchId"
},
"Password": "Admin@123!",
"InstanceType": {
"Ref": "InstanceType"
},
"AllocatePublicIP": false
}
}
},
"Outputs": {}
} <br/><br/><br/>
シナリオ 2: 複数のプライベート IP アドレスを持つ ECS インスタンスを作成する。
ROSTemplateFormatVersion: '2015-09-01'
Description:
zh-cn: Create an ECS instance, configure VPC, security group, multiple IP addresses, system disk and network interface, and support customizing instance specifications, mirroring and network settings.
en: ECS インスタンスを作成し、VPC、セキュリティグループ、複数の IP アドレス、システムディスク、ネットワークインターフェースを構成し、インスタンスの仕様、イメージ、ネットワーク設定のカスタマイズをサポートします。
Parameters:
EcsInstanceType:
AssociationProperty: ALIYUN::ECS::Instance::InstanceType
AssociationPropertyMetadata:
ZoneId: VSwitchZoneId
Type: String
Description:
zh-cn: <font color='blue'>1. Before selecting the instance type, confirm that it is available in the current zone. Some instance types require advance registration.</font>
<font color='blue'><b>2. Available instance types</font><br></font>[ecs.c5.large <font color='green'>2 vCPUs, 4 GiB memory, 1 Gbit/s intranet bandwidth, 300,000 PPS</font>]<br/>[ecs.c5.xlarge <font color='green'>4 vCPUs, 8 GiB memory, 1.5 Gbit/s intranet bandwidth, 500,000 PPS</font>]<br/>[ecs.c5.2xlarge <font color='green'>8 vCPUs, 16 GiB memory, 2.5 Gbit/s intranet bandwidth, 800,000 PPS</font>]
en: <font color='blue'><b>1. インスタンスタイプを選択する前に、現在のゾーンで利用可能であることを確認してください。一部のインスタンスタイプは事前の登録が必要です。</font>
<font color='blue'><b>2. 利用可能なインスタンスタイプ</font><br></font>[ecs.c5.large <font color='green'>2 vCPU、4 GiB メモリ、1 Gbit/s イントラネット帯域幅、300,000 PPS</font>]<br/>[ecs.c5.xlarge <font color='green'>4 vCPU、8 GiB メモリ、1.5 Gbit/s イントラネット帯域幅、500,000 PPS</font>]<br/>[ecs.c5.2xlarge <font color='green'>8 vCPU、16 GiB メモリ、2.5 Gbit/s イントラネット帯域幅、800,000 PPS</font>]
Label:
zh-cn: Instance type
en: インスタンスタイプ
VSwitchZoneId:
AssociationProperty: ALIYUN::ECS::Instance:ZoneId
Type: String
Description:
zh-cn: Zone ID.<br/><b>Note: <font color='blue'>Before selecting, confirm that the zone supports the ECS instance type.</font>
en: アベイラビリティゾーン ID。<br/><b>注意: <font color='blue'>選択する前に、アベイラビリティゾーンが ECS インスタンスタイプをサポートしていることを確認してください。</font>
Label:
zh-cn: vSwitch zone
en: vSwitch アベイラビリティゾーン
EcsSystemDiskSize:
Default: 40
Type: Number
Description:
zh-cn: System disk size. Valid values: 40 to 500. Unit: GiB.
en: 'システムディスクのサイズ、値の範囲: 40~500、単位: GiB。'
Label:
zh-cn: System disk space
en: システムディスク領域
EcsPassword:
Description:
zh-cn: Server logon password. Length: 8 to 30 characters. Must contain three of the following: uppercase letters, lowercase letters, digits, and special characters ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/.
en: サーバーのログインパスワード。長さ: 8~30 文字。大文字、小文字、数字、特殊文字 ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/. のうち、3 種類を含める必要があります。
Type: String
Label:
zh-cn: Instance password
en: インスタンスのパスワード
NoEcho: true
AssociationProperty: ALIYUN::ECS::Instance::Password
ConstraintDescription:
zh-cn: Length: 8 to 30 characters. Must contain three of the following: uppercase letters, lowercase letters, digits, and special characters ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/.
en: 長さ: 8~30 文字。大文字、小文字、数字、特殊文字 ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/. のうち、3 種類を含める必要があります。
EcsImageId:
AssociationPropertyMetadata:
InstanceType: ${EcsInstanceType}
SupportedImageOwnerAlias:
- system
- self
- others
Description:
zh-cn: Image ID. See: <b><a href='https://www.alibabacloud.com/help/document_detail/112977.html' target='_blank'><font color='blue'>Find the image</font></a>
en: 'イメージ ID。詳細: <a href=''https://www.alibabacloud.com/help/doc-detail/112977.html'' target=''_blank''><font color=''blue''>イメージの検索</font></a>'
Default: centos_7_04_64_20G_alibase_201701015.vhd
Label:
zh-cn: Image ID
en: イメージ ID
AssociationProperty: ALIYUN::ECS::Image::ImageId
Type: String
EcsSystemDiskCategory:
AssociationProperty: ALIYUN::ECS::Disk::SystemDiskCategory
AssociationPropertyMetadata:
LocaleKey: DiskCategory
InstanceType: ${EcsInstanceType}
Type: String
Description:
zh-cn: '<font color=''blue''>Optional values:</font><br/>[cloud_efficiency: <font color=''green''>Efficient Cloud Disk</font>]<br>[cloud_ssd: <font color=''green''>SSD Cloud Disk</font>]<br>[cloud_essd: <font color=''green''>ESSD Cloud Disk</font>]<br>[cloud: <font color=''green''>Cloud Disk</font>]<br>[ephemeral_ssd: <font color=''green''>Local SSD Cloud Disk</font>]'
en: '<font color=''blue''><b>選択可能な値:</font><br>[cloud_efficiency: <font color=''green''>高効率クラウドディスク</font>]<br>[cloud_ssd: <font color=''green''>SSD クラウドディスク</font>]<br>[cloud_essd: <font color=''green''>ESSD クラウドディスク</font>]<br>[cloud: <font color=''green''>クラウドディスク</font>]<br>[ephemeral_ssd: <font color=''green''>ローカル SSD ディスク</font>]'
Label:
zh-cn: System disk type
en: システムディスクタイプ
IpAddressCount:
Description:
zh-cn: Valid values: 1 to 9.
en: '有効値: 1~9。'
Default: 1
MaxValue: 9
MinValue: 1
Label:
zh-cn: Number of IPv4 addresses for the network interface
en: ネットワークインターフェースの IPv4 アドレス数
Type: Number
Outputs:
InstanceId:
Value:
Ref: EcsInstance
EIP:
Value:
Fn::GetAtt:
- Eip
- EipAddress
PrimaryPrivateIPAddress:
Value:
Fn::GetAtt:
- EcsInstance
- PrivateIp
AddPrivateIPAddressList:
Value:
Fn::GetAtt:
- EcsAssignPrivateIpAddresses
- PrivateIpAddresses
Resources:
EcsAssignPrivateIpAddresses:
Type: ALIYUN::ECS::AssignPrivateIpAddresses
Properties:
NetworkInterfaceId:
Ref: EcsENI
SecondaryPrivateIpAddressCount:
Ref: IpAddressCount
DependsOn:
- EcsENI
EcsENI:
Type: ALIYUN::ECS::NetworkInterface
Properties:
SecurityGroupId:
Ref: EcsSecurityGroup
VSwitchId:
Ref: EcsVSwitch
EcsSecurityGroup:
Type: ALIYUN::ECS::SecurityGroup
Properties:
VpcId:
Ref: EcsVpc
SecurityGroupName:
Fn::Join:
- _
- - StackId
- Ref: ALIYUN::StackId
Eip:
Type: ALIYUN::VPC::EIP
Properties:
InternetChargeType: PayByTraffic
InstanceChargeType: Postpaid
EcsVSwitch:
Type: ALIYUN::ECS::VSwitch
Properties:
VSwitchName:
Fn::Join:
- _
- - StackId
- Ref: ALIYUN::StackId
VpcId:
Ref: EcsVpc
CidrBlock: 192.168.0.0/24
ZoneId:
Ref: VSwitchZoneId
EcsEniAttachment:
Type: ALIYUN::ECS::NetworkInterfaceAttachment
Properties:
InstanceId:
Ref: EcsInstance
NetworkInterfaceId:
Ref: EcsENI
DependsOn:
- EcsInstance
- EipAssociation
EcsInstance:
Type: ALIYUN::ECS::Instance
Properties:
SystemDiskCategory:
Ref: EcsSystemDiskCategory
VpcId:
Ref: EcsVpc
SecurityGroupId:
Ref: EcsSecurityGroup
SystemDiskSize:
Ref: EcsSystemDiskSize
ImageId:
Ref: EcsImageId
AllocatePublicIP: false
InstanceChargeType: Postpaid
VSwitchId:
Ref: EcsVSwitch
IoOptimized: optimized
Password:
Ref: EcsPassword
InstanceType:
Ref: EcsInstanceType
EcsVpc:
Type: ALIYUN::ECS::VPC
Properties:
VpcName:
Fn::Join:
- '-'
- - StackId
- Ref: ALIYUN::StackId
CidrBlock: 192.168.0.0/16
EipAssociation:
Type: ALIYUN::VPC::EIPAssociation
Properties:
InstanceId:
Ref: EcsENI
AllocationId:
Ref: Eip
Mode: NAT
DependsOn:
- EcsAssignPrivateIpAddresses
- Eip
Metadata:
ALIYUN::ROS::Interface:
ParameterGroups:
- Parameters:
- VSwitchZoneId
- IpAddressCount
Label:
default:
zh-cn: Virtual private cloud (VPC)
en: VPC
- Parameters:
- EcsInstanceType
- EcsImageId
- EcsSystemDiskCategory
- EcsSystemDiskSize
- EcsPassword
Label:
default:
zh-cn: ECS configuration
en: ECS
<br/><br/><br/><br/><br/><br/><br/><br/><br/>
{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": {
"zh-cn": "ECS インスタンスを作成し、VPC、セキュリティグループ、複数の IP アドレス、システムディスク、およびネットワークインターフェースを設定します。また、インスタンスの仕様、イメージ、およびネットワーク設定のカスタマイズをサポートします。",
"en": "Create an ECS instance, configure VPC, security group, multiple IP addresses, system disk and network interface, and support customizing instance specifications, mirroring and network settings."
},
"Parameters": {
"EcsInstanceType": {
"AssociationProperty": "ALIYUN::ECS::Instance::InstanceType",
"AssociationPropertyMetadata": {
"ZoneId": "VSwitchZoneId"
},
"Type": "String",
"Description": {
"zh-cn": "<font color='blue'>1. インスタンスタイプを選択する前に、現在のゾーンで利用可能であることを確認してください。一部のインスタンスタイプは事前登録が必要です。</font>
<font color='blue'><b>2. 利用可能なインスタンスタイプ</font><br></font>[ecs.c5.large <font color='green'>2 vCPU、4 GiB メモリ、1 Gbit/s イントラネット帯域幅、300,000 PPS</font>]<br/>[ecs.c5.xlarge <font color='green'>4 vCPU、8 GiB メモリ、1.5 Gbit/s イントラネット帯域幅、500,000 PPS</font>]<br/>[ecs.c5.2xlarge <font color='green'>8 vCPU、16 GiB メモリ、2.5 Gbit/s イントラネット帯域幅、800,000 PPS</font>]",
"en": "<font color='blue'><b>1. Before selecting the instance type, confirm that it is available in the current zone. Some instance types require advance registration.</font>
<font color='blue'><b>2. Available instance types</font><br></font>[ecs.c5.large <font color='green'>2 vCPUs, 4 GiB memory, 1 Gbit/s intranet bandwidth, 300,000 PPS</font>]<br/>[ecs.c5.xlarge <font color='green'>4 vCPUs, 8 GiB memory, 1.5 Gbit/s intranet bandwidth, 500,000 PPS</font>]<br/>[ecs.c5.2xlarge <font color='green'>8 vCPUs, 16 GiB memory, 2.5 Gbit/s intranet bandwidth, 800,000 PPS</font>]"
},
"Label": {
"zh-cn": "インスタンスタイプ",
"en": "Instance Type"
}
},
"VSwitchZoneId": {
"AssociationProperty": "ALIYUN::ECS::Instance:ZoneId",
"Type": "String",
"Description": {
"zh-cn": "ゾーン ID。<br/><b>注: <font color='blue'>選択する前に、そのゾーンが ECS インスタンスタイプをサポートしていることを確認してください。</font>",
"en": "Availability Zone ID.<br/><b>Note: <font color='blue'>Before selecting, confirm that the Availability Zone supports the ECS instance type.</font>"
},
"Label": {
"zh-cn": "vSwitch ゾーン",
"en": "vSwitch Availability Zone"
}
},
"EcsSystemDiskSize": {
"Default": 40,
"Type": "Number",
"Description": {
"zh-cn": "システムディスク容量。有効値: 40 ~ 500。単位: GiB。",
"en": "System disk size, range of values: 40-500, units: GiB."
},
"Label": {
"zh-cn": "システムディスク容量",
"en": "System Disk Space"
}
},
"EcsPassword": {
"Description": {
"zh-cn": "サーバーのログインパスワード。長さ: 8 ~ 30 文字。大文字、小文字、数字、特殊文字 ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/ のうち 3 種類以上を含める必要があります。",
"en": "Server logon password. Length: 8 to 30 characters. Must contain three of the following: uppercase letters, lowercase letters, digits, and special characters ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/."
},
"Type": "String",
"Label": {
"zh-cn": "インスタンスパスワード",
"en": "Instance Password"
},
"NoEcho": true,
"AssociationProperty": "ALIYUN::ECS::Instance::Password",
"ConstraintDescription": {
"zh-cn": "長さ: 8 ~ 30 文字。大文字、小文字、数字、特殊文字 ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/ のうち 3 種類以上を含める必要があります。",
"en": "Length: 8 to 30 characters. Must contain three of the following: uppercase letters, lowercase letters, digits, and special characters ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/."
}
},
"EcsImageId": {
"AssociationPropertyMetadata": {
"InstanceType": "${EcsInstanceType}",
"SupportedImageOwnerAlias": [
"system",
"self",
"others"
]
},
"Description": {
"zh-cn": "イメージ ID。詳細については、<b><a href='https://www.alibabacloud.com/help/document_detail/112977.html' target='_blank'><font color='blue'>イメージの検索方法</font></a>をご参照ください。",
"en": "Image ID. See detail: <a href='https://www.alibabacloud.com/help/doc-detail/112977.html' target='_blank'><font color='blue'>Find the mirror</font></a>"
},
"Default": "centos_7_04_64_20G_alibase_201701015.vhd",
"Label": {
"zh-cn": "イメージ ID",
"en": "Image ID"
},
"AssociationProperty": "ALIYUN::ECS::Image::ImageId",
"Type": "String"
},
"EcsSystemDiskCategory": {
"AssociationProperty": "ALIYUN::ECS::Disk::SystemDiskCategory",
"AssociationPropertyMetadata": {
"LocaleKey": "DiskCategory",
"InstanceType": "${EcsInstanceType}"
},
"Type": "String",
"Description": {
"zh-cn": "<font color='blue'>選択可能な値:</font><br/>[cloud_efficiency: <font color='green'>高速クラウドディスク</font>]<br>[cloud_ssd: <font color='green'>SSD クラウドディスク</font>]<br>[cloud_essd: <font color='green'>ESSD クラウドディスク</font>]<br>[cloud: <font color='green'>クラウドディスク</font>]<br>[ephemeral_ssd: <font color='green'>ローカル SSD クラウドディスク</font>]",
"en": "<font color='blue'><b>Optional values:</font><br>[cloud_efficiency: <font color='green'>Efficient Cloud Disk</font>]<br>[cloud_ssd: <font color='green'>SSD Cloud Disk</font>]<br>[cloud_essd: <font color='green'>ESSD Cloud Disk</font>]<br>[cloud: <font color='green'>Cloud Disk</font>]<br>[ephemeral_ssd: <font color='green'>Local SSD Cloud Disk</font>]"
},
"Label": {
"zh-cn": "システムディスクタイプ",
"en": "System Disk Type"
}
},
"IpAddressCount": {
"Description": {
"zh-cn": "有効値: 1 ~ 9。",
"en": "Allowed values: 1~9."
},
"Default": 1,
"MaxValue": 9,
"MinValue": 1,
"Label": {
"zh-cn": "ネットワークインターフェースの IPv4 アドレス数",
"en": "Number of IPv4 Network Card"
},
"Type": "Number"
}
},
"Outputs": {
"InstanceId": {
"Value": {
"Ref": "EcsInstance"
}
},
"EIP": {
"Value": {
"Fn::GetAtt": [
"Eip",
"EipAddress"
]
}
},
"PrimaryPrivateIPAddress": {
"Value": {
"Fn::GetAtt": [
"EcsInstance",
"PrivateIp"
]
}
},
"AddPrivateIPAddressList": {
"Value": {
"Fn::GetAtt": [
"EcsAssignPrivateIpAddresses",
"PrivateIpAddresses"
]
}
}
},
"Resources": {
"EcsAssignPrivateIpAddresses": {
"Type": "ALIYUN::ECS::AssignPrivateIpAddresses",
"Properties": {
"NetworkInterfaceId": {
"Ref": "EcsENI"
},
"SecondaryPrivateIpAddressCount": {
"Ref": "IpAddressCount"
}
},
"DependsOn": [
"EcsENI"
]
},
"EcsENI": {
"Type": "ALIYUN::ECS::NetworkInterface",
"Properties": {
"SecurityGroupId": {
"Ref": "EcsSecurityGroup"
},
"VSwitchId": {
"Ref": "EcsVSwitch"
}
}
},
"EcsSecurityGroup": {
"Type": "ALIYUN::ECS::SecurityGroup",
"Properties": {
"VpcId": {
"Ref": "EcsVpc"
},
"SecurityGroupName": {
"Fn::Join": [
"_",
[
"StackId",
{
"Ref": "ALIYUN::StackId"
}
]
]
}
}
},
"Eip": {
"Type": "ALIYUN::VPC::EIP",
"Properties": {
"InternetChargeType": "PayByTraffic",
"InstanceChargeType": "Postpaid"
}
},
"EcsVSwitch": {
"Type": "ALIYUN::ECS::VSwitch",
"Properties": {
"VSwitchName": {
"Fn::Join": [
"_",
[
"StackId",
{
"Ref": "ALIYUN::StackId"
}
]
]
},
"VpcId": {
"Ref": "EcsVpc"
},
"CidrBlock": "192.168.0.0/24",
"ZoneId": {
"Ref": "VSwitchZoneId"
}
}
},
"EcsEniAttachment": {
"Type": "ALIYUN::ECS::NetworkInterfaceAttachment",
"Properties": {
"InstanceId": {
"Ref": "EcsInstance"
},
"NetworkInterfaceId": {
"Ref": "EcsENI"
}
},
"DependsOn": [
"EcsInstance",
"EipAssociation"
]
},
"EcsInstance": {
"Type": "ALIYUN::ECS::Instance",
"Properties": {
"SystemDiskCategory": {
"Ref": "EcsSystemDiskCategory"
},
"VpcId": {
"Ref": "EcsVpc"
},
"SecurityGroupId": {
"Ref": "EcsSecurityGroup"
},
"SystemDiskSize": {
"Ref": "EcsSystemDiskSize"
},
"ImageId": {
"Ref": "EcsImageId"
},
"AllocatePublicIP": false,
"InstanceChargeType": "Postpaid",
"VSwitchId": {
"Ref": "EcsVSwitch"
},
"IoOptimized": "optimized",
"Password": {
"Ref": "EcsPassword"
},
"InstanceType": {
"Ref": "EcsInstanceType"
}
}
},
"EcsVpc": {
"Type": "ALIYUN::ECS::VPC",
"Properties": {
"VpcName": {
"Fn::Join": [
"-",
[
"StackId",
{
"Ref": "ALIYUN::StackId"
}
]
]
},
"CidrBlock": "192.168.0.0/16"
}
},
"EipAssociation": {
"Type": "ALIYUN::VPC::EIPAssociation",
"Properties": {
"InstanceId": {
"Ref": "EcsENI"
},
"AllocationId": {
"Ref": "Eip"
},
"Mode": "NAT"
},
"DependsOn": [
"EcsAssignPrivateIpAddresses",
"Eip"
]
}
},
"Metadata": {
"ALIYUN::ROS::Interface": {
"ParameterGroups": [
{
"Parameters": [
"VSwitchZoneId",
"IpAddressCount"
],
"Label": {
"default": {
"zh-cn": "仮想プライベートクラウド (VPC)",
"en": "VPC"
}
}
},
{
"Parameters": [
"EcsInstanceType",
"EcsImageId",
"EcsSystemDiskCategory",
"EcsSystemDiskSize",
"EcsPassword"
],
"Label": {
"default": {
"zh-cn": "ECS 設定",
"en": "ECS"
}
}
}
]
}
}
}<br/><br/><br/><br/><br/><br/><br/><br/><br/>
シナリオ 3: ECS インスタンスおよび Elastic IP Address(EIP)を作成し、複数のデータディスクをアタッチする。
ROSTemplateFormatVersion: '2015-09-01'
Description:
zh-cn: Create an ECS instance, configure Elastic IP Address (EIP), attach 2 data disks, and set network environment and security group rules.
en: ECS インスタンスを作成し、EIP を設定し、2 つのデータ ディスクをマウントし、ネットワーク環境とセキュリティグループルールを設定します。
Parameters:
FirstDataDiskCategory:
AssociationProperty: ALIYUN::ECS::Disk::DataDiskCategory
AssociationPropertyMetadata:
InstanceType: ${InstanceType}
ZoneId: ${ZoneId}
Type: String
Label:
zh-cn: Category of data disk 1
en: 1 番目のデータ ディスク カテゴリ
SystemDiskCategory:
AssociationProperty: ALIYUN::ECS::Disk::SystemDiskCategory
AssociationPropertyMetadata:
InstanceType: InstanceType
ZoneId: ZoneId
Type: String
Label:
zh-cn: System disk type
en: システム ディスクタイプ
SecondDataDiskSize:
Default: 40
Type: Number
Description:
zh-cn: The size of the second data disk, in GiB. Value range: cloud:[5, 2000], cloud_efficiency:[20, 32768], cloud_ssd:[20, 32768], ephemeral_ssd:[5, 800]. The value must be equal to or greater than the specific snapshot size.
en: 2 番目のデータ ディスクのサイズ (GiB)。有効値: cloud:[5, 2000]、cloud_efficiency:[20, 32768]、cloud_ssd:[20, 32768]、ephemeral_ssd:[5, 800]。値は特定のスナップショットのサイズ以上である必要があります。
Label:
zh-cn: Size of data disk 2
en: 2 番目のデータ ディスクのサイズ
SystemDiskSize:
Default: 40
Type: Number
Description:
zh-cn: The size of the system disk, in GiB. Value range: cloud:[5, 2000], cloud_efficiency:[20, 32768], cloud_ssd:[20, 32768], ephemeral_ssd:[5, 800]. The value must be equal to or greater than the specific snapshot size.
en: システムディスクのサイズ (GiB)。有効値: cloud:[5, 2000]、cloud_efficiency:[20, 32768]、cloud_ssd:[20, 32768]、ephemeral_ssd:[5, 800]。値は特定のスナップショットのサイズ以上である必要があります。
Label:
zh-cn: System disk size
en: システム ディスク スペース
VpcCidrBlock:
Default: 192.168.0.0/16
Label:
zh-cn: VPC CIDR block
en: VPC CIDR ブロック
Type: String
Description:
zh-cn: The CIDR block for the new VPC. We recommend using one of the following CIDR blocks:
<font color='green'>[10.0.0.0/8]</font><br><font color='green'>[172.16.0.0/12]</font><br><font color='green'>[192.168.0.0/16]</font>
en: 新しい VPC の CIDR ブロック。次のいずれかの CIDR ブロックを使用することをお勧めします:<br><font color='green'>[10.0.0.0/8]</font><br><font color='green'>[172.16.0.0/12]</font><br><font color='green'>[192.168.0.0/16]</font>
AllowedValues:
- 192.168.0.0/16
- 172.16.0.0/12
- 10.0.0.0/8
FirstDataDiskSize:
Default: 40
Type: Number
Description:
zh-cn: The size of the first data disk, in GiB. Value range: cloud:[5, 2000], cloud_efficiency:[20, 32768], cloud_ssd:[20, 32768], ephemeral_ssd:[5, 800]. The value must be equal to or greater than the specific snapshot size.
en: 1 番目のデータ ディスクのサイズ (GiB)。有効値: cloud:[5, 2000]、cloud_efficiency:[20, 32768]、cloud_ssd:[20, 32768]、ephemeral_ssd:[5, 800]。値は特定のスナップショットのサイズ以上である必要があります。
Label:
zh-cn: Capacity of data disk 1
en: 1 番目のデータ ディスクのサイズ
SecondDataDiskCategory:
AssociationProperty: ALIYUN::ECS::Disk::DataDiskCategory
AssociationPropertyMetadata:
InstanceType: ${InstanceType}
ZoneId: ${ZoneId}
Type: String
Label:
zh-cn: Category of data disk 2
en: 2 番目のデータ ディスク カテゴリ
VSwitchCidrBlock:
Default: 192.168.0.0/24
Type: String
Description:
zh-cn: The CIDR block for the new vSwitch. This is a subnet of the VPC.
en: 新しい vSwitch の CIDR ブロック。これは VPC のサブネットです。
Label:
zh-cn: vSwitch CIDR ブロック
en: vSwitch CIDR ブロック
Password:
ConstraintDescription:
zh-cn: Length: 8 to 30 characters. Must contain at least three of the following: uppercase letters, lowercase letters, digits, and special characters. Special characters include the following: ()`~!@#$%^&*_-+=|{}[]:;' <>,.?/
en: 長さ: 8 ~ 30 文字。次のいずれか 3 つ以上を含める必要があります: 大文字、小文字、数字、特殊文字。特殊文字には以下が含まれます: ()`~!@#$%^&*_-+=|{}[]:;''<>,.?/
Description:
zh-cn: The server logon password. Length: 8 to 30 characters. Must contain at least three of the following: uppercase letters, lowercase letters, digits, and special characters from ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/.
en: サーバー ログイン パスワード。長さ: 8 ~ 30 文字。次のいずれか 3 つ以上を含める必要があります: 大文字、小文字、数字、および ()`~!@#$%^&*_-+=|{}[]:;''<>,.?/ からの特殊文字。
MinLength: 8
Label:
zh-cn: Instance password
en: インスタンス パスワード
AllowedPattern: '[a-zA-Z0-9-\(\)\`\~\!@\#\$%\^&\*-+=\|\{\}\[\]\:\;\‘\,\.\?\/]*'
NoEcho: true
MaxLength: 30
Type: String
InstanceType:
AssociationProperty: ALIYUN::ECS::Instance::InstanceType
AssociationPropertyMetadata:
ZoneId: ZoneId
Type: String
Description:
zh-cn: <font color='blue'><b>1. Before selecting the instance type, confirm that it is available in the current zone. Some instance types require advance registration.</font><br/><font color='blue'><b>2. Available instance types</font><br></font>[ecs.c5.large <font color='green'>2 vCPUs, 4 GiB memory, 1 Gbit/s internal bandwidth, 300,000 PPS</font>]<br/>[ecs.c5.xlarge <font color='green'>4 vCPUs, 8 GiB memory, 1.5 Gbit/s internal bandwidth, 500,000 PPS</font>]<br/>[ecs.c5.2xlarge <font color='green'>8 vCPUs, 16 GiB memory, 2.5 Gbit/s internal bandwidth, 800,000 PPS</font>]
en: <font color='blue'><b>1. インスタンスタイプを選択する前に、現在のゾーンで利用可能であることを確認してください。一部のインスタンスタイプには事前登録が必要です。</font><br/><font color='blue'><b>2. 利用可能なインスタンスタイプ</font><br></font>[ecs.c5.large <font color='green'>2 vCPU、4 GiB メモリ、1 Gbit/秒 内部帯域幅、300,000 PPS</font>]<br/>[ecs.c5.xlarge <font color='green'>4 vCPU、8 GiB メモリ、1.5 Gbit/秒 内部帯域幅、500,000 PPS</font>]<br/>[ecs.c5.2xlarge <font color='green'>8 vCPU、16 GiB メモリ、2.5 Gbit/秒 内部帯域幅、800,000 PPS</font>]
Label:
zh-cn: Instance type
en: インスタンスタイプ
ZoneId:
AssociationProperty: ALIYUN::ECS::Instance:ZoneId
Type: String
Description:
zh-cn: Availability Zone ID.<br/><b>Note: <font color='blue'>Before selecting, confirm that the Availability Zone supports the ECS instance type. We recommend selecting a different zone than other vSwitches.</font>
en: アベイラビリティーゾーン ID。<br/><b>注: <font color='blue'>選択する前に、アベイラビリティーゾーンが ECS インスタンスタイプをサポートしていることを確認してください。他の vSwitch とは異なるゾーンを選択することをお勧めします。</font>
Label:
zh-cn: vSwitch zone
en: vSwitch アベイラビリティーゾーン
ImageId:
AssociationPropertyMetadata:
InstanceType: ${InstanceType}
SupportedImageOwnerAlias:
- system
- self
- others
Description:
zh-cn: Image ID. For more information, see <b><a href='https://www.alibabacloud.com/help/document_detail/112977.html' target='_blank'><font color='blue'>Find an image</font></a>
en: イメージ ID。詳細については、「<a href='https://www.alibabacloud.com/help/doc-detail/112977.html' target='_blank'><font color='blue'>イメージを見つける</font></a>」をご参照ください。
Default: centos_7_04_64_20G_alibase_201701015.vhd
Label:
zh-cn: Image ID
en: イメージ ID
AssociationProperty: ALIYUN::ECS::Image::ImageId
Type: String
Outputs:
VpcId:
Description: Id of created VPC.
Value:
Fn::GetAtt:
- Vpc
- VpcId
InstanceId:
Description: The instance id of created ecs instance.
Value:
Fn::GetAtt:
- WebServer
- InstanceId
SecurityGroupId:
Description: generated security group id for security group.
Value:
Fn::GetAtt:
- SecurityGroup
- SecurityGroupId
EipId:
Description: ID that Aliyun assigns to represent the allocation of the address for use with VPC. Returned only for VPC elastic IP addresses.
Value:
Fn::GetAtt:
- Eip
- AllocationId
ZoneId:
Description: Zone ID of created instance.
Value:
Fn::GetAtt:
- WebServer
- ZoneId
VSwitchId:
Description: Id of created VSwitch.
Value:
Fn::GetAtt:
- VSwitch
- VSwitchId
Resources:
EIPBind:
Type: ALIYUN::VPC::EIPAssociation
Properties:
InstanceId:
Ref: WebServer
AllocationId:
Ref: Eip
Metadata:
ALIYUN::ROS::Designer:
id: ece3b051-66c9-46d6-9961-f184d342b21f
Eip:
Type: ALIYUN::VPC::EIP
Properties:
InternetChargeType: PayByTraffic
Bandwidth: 1
Metadata:
ALIYUN::ROS::Designer:
id: a914d36e-d429-46d6-bbd0-a22acd07b096
SecurityGroupEgress:
Type: ALIYUN::ECS::SecurityGroupEgress
Properties:
DestCidrIp: 0.0.0.0/0
IpProtocol: all
SecurityGroupId:
Ref: SecurityGroup
NicType: intranet
PortRange: '-1/-1'
Metadata:
ALIYUN::ROS::Designer:
id: faa26b3c-3507-41e9-9959-5db9a9e67446
SecurityGroup:
Type: ALIYUN::ECS::SecurityGroup
Properties:
VpcId:
Ref: Vpc
Metadata:
ALIYUN::ROS::Designer:
id: fde92bb4-877d-4e7b-b9dd-be6f5e552544
SecurityGroupIngress:
Type: ALIYUN::ECS::SecurityGroupIngress
Properties:
IpProtocol: all
SecurityGroupId:
Ref: SecurityGroup
NicType: intranet
SourceCidrIp: 0.0.0.0/0
PortRange: '-1/-1'
Metadata:
ALIYUN::ROS::Designer:
id: 2a6cfdef-e236-4966-a976-dd7e7bbc37a5
WebServer:
Type: ALIYUN::ECS::Instance
Properties:
UserData:
Fn::Join:
- ''
- - |
#!/bin/sh
- |
logs=~/mount_logs
- |
i=1
- |
total=2
- |
while [ $i -le $total ]
- |
do
- |2
disk_suffix=`echo $i|awk '{printf "%c", 97+$i}'`
- |
fdisk -S 56 /dev/vd$disk_suffix <<ESXU
- |
n
- |
p
- |
1
- |+
- |+
- |
w
- |
ESXU
- |2
echo "/dev/vd$disk_suffix is fdisked!" >> $logs
- |2
mkfs.ext4 /dev/vd${disk_suffix}1
- |2
if [ $? -eq 0 ];then
- |2
echo "/dev/vd${disk_suffix}1 is formated!" >> $logs
- |2
fi
- |2
touch ~/test_ftab
- |2
mkdir $disk_suffix$i
- |2
disk_uuid=`blkid | grep /dev/vd${disk_suffix}1 |awk '{printf $2}'|sed 's/\"//g'`
- |
cat << ESXU > ~/test_ftab
- |
$disk_uuid $disk_suffix$i ext4 defaults 0 0
- |
ESXU
- |2
cat ~/test_ftab >> /etc/fstab
- |2
mount -a
- |2
chmod -R 777 $disk_suffix$i
- |2
rm -rf ~/test_ftab
- |2
echo "/dev/vd${disk_suffix}1 is mounted!" >> $logs
- |2
let i+=1
- |
done
SystemDiskCategory:
Ref: SystemDiskCategory
VpcId:
Ref: Vpc
SecurityGroupId:
Ref: SecurityGroup
SystemDiskSize:
Ref: SystemDiskSize
ImageId:
Ref: ImageId
AllocatePublicIP: 'false'
VSwitchId:
Ref: VSwitch
IoOptimized: optimized
Password:
Ref: Password
DiskMappings:
- Category:
Ref: FirstDataDiskCategory
Size:
Ref: FirstDataDiskSize
- Category:
Ref: SecondDataDiskCategory
Size:
Ref: SecondDataDiskSize
InstanceType:
Ref: InstanceType
Metadata:
ALIYUN::ROS::Designer:
id: 4f476130-0cde-4cff-a973-2cb026e18f13
Vpc:
Type: ALIYUN::ECS::VPC
Properties:
CidrBlock:
Ref: VpcCidrBlock
Metadata:
ALIYUN::ROS::Designer:
id: adfdd097-9c30-49ff-8738-ae3b59eada43
VSwitch:
Type: ALIYUN::ECS::VSwitch
Properties:
VpcId:
Fn::GetAtt:
- Vpc
- VpcId
CidrBlock:
Ref: VSwitchCidrBlock
ZoneId:
Ref: ZoneId
Metadata:
ALIYUN::ROS::Designer:
id: bd814869-3bd7-4551-a5db-0ec7ad3d3246
Metadata:
ALIYUN::ROS::Interface:
ParameterGroups:
- Parameters:
- ZoneId
- VpcCidrBlock
- VSwitchCidrBlock
Label:
default:
zh-cn: Infrastructure Configuration (Required)
en: インフラストラクチャ構成
- Parameters:
- InstanceType
- ImageId
- Password
Label:
default:
zh-cn: ECS Configuration (Required)
en: ECS 構成
- Parameters:
- SystemDiskSize
- SystemDiskCategory
- FirstDataDiskSize
- FirstDataDiskCategory
- SecondDataDiskSize
- SecondDataDiskCategory
Label:
default:
zh-cn: ECS Disk Configuration (Required)
en: ECS ディスク構成
<br/><br/><br/><br/><br/><br/><br/><br/><br/>
{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": {
"zh-cn": "Create an ECS instance, configure an Elastic IP Address (EIP), attach two data disks, and set up the network environment and security group rules.",
"en": "ECS インスタンスを作成し、Elastic IP アドレス (EIP) を設定し、2 つのデータディスクをアタッチし、ネットワーク環境とセキュリティグループルールをセットアップします。"
},
"Parameters": {
"FirstDataDiskCategory": {
"AssociationProperty": "ALIYUN::ECS::Disk::DataDiskCategory",
"AssociationPropertyMetadata": {
"InstanceType": "${InstanceType}",
"ZoneId": "${ZoneId}"
},
"Type": "String",
"Label": {
"zh-cn": "Category of data disk 1",
"en": "データディスク 1 のカテゴリ"
}
},
"SystemDiskCategory": {
"AssociationProperty": "ALIYUN::ECS::Disk::SystemDiskCategory",
"AssociationPropertyMetadata": {
"InstanceType": "InstanceType",
"ZoneId": "ZoneId"
},
"Type": "String",
"Label": {
"zh-cn": "System disk type",
"en": "システムディスクタイプ"
}
},
"SecondDataDiskSize": {
"Default": 40,
"Type": "Number",
"Description": {
"zh-cn": "The size of the second data disk, in GiB. Value range: cloud:[5, 2000], cloud_efficiency:[20, 32768], cloud_ssd:[20, 32768], ephemeral_ssd:[5, 800]. The value must be equal to or greater than the specific snapshot size.",
"en": "2 番目のデータディスクのサイズ (GiB 単位)。有効値: cloud: [5, 2000]、cloud_efficiency: [20, 32768]、cloud_ssd: [20, 32768]、ephemeral_ssd: [5, 800]。値は特定のスナップショットのサイズ以上である必要があります。"
},
"Label": {
"zh-cn": "Size of data disk 2",
"en": "データディスク 2 のサイズ"
}
},
"SystemDiskSize": {
"Default": 40,
"Type": "Number",
"Description": {
"zh-cn": "The size of the system disk, in GiB. Value range: cloud:[5, 2000], cloud_efficiency:[20, 32768], cloud_ssd:[20, 32768], ephemeral_ssd:[5, 800]. The value must be equal to or greater than the specific snapshot size.",
"en": "システムディスクのサイズ (GiB 単位)。有効値: cloud: [5, 2000]、cloud_efficiency: [20, 32768]、cloud_ssd: [20, 32768]、ephemeral_ssd: [5, 800]。値は特定のスナップショットのサイズ以上である必要があります。"
},
"Label": {
"zh-cn": "System disk size",
"en": "システムディスク容量"
}
},
"VpcCidrBlock": {
"Default": "192.168.0.0/16",
"Label": {
"zh-cn": "VPC CIDR block",
"en": "VPC CIDR ブロック"
},
"Type": "String",
"Description": {
"zh-cn": "The CIDR block for the new VPC. We recommend using one of the following CIDR blocks:
<font color='green'>[10.0.0.0/8]</font><br><font color='green'>[172.16.0.0/12]</font><br><font color='green'>[192.168.0.0/16]</font>",
"en": "新しい VPC の CIDR ブロック。次の CIDR ブロックのいずれかを使用することを推奨します:<br><font color='green'>[10.0.0.0/8]</font><br><font color='green'>[172.16.0.0/12]</font><br><font color='green'>[192.168.0.0/16]</font>"
},
"AllowedValues": [
"192.168.0.0/16",
"172.16.0.0/12",
"10.0.0.0/8"
]
},
"FirstDataDiskSize": {
"Default": 40,
"Type": "Number",
"Description": {
"zh-cn": "The size of the first data disk, in GiB. Value range: cloud:[5, 2000], cloud_efficiency:[20, 32768], cloud_ssd:[20, 32768], ephemeral_ssd:[5, 800]. The value must be equal to or greater than the specific snapshot size.",
"en": "1 番目のデータディスクのサイズ (GiB 単位)。有効値: cloud: [5, 2000]、cloud_efficiency: [20, 32768]、cloud_ssd: [20, 32768]、ephemeral_ssd: [5, 800]。値は特定のスナップショットのサイズ以上である必要があります。"
},
"Label": {
"zh-cn": "Capacity of data disk 1",
"en": "データディスク 1 の容量"
}
},
"SecondDataDiskCategory": {
"AssociationProperty": "ALIYUN::ECS::Disk::DataDiskCategory",
"AssociationPropertyMetadata": {
"InstanceType": "${InstanceType}",
"ZoneId": "${ZoneId}"
},
"Type": "String",
"Label": {
"zh-cn": "Category of data disk 2",
"en": "データディスク 2 のカテゴリ"
}
},
"VSwitchCidrBlock": {
"Default": "192.168.0.0/24",
"Type": "String",
"Description": {
"zh-cn": "The CIDR block for the new vSwitch. This is a subnet of the VPC.",
"en": "新しい vSwitch の CIDR ブロック。これは VPC のサブネットです。"
},
"Label": {
"zh-cn": "vSwitch CIDR block",
"en": "vSwitch CIDR ブロック"
}
},
"Password": {
"ConstraintDescription": {
"zh-cn": "Length: 8 to 30 characters. Must contain at least three of the following: uppercase letters, lowercase letters, digits, and special characters. Special characters include the following: ()`~!@#$%^&*_-+=|{}[]:;' <>,.?/",
"en": "長さ: 8~30 文字。大文字、小文字、数字、特殊文字のうち少なくとも 3 種類を含む必要があります。特殊文字には次が含まれます: ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/"
},
"Description": {
"zh-cn": "The server logon password. Length: 8 to 30 characters. Must contain at least three of the following: uppercase letters, lowercase letters, digits, and special characters from ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/.",
"en": "サーバーログインパスワード。長さ: 8~30 文字。大文字、小文字、数字、および ()`~!@#$%^&*_-+=|{}[]:;'<>,.?/ の特殊文字のうち少なくとも 3 種類を含む必要があります。"
},
"MinLength": 8,
"Label": {
"zh-cn": "Instance password",
"en": "インスタンスパスワード"
},
"AllowedPattern": "[a-zA-Z0-9-\\(\\)\\`\\~\\!@\\#\\$%\\^&\\*-+=\\|\\{\\}\\[\\]\\:\\;\\‘\\,\\.\\?\\/]*",
"NoEcho": true,
"MaxLength": 30,
"Type": "String"
},
"InstanceType": {
"AssociationProperty": "ALIYUN::ECS::Instance::InstanceType",
"AssociationPropertyMetadata": {
"ZoneId": "ZoneId"
},
"Type": "String",
"Description": {
"zh-cn": "<font color='blue'><b>1. Before selecting the instance type, confirm that it is available in the current zone. Some instance types require advance registration.</font><br/><font color='blue'><b>2. Available instance types</font><br></font>[ecs.c5.large <font color='green'>2 vCPUs, 4 GiB memory, 1 Gbit/s internal bandwidth, 300,000 PPS</font>]<br/>[ecs.c5.xlarge <font color='green'>4 vCPUs, 8 GiB memory, 1.5 Gbit/s internal bandwidth, 500,000 PPS</font>]<br/>[ecs.c5.2xlarge <font color='green'>8 vCPUs, 16 GiB memory, 2.5 Gbit/s internal bandwidth, 800,000 PPS</font>]",
"en": "<font color='blue'><b>1. インスタンスタイプを選択する前に、現在のゾーンで利用可能であることを確認してください。一部のインスタンスタイプには事前登録が必要です。</font>
<font color='blue'><b>2. 利用可能なインスタンスタイプ</font><br></font>[ecs.c5.large <font color='green'>2 vCPU、4 GiB メモリ、1 Gbit/s 内部帯域幅、300,000 PPS</font>]<br/>[ecs.c5.xlarge <font color='green'>4 vCPU、8 GiB メモリ、1.5 Gbit/s 内部帯域幅、500,000 PPS</font>]<br/>[ecs.c5.2xlarge <font color='green'>8 vCPU、16 GiB メモリ、2.5 Gbit/s 内部帯域幅、800,000 PPS</font>]"
},
"Label": {
"zh-cn": "Instance type",
"en": "インスタンスタイプ"
}
},
"ZoneId": {
"AssociationProperty": "ALIYUN::ECS::Instance:ZoneId",
"Type": "String",
"Description": {
"zh-cn": "Availability Zone ID.<br/><b>Note: <font color='blue'>Before selecting, confirm that the Availability Zone supports the ECS instance type. We recommend selecting a different zone than other vSwitches.</font>",
"en": "アベイラビリティゾーン ID。<br/><b>注: <font color='blue'>選択する前に、アベイラビリティゾーンが ECS インスタンスタイプをサポートしていることを確認してください。他の vSwitch とは異なるゾーンを選択することを推奨します。</font>"
},
"Label": {
"zh-cn": "vSwitch zone",
"en": "vSwitch アベイラビリティゾーン"
}
},
"ImageId": {
"AssociationPropertyMetadata": {
"InstanceType": "${InstanceType}",
"SupportedImageOwnerAlias": [
"system",
"self",
"others"
]
},
"Description": {
"zh-cn": "Image ID. For more information, see <b><a href='https://www.alibabacloud.com/help/document_detail/112977.html' target='_blank'><font color='blue'>Find an image</font></a>",
"en": "イメージ ID。詳細については、<a href='https://www.alibabacloud.com/help/doc-detail/112977.html' target='_blank'><font color='blue'>イメージの検索</font></a>をご参照ください。"
},
"Default": "centos_7_04_64_20G_alibase_201701015.vhd",
"Label": {
"zh-cn": "Image ID",
"en": "イメージ ID"
},
"AssociationProperty": "ALIYUN::ECS::Image::ImageId",
"Type": "String"
}
},
"Outputs": {
"VpcId": {
"Description": "作成された VPC の ID。",
"Value": {
"Fn::GetAtt": [
"Vpc",
"VpcId"
]
}
},
"InstanceId": {
"Description": "作成された ecs インスタンスのインスタンス ID。",
"Value": {
"Fn::GetAtt": [
"WebServer",
"InstanceId"
]
}
},
"SecurityGroupId": {
"Description": "セキュリティグループ用に生成されたセキュリティグループ ID。",
"Value": {
"Fn::GetAtt": [
"SecurityGroup",
"SecurityGroupId"
]
}
},
"EipId": {
"Description": "VPC での使用のためにアドレスの割り当てを表すために Aliyun が割り当てる ID。VPC Elastic IP アドレスの場合のみ返されます。",
"Value": {
"Fn::GetAtt": [
"Eip",
"AllocationId"
]
}
},
"ZoneId": {
"Description": "作成されたインスタンスのゾーン ID。",
"Value": {
"Fn::GetAtt": [
"WebServer",
"ZoneId"
]
}
},
"VSwitchId": {
"Description": "作成された VSwitch の ID。",
"Value": {
"Fn::GetAtt": [
"VSwitch",
"VSwitchId"
]
}
}
},
"Resources": {
"EIPBind": {
"Type": "ALIYUN::VPC::EIPAssociation",
"Properties": {
"InstanceId": {
"Ref": "WebServer"
},
"AllocationId": {
"Ref": "Eip"
}
},
"Metadata": {
"ALIYUN::ROS::Designer": {
"id": "ece3b051-66c9-46d6-9961-f184d342b21f"
}
}
},
"Eip": {
"Type": "ALIYUN::VPC::EIP",
"Properties": {
"InternetChargeType": "PayByTraffic",
"Bandwidth": 1
},
"Metadata": {
"ALIYUN::ROS::Designer": {
"id": "a914d36e-d429-46d6-bbd0-a22acd07b096"
}
}
},
"SecurityGroupEgress": {
"Type": "ALIYUN::ECS::SecurityGroupEgress",
"Properties": {
"DestCidrIp": "0.0.0.0/0",
"IpProtocol": "all",
"SecurityGroupId": {
"Ref": "SecurityGroup"
},
"NicType": "intranet",
"PortRange": "-1/-1"
},
"Metadata": {
"ALIYUN::ROS::Designer": {
"id": "faa26b3c-3507-41e9-9959-5db9a9e67446"
}
}
},
"SecurityGroup": {
"Type": "ALIYUN::ECS::SecurityGroup",
"Properties": {
"VpcId": {
"Ref": "Vpc"
}
},
"Metadata": {
"ALIYUN::ROS::Designer": {
"id": "fde92bb4-877d-4e7b-b9dd-be6f5e552544"
}
}
},
"SecurityGroupIngress": {
"Type": "ALIYUN::ECS::SecurityGroupIngress",
"Properties": {
"IpProtocol": "all",
"SecurityGroupId": {
"Ref": "SecurityGroup"
},
"NicType": "intranet",
"SourceCidrIp": "0.0.0.0/0",
"PortRange": "-1/-1"
},
"Metadata": {
"ALIYUN::ROS::Designer": {
"id": "2a6cfdef-e236-4966-a976-dd7e7bbc37a5"
}
}
},
"WebServer": {
"Type": "ALIYUN::ECS::Instance",
"Properties": {
"UserData": {
"Fn::Join": [
"",
[
"#!/bin/sh\n",
"logs=~/mount_logs\n",
"i=1\n",
"total=2\n",
"while [ $i -le $total ]\n",
"do\n",
" disk_suffix=`echo $i|awk '{printf \"%c\", 97+$i}'`\n",
"fdisk -S 56 /dev/vd$disk_suffix <<ESXU\n",
"n\n",
"p\n",
"1\n",
"\n",
"\n",
"w\n",
"ESXU\n",
" echo \"/dev/vd$disk_suffix is fdisked!\" >> $logs\n",
" mkfs.ext4 /dev/vd${disk_suffix}1\n",
" if [ $? -eq 0 ];then\n",
" echo \"/dev/vd${disk_suffix}1 is formated!\" >> $logs\n",
" fi\n",
" touch ~/test_ftab\n",
" mkdir $disk_suffix$i\n",
" disk_uuid=`blkid | grep /dev/vd${disk_suffix}1 |awk '{printf $2}'|sed 's/\\\"//g'`\n",
"cat << ESXU > ~/test_ftab\n",
"$disk_uuid $disk_suffix$i ext4 defaults 0 0\n",
"ESXU\n",
" cat ~/test_ftab >> /etc/fstab\n",
" mount -a\n",
" chmod -R 777 $disk_suffix$i\n",
" rm -rf ~/test_ftab\n",
" echo \"/dev/vd${disk_suffix}1 is mounted!\" >> $logs\n",
" let i+=1\n",
"done\n"
]
]
},
"SystemDiskCategory": {
"Ref": "SystemDiskCategory"
},
"VpcId": {
"Ref": "Vpc"
},
"SecurityGroupId": {
"Ref": "SecurityGroup"
},
"SystemDiskSize": {
"Ref": "SystemDiskSize"
},
"ImageId": {
"Ref": "ImageId"
},
"AllocatePublicIP": "false",
"VSwitchId": {
"Ref": "VSwitch"
},
"IoOptimized": "optimized",
"Password": {
"Ref": "Password"
},
"DiskMappings": [
{
"Category": {
"Ref": "FirstDataDiskCategory"
},
"Size": {
"Ref": "FirstDataDiskSize"
}
},
{
"Category": {
"Ref": "SecondDataDiskCategory"
},
"Size": {
"Ref": "SecondDataDiskSize"
}
}
],
"InstanceType": {
"Ref": "InstanceType"
}
},
"Metadata": {
"ALIYUN::ROS::Designer": {
"id": "4f476130-0cde-4cff-a973-2cb026e18f13"
}
}
},
"Vpc": {
"Type": "ALIYUN::ECS::VPC",
"Properties": {
"CidrBlock": {
"Ref": "VpcCidrBlock"
}
},
"Metadata": {
"ALIYUN::ROS::Designer": {
"id": "adfdd097-9c30-49ff-8738-ae3b59eada43"
}
}
},
"VSwitch": {
"Type": "ALIYUN::ECS::VSwitch",
"Properties": {
"VpcId": {
"Fn::GetAtt": [
"Vpc",
"VpcId"
]
},
"CidrBlock": {
"Ref": "VSwitchCidrBlock"
},
"ZoneId": {
"Ref": "ZoneId"
}
},
"Metadata": {
"ALIYUN::ROS::Designer": {
"id": "bd814869-3bd7-4551-a5db-0ec7ad3d3246"
}
}
}
},
"Metadata": {
"ALIYUN::ROS::Interface": {
"ParameterGroups": [
{
"Parameters": [
"ZoneId",
"VpcCidrBlock",
"VSwitchCidrBlock"
],
"Label": {
"default": {
"zh-cn": "Infrastructure Configuration (Required)",
"en": "インフラストラクチャ設定"
}
}
},
{
"Parameters": [
"InstanceType",
"ImageId",
"Password"
],
"Label": {
"default": {
"zh-cn": "ECS Configuration (Required)",
"en": "ECS 設定"
}
}
},
{
"Parameters": [
"SystemDiskSize",
"SystemDiskCategory",
"FirstDataDiskSize",
"FirstDataDiskCategory",
"SecondDataDiskSize",
"SecondDataDiskCategory"
],
"Label": {
"default": {
"zh-cn": "ECS Disk Configuration (Required)",
"en": "ECS ディスク設定"
}
}
}
]
}
}
}<br/><br/><br/><br/><br/><br/><br/><br/><br/>
その他の例については、「このリソースを含むパブリックテンプレート」をご参照ください。