テンプレート名
ACS-ECS-ScheduleToBulkyCreateSnapshot 定期的なバッチスナップショット作成
テンプレートの説明
スケジュールに従って複数のディスクのスナップショットを一度に作成します。
テンプレートタイプ
自動化
所有者
Alibaba Cloud
入力パラメーター
パラメーター | 説明 | タイプ | 必須 | デフォルト値 | 制限 |
timerTrigger | スケジュールされたタスクのタイプ | Json | はい | ||
diskIds | ディスク ID | リスト | はい | ||
regionId | リージョン ID。 | 文字列 | いいえ | {{ ACS::RegionId }} | |
retentionDays | スナップショットの保存期間。 | 数値 | いいえ | 0 | |
tags | スナップショットのタグ。 | Json | いいえ | [] | |
rateControl | 同時実行レート | Json | いいえ | {'Mode': 'Concurrency', 'MaxErrors': 0, 'Concurrency': 10} | |
OOSAssumeRole | CloudOps Orchestration Service (OOS) によって引き受けられる Resource Access Management (RAM) ロール。 | 文字列 | いいえ | OOSServiceRole |
出力パラメーター
パラメーター | 説明 | タイプ |
createdSnapshotIds | リスト |
テンプレートを実行するために必要な権限ポリシー
{
"Version": "1",
"Statement": [
{
"Action": [
"ecs:CreateSnapshot",
"ecs:DescribeDisks",
"ecs:DescribeInstances",
"ecs:DescribeSnapshots"
],
"Resource": "*",
"Effect": "Allow"
}
]
}
詳細
詳細については、GitHub の ACS-ECS-ScheduleToBulkyCreateSnapshot.yml をご参照ください。
テンプレートコンテンツ
FormatVersion: OOS-2019-06-01
Description:
ja: スナップショットのバッチ作成をスケジュール設定します。
name-ja: ACS-ECS-ScheduleToBulkyCreateSnapshot
Parameters:
regionId:
Label:
ja: リージョン ID
Type: String
AssociationProperty: RegionId
Default: '{{ ACS::RegionId }}'
timerTrigger:
Type: Json
Label:
ja: スケジュール
AssociationProperty: ALIYUN::OOS::Component::TimerTrigger
AssociationPropertyMetadata:
MinuteInterval: 30
diskIds:
Label:
ja: ディスク ID
AssociationProperty: ALIYUN::ECS::Disk::DiskId
AssociationPropertyMetadata:
RegionId: regionId
Type: List
retentionDays:
Label:
ja: 保存期間 (日)
Description:
ja: スナップショットの保存期間 (単位: 日)。保存期間が終了すると、スナップショットは自動的にリリースされます。値が 0 の場合、スナップショットは自動的にリリースされません。
Type: Number
MaxValue: 65536
MinValue: 0
Default: 0
tags:
Label:
ja: スナップショットタグ
Type: Json
AssociationProperty: Tags
AssociationPropertyMetadata:
ShowSystem: false
Default: []
rateControl:
Label:
ja: 同時実行数制御
Type: Json
AssociationProperty: RateControl
Default:
Mode: Concurrency
MaxErrors: 0
Concurrency: 10
OOSAssumeRole:
Label:
ja: OOS の RAM ロール
Type: String
Default: OOSServiceRole
RamRole: '{{ OOSAssumeRole }}'
Tasks:
- Name: timerTrigger
Action: ACS::TimerTrigger
Description:
ja: スケジュールに基づいてタスクをトリガーします。
Properties:
Type:
Fn::Select:
- type
- '{{timerTrigger}}'
Expression:
Fn::Select:
- expression
- '{{timerTrigger}}'
StartDate:
Fn::Select:
- startDate
- '{{ timerTrigger }}'
EndDate:
Fn::Select:
- endDate
- '{{ timerTrigger }}'
TimeZone:
Fn::Select:
- timeZone
- '{{ timerTrigger }}'
- Name: createSnapshot
Action: ACS::ECS::CreateSnapshot
Description:
ja: ディスクのスナップショットを作成します。
Properties:
regionId: '{{ regionId }}'
diskId: '{{ ACS::TaskLoopItem }}'
retentionDays:
Fn::If:
- Fn::Equals:
- '{{ retentionDays }}'
- 0
- ''
- '{{ retentionDays }}'
tags: '{{ tags }}'
Loop:
RateControl: '{{ rateControl }}'
Items: '{{ diskIds }}'
Outputs:
snapshotIds:
AggregateType: Fn::ListJoin
AggregateField: snapshotId
Outputs:
createdSnapshotIds:
Type: List
Value: '{{ createSnapshot.snapshotIds }}'