テンプレート名
ACS-ECS-CreateImageAndUpdateLaunchTemplates:指定のインスタンスから Elastic Compute Service (ECS) イメージを作成し、指定の起動テンプレートを新しいイメージで更新します。
説明
指定のインスタンスから ECS イメージを作成し、指定の起動テンプレートを新しいイメージで更新します。
テンプレートタイプ
オートメーション
所有者
Alibaba Cloud
入力パラメーター
|
パラメーター名 |
説明 |
タイプ |
必須 |
デフォルト値 |
制約 |
|
instanceId |
ECS インスタンスの ID。 |
String |
はい |
||
|
regionId |
リージョン ID。 |
String |
いいえ |
{{ ACS::RegionId }} |
|
|
targetImageName |
イメージ名。 |
String |
いいえ |
CreateImage_from_{{instanceId}} |
|
|
launchTemplateNames |
更新する起動テンプレートの名前。 |
List |
いいえ |
[] |
|
|
tags |
イメージのタグ。 |
JSON |
いいえ |
[] |
|
|
deleteSourceTemplateVersion |
起動テンプレートの以前のバージョンを削除するかどうかを指定します。 |
Boolean |
いいえ |
True |
|
|
rateControl |
タスク実行の同時実行数設定。 |
JSON |
いいえ |
{'Mode': 'Concurrency', 'MaxErrors': 0, 'Concurrency': 5} |
|
|
OOSAssumeRole |
テンプレートを実行するために CloudOps Orchestration Service (OOS) が引き受ける RAM ロール。 |
String |
いいえ |
"" |
出力パラメーター
|
パラメーター名 |
説明 |
タイプ |
|
imageIds |
作成されたイメージの ID リスト。 |
List |
テンプレートの実行に必要な権限
{
"Version": "1",
"Statement": [
{
"Action": [
"ecs:CreateImage",
"ecs:CreateLaunchTemplateVersion",
"ecs:DeleteLaunchTemplateVersion",
"ecs:DescribeDisks",
"ecs:DescribeImages",
"ecs:DescribeInstances",
"ecs:DescribeLaunchTemplateVersions",
"ecs:DescribeLaunchTemplates",
"ecs:ModifyLaunchTemplateDefaultVersion"
],
"Resource": "*",
"Effect": "Allow"
}
]
}
詳細
ACS-ECS-CreateImageAndUpdateLaunchTemplates の詳細
テンプレートの内容
FormatVersion: OOS-2019-06-01
Description:
name-en: ACS-ECS-CreateImageAndUpdateLaunchTemplates
name-ja: ACS-ECS-CreateImageAndUpdateLaunchTemplates
en: Creates an ECS image and updates a launch template.
ja: ECS イメージを作成し、起動テンプレートを更新します。
categories:
- image_manage
Parameters:
regionId:
Type: String
Label:
en: Region ID
ja: リージョン ID
AssociationProperty: RegionId
Default: '{{ ACS::RegionId }}'
instanceId:
Label:
en: Instance ID
ja: インスタンス ID
Type: String
AssociationProperty: ALIYUN::ECS::Instance::InstanceId
AssociationPropertyMetadata:
RegionId: regionId
targetImageName:
Label:
en: Target Image Name
ja: ターゲットイメージ名
Type: String
Description:
en: <p class="p">Note:</p> <ul class="ul"> <li class="li">The name must be 2 to 128 characters in length.</li> <li class="li"><font color='red'>The name must start with a letter or a Chinese character. It cannot start with http:// or https://.</font></li> <li class="li">The name can contain digits, colons (:), underscores (_), and hyphens (-).</li> </ul>
ja: <p class="p">注:</p> <ul class="ul"> <li class="li">名前は 2~128 文字である必要があります。</li> <li class="li"><font color='red'>名前は、英字または漢字で始まる必要があります。http:// または https:// で始めることはできません。</font></li> <li class="li">名前に使用できる文字は、数字、コロン (:)、アンダースコア (_)、ハイフン (-) です。</li> </ul>
Default: CreateImage_from_{{instanceId}}
launchTemplateNames:
Description:
en: <font color='red'>The launch templates must be in the selected region.</font>
ja: <font color='red'>起動テンプレートは、選択したリージョンに存在している必要があります。</font>
Label:
en: Launch Template Names
ja: 起動テンプレート名
Type: List
Default: []
tags:
Label:
en: Image Tags
ja: イメージタグ
Type: Json
AssociationProperty: Tags
AssociationPropertyMetadata:
ShowSystem: false
Default: []
deleteSourceTemplateVersion:
Label:
en: Delete Source Template Version
ja: ソーステンプレートバージョンの削除
Type: Boolean
Default: true
rateControl:
Label:
en: Rate Control
ja: レート制御
Type: Json
AssociationProperty: RateControl
Default:
Mode: Concurrency
MaxErrors: 0
Concurrency: 5
OOSAssumeRole:
Label:
en: OOS Assume Role
ja: OOS 引き受けロール
Type: String
Default: ''
RamRole: '{{ OOSAssumeRole }}'
Tasks:
- Name: createImage
Action: 'ACS::ECS::CreateImage'
Description:
en: Create a new image from the specified instance ID and image name.
ja: 指定のインスタンス ID とイメージ名から新しいイメージを作成します。
Properties:
regionId: '{{ regionId }}'
instanceId: '{{ instanceId }}'
imageName: '{{ targetImageName }}_on_{{ ACS::ExecutionId }}_at_{{ ACS::CurrentDate }}'
tags: '{{tags}}'
Outputs:
imageId:
ValueSelector: imageId
Type: String
- Name: describeDisks
Action: 'ACS::ExecuteAPI'
Description:
en: Get the disk information of the ECS instance.
ja: ECS インスタンスのディスク情報を取得します。
Properties:
Service: ECS
API: DescribeDisks
Parameters:
RegionId: '{{ regionId }}'
InstanceId: '{{ instanceId }}'
Outputs:
systemDiskSize:
Type: String
ValueSelector: '.Disks.Disk[] | select(.Type == "system" )|.Size'
systemDiskPerformanceLevel:
Type: String
ValueSelector: '.Disks.Disk[] | select(.Type == "system" )|.PerformanceLevel'
systemDiskDeleteWithInstance:
Type: Boolean
ValueSelector: '.Disks.Disk[] | select(.Type == "system" )|.DeleteWithInstance'
- Name: updateLaunchTemplate
Action: 'ACS::ECS::UpdateLaunchTemplate'
Description:
en: Update the instance launch template.
ja: インスタンスの起動テンプレートを更新します。
Properties:
regionId: '{{ regionId }}'
imageId: '{{ createImage.imageId }}'
launchTemplateName: '{{ ACS::TaskLoopItem }}'
deleteSourceTemplateVersion: '{{ deleteSourceTemplateVersion }}'
systemDiskSize: '{{ describeDisks.systemDiskSize}}'
systemDiskPerformanceLevel: '{{ describeDisks.systemDiskPerformanceLevel }}'
systemDiskDeleteWithInstance: '{{ describeDisks.systemDiskDeleteWithInstance }}'
Loop:
Items: '{{ launchTemplateNames }}'
Outputs:
imageIds:
Type: List
Value:
- '{{ createImage.imageId }}'
Metadata:
ALIYUN::OOS::Interface:
ParameterGroups:
- Parameters:
- regionId
- instanceId
Label:
default:
en: Select ECS Instance
ja: ECS インスタンスの選択
- Parameters:
- targetImageName
- tags
Label:
default:
en: Image Settings
ja: イメージ設定
- Parameters:
- launchTemplateNames
- deleteSourceTemplateVersion
Label:
default:
en: Launch Template
ja: 起動テンプレート
- Parameters:
- rateControl
- OOSAssumeRole
Label:
default:
en: Advanced Options
ja: 詳細オプション