ALIYUN::EHPC::AutoScaleConfig は、クラスターの自動スケーリング設定を行うために使用されます。
構文
{
"Type": "ALIYUN::EHPC::AutoScaleConfig",
"Properties": {
"ExtraNodesGrowRatio": Integer,
"EnableAutoGrow": Boolean,
"ClusterId": String,
"ShrinkIdleTimes": Integer,
"MaxNodesInCluster": Integer,
"EnableAutoShrink": Boolean,
"GrowRatio": Integer,
"GrowIntervalInMinutes": Integer,
"GrowTimeoutInMinutes": Integer,
"ImageId": String,
"ShrinkIntervalInMinutes": Integer,
"SpotPriceLimit": Number,
"Queues": List,
"ExcludeNodes": String,
"SpotStrategy": String
}
}プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
ExtraNodesGrowRatio | Integer | いいえ | はい | 追加の計算ノードの割合。 | ジョブを実行するために 100 個の計算ノードを追加する必要がある場合、ExtraNodesGrowRatio プロパティを 2 に設定すると、システムは 102 個の計算ノードを追加します。 有効な値: 0 ~ 100。 デフォルト値: 0。 |
EnableAutoGrow | Boolean | いいえ | はい | 自動スケールアウトを有効にするかどうかを指定します。 | デフォルト値: false。有効な値:
|
ClusterId | String | はい | いいえ | クラスターの ID。 | なし。 |
ShrinkIdleTimes | Integer | いいえ | はい | リソースのスケールインチェック中に計算ノードがアイドル状態になっている連続回数。アイドル期間とは、クラスター内でジョブが実行されていない期間です。 |
有効な値: 2 ~ 5。 デフォルト値: 3。 このプロパティを 3 に設定すると、ノードが 3 回以上連続してアイドル状態になると、計算ノードが解放されます。連続アイドル時間は、スケールイン時間間隔に連続アイドル回数を掛けたものです。デフォルトでは、ShrinkIntervalInMinutes プロパティで指定されたスケールイン時間間隔は 2 分です。計算ノードが 6 分以上アイドル状態の場合、デフォルトでノードは解放されます。 |
MaxNodesInCluster | Integer | いいえ | はい | クラスターに追加できる計算ノードの最大数。 | 有効な値: 0 ~ 500。 デフォルト値: 100。 |
EnableAutoShrink | Boolean | いいえ | はい | 自動スケールインを有効にするかどうかを指定します。 | デフォルト値: false。有効な値:
|
GrowRatio | 整数 | いいえ | はい | スケールアウトタスクの各ラウンドのパーセンテージ。 | ジョブを実行するために 10 個のコンピュートノードを追加する必要があり、GrowRatio プロパティを 50 に設定した場合、スケールアウトタスクは 2 ラウンドになります。システムは各ラウンドで 5 つのコンピュートノードを追加します。 有効な値: 1 ~ 100。 デフォルト値: 100。 |
GrowRatio | Integer | いいえ | はい | スケールアウトタスクの各ラウンドの割合。 | 単位:分。 ジョブを実行するために 10 個の計算ノードを追加する必要があり、GrowRatio プロパティを 50 に設定すると、スケールアウトタスクは 2 ラウンドになります。システムは各ラウンドで 5 つの計算ノードを追加します。 有効な値: 1 ~ 100。 説明 スケールアウトタスクの複数ラウンド間、または 2 つの連続したスケールアウトタスクの間に、間隔が存在する場合があります。 |
GrowTimeoutInMinutes | 整数 | いいえ | GrowIntervalInMinutes | Integer | 単位:分。 有効な値: 10 ~ 60 です。 既定値: 20。 いいえ |
ImageId | String | いいえ | はい | イメージの ID です。 | 説明
|
ShrinkIntervalInMinutes | 整数 | いいえ | はい | スケールインタスクの 2 つの連続したラウンドの間隔。 | 単位:分。 有効な値:2 ~ 10。 デフォルト値:2。 |
スポット価格の上限 | 数値 | いいえ | GrowTimeoutInMinutes | Integer | このプロパティの値には、小数点以下最大 3 桁まで含めることができます。 いいえ |
キュー | リスト | いいえ | はい | スケールアウト タスクを実行するキューの構成。 | 詳細については、「キューのプロパティ」をご参照ください。 |
ImageId | String | いいえ | はい | イメージの ID。 | 複数の計算ノードはコンマ (,) で区切ります。 説明 コンピューティングノードを保持する場合は、アイドル状態のときにノードを保持するための追加ノードとして指定できます。 |
SpotStrategy | String | いいえ | はい | 計算ノードのプリエンプションポリシー。 | デフォルト値: NoSpot。有効な値:
|
キューの構文
"Queues": [
{
"HostNameSuffix": String, // ホスト名のサフィックス
"MinNodesInQueue": Integer, // キュー内の最小ノード数
"MaxNodesInQueue": Integer, // キュー内の最大ノード数
"EnableAutoGrow": Boolean, // 自動拡張の有効化
"DataDisks": List, // データ ディスク
"SystemDiskSize": Integer, // システム ディスクのサイズ
"SystemDiskLevel": String, // システム ディスクのレベル
"QueueImageId": String, // キューのイメージ ID
"MinNodesPerCycle": Integer, // サイクルあたりの最小ノード数
"MaxNodesPerCycle": Integer, // サイクルあたりの最大ノード数
"EnableAutoShrink": Boolean, // 自動縮小の有効化
"SystemDiskCategory": String, // システム ディスクのカテゴリ
"HostNamePrefix": String, // ホスト名のプレフィックス
"SpotPriceLimit": Number, // スポット価格の上限
"InstanceTypes": List, // インスタンス タイプ
"InstanceType": String, // インスタンス タイプ
"QueueName": String, // キュー名
"SpotStrategy": String // スポット戦略
}
]キューのプロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
HostNameSuffix | String | いいえ | はい | キュー内のスケールアウトタスクを実行するために使用されるホストのホスト名サフィックス。 | なし。 |
MinNodesInQueue | Integer | いいえ | はい | キューから削除できる計算ノードの最小数。 | 有効な値:0~50。 デフォルト値:0。 |
MaxNodesInQueue | Integer | いいえ | はい | キューに追加できる計算ノードの最大数。 | 有効な値:0~500。 デフォルト値:100。 |
EnableAutoGrow | Boolean | いいえ | はい | キューの自動スケールアウトを有効にするかどうかを指定します。 | デフォルト値:false。有効な値:
|
DataDisks | List | いいえ | はい | データディスクの構成。 | 詳細については、DataDisks プロパティをご参照ください。 |
SystemDiskSize | Integer | いいえ | はい | キューに追加される計算ノードのシステムディスクのサイズ。 | 単位:GB。 有効な値:40~500。 デフォルト値:40。 |
SystemDiskLevel | String | いいえ | はい | キューに追加される計算ノードのシステムディスクとして使用される拡張SSD(ESSD)のパフォーマンスレベル(PL)。 | デフォルト値:PL1。有効な値:
|
QueueImageId | String | いいえ | はい | キューで使用したいイメージの ID。 | 説明
|
MinNodesPerCycle | Integer | いいえ | はい | 自動スケールアウトタスクの各ラウンドで追加できる計算ノードの最小数。 | 有効な値:1~99。 デフォルト値:1。 1 ラウンドで追加する計算ノードの数がこのプロパティの値より少ない場合、システムはこのプロパティの値を 1 ラウンドで追加する計算ノードの数に自動的に変更します。これにより、計算ノードを想定どおりに追加できます。 説明 変更された値は、現在のラウンドで追加できる計算ノードの最小数に対してのみ有効になります。 |
MaxNodesPerCycle | Integer | いいえ | はい | 自動スケールアウトタスクの各ラウンドで追加できる計算ノードの最大数。 | 有効な値:0~99。 デフォルト値:0。 |
EnableAutoShrink | Boolean | いいえ | はい | キューの自動スケールインを有効にするかどうかを指定します。 | デフォルト値:false。有効な値:
|
SystemDiskCategory | String | いいえ | はい | キューに追加される計算ノードのシステムディスクのカテゴリ。 | デフォルト値:cloud_efficiency。有効な値:
|
HostNamePrefix | String | いいえ | はい | キュー内のスケールアウトタスクを実行するために使用されるホストのホスト名プレフィックス。 | なし。 |
SpotPriceLimit | Number | いいえ | はい | キューに自動的に追加される計算ノードの 1 時間あたりの最大価格。 | このプロパティの値には、小数点以下 3 桁まで含めることができます。 このプロパティは、SpotStrategy プロパティが SpotWithPriceLimit に設定されている場合に有効になります。 |
InstanceTypes | List | いいえ | はい | キューに自動的に追加される計算ノードの構成。 | 詳細については、InstanceTypes プロパティをご参照ください。 |
InstanceType | String | いいえ | はい | キューに自動的に追加される計算ノードのインスタンスタイプ。 | なし。 |
QueueName | String | いいえ | はい | キューの名前。 | 複数のキュー名を同時に指定できます。 |
SpotStrategy | String | いいえ | はい | キューに自動的に追加される計算ノードのプリエンプションポリシー。 | デフォルト値:NoSpot。有効な値:
|
DataDisks 構文
"DataDisks": [
{
"DataDiskKMSKeyId": String, // データディスクの KMS キー ID
"DataDiskPerformanceLevel": String, // データディスクのパフォーマンスレベル
"DataDiskEncrypted": Boolean, // データディスクが暗号化されているかどうか
"DataDiskDeleteWithInstance": Boolean, // インスタンスの削除時にデータディスクも削除するかどうか
"DataDiskSize": Integer, // データディスクのサイズ
"DataDiskCategory": String // データディスクのカテゴリ
}
]DataDisks プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
DataDiskKMSKeyId | String | いいえ | はい | データディスクの Key Management Service (KMS) キー ID。 | なし。 |
DataDiskPerformanceLevel | String | いいえ | はい | データディスクとして使用される ESSD の PL。 | このプロパティは、DataDiskCategory プロパティが cloud_essd に設定されている場合に有効になります。 デフォルト値: PL1。有効な値:
|
DataDiskEncrypted | Boolean | いいえ | はい | データディスクを暗号化するかどうかを指定します。 | デフォルト値: false。有効な値:
|
DataDiskDeleteWithInstance | Boolean | いいえ | はい | 計算ノードが解放されたときにデータディスクを解放するかどうかを指定します。 | デフォルト値: true。有効な値:
|
DataDiskSize | Integer | いいえ | はい | データディスクのサイズ。 | 単位: GB。 有効な値: 40 ~ 500。 デフォルト値: 40。 |
DataDiskCategory | String | いいえ | はい | データディスクのカテゴリ。 | デフォルト値: cloud_efficiency。有効な値:
|
Queues 構文
"InstanceTypes": [
{
"ZoneId": String, // ゾーン ID
"VSwitchId": String, // 仮想スイッチ ID
"SpotPriceLimit": Number, // スポット価格の上限
"InstanceType": String, // インスタンスタイプ
"SpotStrategy": String // スポット戦略
}
]InstanceTypes プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
ZoneId | String | はい | いいえ | キューに自動的に追加される計算ノードのゾーン ID です。 | N 個のキュー名を同時に指定し、キュー内の N 個の計算ノードのゾーン ID を同時に指定できます。これらの設定は、システムがキューで自動スケールアウトを実行するときに有効になります。 N の有効な値: 0 ~ 500。 |
VSwitchId | String | はい | いいえ | キューに自動的に追加される計算ノードの vSwitch ID です。 | N 個のキュー名を同時に指定し、キュー内の N 個の計算ノードの vSwitch ID を同時に指定できます。これらの設定は、システムがキューで自動スケールアウトを実行するときに有効になります。 N の有効な値: 0 ~ 500。 |
SpotPriceLimit | Number | いいえ | はい | キューに自動的に追加される計算ノードの 1 時間あたりの最大価格です。 | このプロパティの値には、小数点以下 3 桁まで含めることができます。 このプロパティは、SpotStrategy プロパティが SpotWithPriceLimit に設定されている場合に有効になります。 N 個のキュー名を同時に指定し、キュー内の N 個の計算ノードの 1 時間あたりの最大価格を同時に指定できます。これらの設定は、システムがキューで自動スケールアウトを実行するときに有効になります。 N の有効な値: 0 ~ 500。 |
InstanceType | String | はい | はい | キューに自動的に追加される計算ノードのインスタンスタイプです。 | N 個のキュー名を同時に指定し、キュー内の N 個の計算ノードのインスタンスタイプを同時に指定できます。これらの設定は、システムがキューで自動スケールアウトを実行するときに有効になります。 N の有効な値: 0 ~ 500。 |
SpotStrategy | String | いいえ | はい | キューに自動的に追加される計算ノードのプリエンプションポリシーです。 | デフォルト値: NoSpot。有効な値:
キュー内の N 個の計算ノードのプリエンプションポリシーを同時に指定できます。設定は、システムがキューで自動スケールアウトを実行するときに有効になります。 N の有効な値: 0 ~ 500。 |
戻り値
Fn::GetAtt
ClusterId: クラスタの ID。