ALIYUN::ECS::InstanceGroup 型は、一連の ECS インスタンスを作成するために使用できます。

構文

  1. { Type”:”ALIYUN::ECS::InstanceGroup”, Properties”:{ SecurityGroupId”:String, ImageId”:String, InstanceType”:String, InstanceName”:String, Description”:String, HostName”:String, Password”:String, IoOptimized”:String, ZoneId”:String, InternetChargeType”:String, InternetMaxBandwidthIn”:Integer, InternetMaxBandwidthOut”:Integer, VpcId”:String, VSwitchId”:String, MaxAmount”:Integer, MixAmount”:Integer, AllocatePublicIP”:Boolean, AutoReleaseTime”:String, DiskMappings”:List, NetworkType”:String, PrivateIpAddress”:String, SystemDiskCategory”:String, SystemDiskDescription”:String, SystemDiskDiskName”:String, SystemDiskSize”:Integer, Tags”:List, UserData”:String, KeyPairName”: String, RamRoleName”: String, SpotPriceLimit”: String, SpotStrategy”: String }}

属性

属性名 データ型 必須/省略可能 更新可/不可 説明 制約
MaxAmount String 必須 一度に作成できる ECS インスタンスの最大数です。 値の範囲 : [1,100] MaxAmount の値は、MinAmount の値以上である必要があります。
MinAmount String 必須 一度に作成する必要がある ECS インスタンスの最小数です。 値の範囲 : [1,100] MinAmount の値は、MaxAmount の値以下である必要があります。
Description String 省略可能 不可 説明です。 最大 256 文字です。
InstanceType String 必須 不可 ECS インスタンスタイプです。 インスタンスの世代とインスタンスタイプファミリーを示します。
ImageId String 必須 ECS インスタンスを起動するために使用されるイメージの ID です。 イメージは、パブリックイメージ、カスタムイメージ、またはマーケットプレイスイメージにすることができます。 ECS パブリックイメージ一覧です。

パブリックイメージ ID はあいまいな方法で指定できます。 一般に、ECS インスタンスをデプロイするには、イメージタイプとバージョンを指定するか、テンプレートを編集するときにイメージタイプのみを指定します。 ROS は適正なパブリックイメージ ID を自動的に選択します。 また、イメージ ID を指定するときはイメージ ID の一部をワイルドカード文字のアスタリスク () に置き換えることができます。Alibaba Cloud が提供するすべての Ubuntu パブリックイメージを例に取り上げます。

ubuntu14_0405_32_40G_alibase_20170711.vhd

ubuntu_14_0405_32_40G_alibase_20170711.vhd

ubuntu_14_0405_64_20G_alibase_20170824.vhd

ubuntu_16_0402_32_40G_alibase_20170711.vhd

ubuntu_16_0402_64_20G_alibase_20170818.vhd

ECS インスタンスのパブリックイメージ ID を指定する場合、指定する ID と一致するイメージは以下のとおりです。

指定 : ubuntu

一致するイメージ : ubuntu_16_0402_64_20G_alibase_20170818.vhd

指定 : ubuntu_14

一致するイメージ : ubuntu_14_0405_64_20G_alibase_20170824.vhd

指定 : ubuntu1432

一致するイメージ : ubuntu_14_0405_32_40G_alibase_20170711.vhd

指定 : ubuntu_16_0402_32

一致するイメージ : ubuntu_16_0402_32_40G_alibase_20170711.vhd

SecurityGroupId String 必須 不可 作成したインスタンスが属するセキュリティグループの ID なし
InstanceName 文字列 省略可能 不可 インスタンス名です。 インスタンス名には、英字、数字、ピリオド(.)、ハイフン (-)、およびアンダースコア () を含め最大 128 文字まで指定できます。
Password String 省略可能 不可 ECS インスタンスのログインパスワードです。 パスワードは 8 - 30 文字の文字列で、大文字または小文字、数字、および ( ) を含む特殊文字を指定します。 @ # $ % ^ & - + = | { } [ ] : ; ‘ < > , . ? /. Password パラメーターを入力する場合は、パスワード漏洩防止のため API 呼び出し時に HTTPS メソッドを使用する必要があります。
HostName String 省略可能 不可 ホスト名です。 このパラメーターは、ECS インスタンスのホスト名を示します。 2 文字以上の文字列です。 ホスト名の先頭と末尾の文字にはピリオド (.) またはハイフン (-) を指定できません。 また、連続するピリオド (.) またはハイフン (-) は使用できません。 Windows の場合、ホスト名には、大文字または小文字、数字、ハイフン (-) を含めて最大 15 文字を指定できます。 ピリオド (.) または数字だけにすることはできません。 Linux など他のシステムでは、ピリオド (.) でセグメントに区切って最大 30 文字のホスト名を指定でき、各セグメントに大文字または小文字、数字、およびアンダースコア () を含めることができます。
AllocatePublicIP ブール値 省略可能 不可 パブリックIPアドレスを作成するかどうかを示します。 このパラメーターが有効なのは、Classic ネットワークタイプだけです。 InternetMaxBandwidthOut が 0 に設定されている場合、パブリック IP アドレスは割り当てられません。 デフォルト値は true です。
AutoReleaseTime String 省略可能 不可 自動 ECS インスタンスのリリース時間です。 時間形式は ISO 8601 規格に準拠しています。たとえば、yyyy-MM-ddTHH:mm:ssZ となります。 最大リリース時間は 3 年です。
PrivateIpAddress String 省略可能 不可 VPC の内部 IP アドレスです。 IP アドレスを VPC 内の他のインスタンスの IP アドレスと同じにすることはできません。 なし
DiskMappings List 省略可能 不可 ECS インスタンス用に作成されたデータディスク なし
InternetChargeType String 省略可能 いいえ インターネット経由のアクセスに対する帯域幅の課金方法です。 デフォルト値 : PayByTraffic 値のオプション : PayByBandwidth および PayByTraffic デフォルト値 : PayByTraffic
InternetMaxBandwidthIn Integer 省略可能 不可 インターネットの最大インバウンド帯域幅 (Mbps) です。 値の範囲 : [1,100]。デフォルト値 : 100。
InternetMaxBandwidthOut Integer 省略可能 不可 最大インターネットアウトバウンド帯域幅 (Mbps) です。 PayByBandwidthモードの値の範囲 : [0, 200]。デフォルト値 : 0。 PayByTraffic モードでの値の範囲 : [1, 200]。 このパラメーターは PayByTraffic モードで指定する必要があります。
IoOptimized String 省略可能 不可 I/O 最適化インスタンスを作成するかどうかを示します。 値のオプション : なし (I/O 非最適化) および最適化 (I/O 最適化)。デフォルト値 : なし。
DiskMappings List 省略可能 不可 取り付けるディスクを示します。 最大 4 つのディスクを接続できます。
SystemDiskCategory String 省略可能 不可 システムディスクタイプです。 値のオプション : cloud、cloud_efficiency、cloud_ssd、および ephemeral_ssd。
SystemDiskDescription String 省略可能 不可 システムディスクの説明 なし
SystemDiskDiskName String 省略可能 不可 システムディスク名 なし
SystemDiskSize String 省略可能 システムディスクサイズです。 値の範囲 : [40, 500] GB カスタムイメージを使用してシステムディスクを作成する場合は、システムディスクのサイズがイメージのサイズより必ず大きくなるようにします。
Tags List 省略可能 不可 カスタムタグです。 [{“Key”:”tagKey”,”Value”:”tagValue”},{“Key”:”tagKey2”,”Value”:”tagValue2”}] の形式で最大 4 つのタグがサポートされます。
UserData String 省略可能 いいえ ECS インスタンス作成中に入力されるユーザーデータです。 ユーザーデータは 16 KB 以下でなければならず、Base64 は不要です。 特殊文字のエスケープ文字は “\” を使用します。
ZoneId String 省略可能 不可 ゾーン ID なし
VpcId String 省略可能 不可 VPC ID なし
VSwitchId String 省略可能 不可 VSwitch ID なし
Networktype String 省略可能 不可 ECS インスタンスのネットワークタイプです。 値のオプション : VPC およびクラシック
KeyPairName String 省略可能 不可 ECS インスタンスにバインドされているキーペアの名前です。 キーペアが Windows ECS インスタンスにバインドされている場合、このパラメーターは無視されます。 デフォルトは NULL です。 このパラメーターが設定されている場合、Password パラメーターの値はインスタンスに設定されます。 ただし、Linux のパスワードログインモードは無効になっています。 なし
RamRoleName String 省略可能 不可 ECS インスタンスの RAM ロール名です。 ListRoles API を呼び出すことで、ロール名を照会できます。 詳細は、「CreateRole」および「ListRoles」をご参照ください。
SpotPriceLimit String 省略可能 不可 ECS インスタンスの時間当たりの最高料金を設定します。 小数第 3 位までです。 このパラメーターは、SpotStrategy の値が SpotWithPriceLimit になると有効になります。
SpotStrategy String 省略可能 不可 従量課金インスタンスの予期されるスポット料金を設定します。 このパラメーターは、InstanceChargeType の値が PostPaid になると有効になります。 有効な値 :

NoSpot : 通常の従量課金インスタンスでの入札。

SpotWithPriceLimit : スポットインスタンスの入札価格のしきい値を設定します。

SpotAsPriceGo : 入札システムによって自動的に従量課金の最高料金を設定します。

デフォルト値 : NoSpot。

DiskMappings の構文

  1. DiskMappings”:[ { Category”:String, DiskName”:String, Description”:String, Device”:String, SnapshotId”:String, Size”:String }]

DiskMappings 属性

属性名 データ型 必須/省略可能 更新可/不可 説明 制約
Size String 必須 不可 GB 単位のデータディスクサイズ なし
Category String 省略可能 不可 データディスクタイプです。 値のオプション : cloud、cloud_efficiency、cloud_ssd、および ephemeral_ssdDefault。
DiskName String 省略可能 不可 データディスク名です。 インスタンス名には、英字、数字、ピリオド(.)、ハイフン (-)、およびアンダースコア () を含め最大 128 文字まで指定できます。
Description String 省略可能 不可 説明です。 値の範囲 : [2, 256]。デフォルト値 : NULL。
Device String 省略可能 不可 ECS インスタンス内のデータディスクのデバイス名です。 例 : /dev/xvd[a-z]。
SnapshotId String 省略可能 不可 データディスクの作成に使用されるスナップショットの ID なし

Tags の構文

  1. Tags”: [ { Value : String, Key : String }]

タグ属性

プロパティ データ型 必須/省略可能 更新可/不可 エラーメッセージ 制約
Key String 必須 不可 なし なし
Value String 省略可能 不可 なし なし

戻り値

Fn::GetAtt

  • InstanceIds : システムが生成するインスタンスの ID 。グローバルで一意です。 インスタンスの一意の識別子です。
  • PrivateIps : VPC タイプのインスタンスのプライベート IP アドレスの一覧。 このパラメーターは、NetworkType が VPC のときに有効です。 [“172.16.1.1”, “172.16.2.1”, … “172.16.10.1”] の JSON 配列です。 最大 100 個の IP アドレスをコンマ (,) で区切って含めることができます。
  • InnerIps : クラシックタイプのインスタンスのプライベート IP アドレスの一覧。 このパラメーターは、NetworkType が Classic のときに有効です。 [“10.1.1.1”, “10.1.2.1”, … “10.1.10.1”] の JSON 配列です。 最大 100 個の IP アドレスをコンマ (,) で区切って含めることができます。
  • PublicIps : Classic タイプのインスタンスのパブリック IP アドレスの一覧。 このパラメーターは NetworkType が Classic のときに有効です。 [“42.1.1.1”, “42.1.2.1”, … “42.1.10.1”] の JSON 配列です。 最大 100 個の IP アドレスをコンマ (,) で区切って含めることができます。
  • ZoneId : ゾーンID。
  • HostName : インスタンスのホスト名。 Json 配列の形式 : [“host1”, “host2”,… “Host3”]

コーディング例

  1. { ROSTemplateFormatVersion”:”2015-09-01”, Resources”:{ WebServer”: { Type”: ALIYUN::ECS::InstanceGroup”, Properties”: { ImageId”:”m-25l0rcfjo”, InstanceType”: ecs.t1.small”, SecurityGroupId”: sg-25zwc3se0”, ZoneId”: cn-beijing-b”, MaxAmount”:1, MinAmount”:1, Tags”: [{ Key”: tiantt”, Value”: ros },{ Key”: tiantt1”, Value”: ros1 } ] } } }, Outputs”: { InstanceIds”: { Value”:{“get_attr”: [“WebServer”,”InstanceIds”]} }, PublicIps”: { Value”:{“get_attr”: [“WebServer”,”PublicIps”]} } }}
  1. </article>
  2. </main>