テンプレート名
ACS-Redis-BulkyCreateBackupAndUploadToOSS Redis バックアップを一括作成して OSS にアップロード
テンプレートの説明
複数の Redis インスタンスのバックアップをバッチで作成し、バックアップファイルを Object Storage Service (OSS) にアップロードします。Redis のバックアップ作成、および Function Compute (FC) を使用した OSS へのバックアップファイルのアップロードには、料金が発生する場合があります。課金の詳細については、「Redis のバックアップ費用」 および 「Function Compute の課金」をご参照ください。
テンプレートタイプ
自動
所有者
Alibaba Cloud
入力パラメーター
パラメーター | 説明 | データ型 | 必須 | デフォルト値 | 制限 |
targets | 宛先インスタンス。 | Json | はい | ||
OSSRegionId | OSS バケット が 置 かれている リージョン。 | String | はい | ||
OSSBucketName | OSS バケット の 名前。 | String | はい | ||
regionId | リージョン ID。 | String | いいえ | {{ACS::RegionId}} | |
invokeConfig | 実行設定。 | String | いいえ | sync | |
rateControl | OOS RAM ロール | Json | いいえ | {'Mode': 'Concurrency', 'MaxErrors': 0, 'Concurrency': 10} | |
OOSAssumeRole | CloudOps Orchestration Service (OOS) によって 引き受け られる RAM ロール。 | String | いいえ | "" |
出力パラメーター
パラメーター | 説明 | データ型 |
OSSObjectURLs | List |
テンプレート の 実行 に 必要 な 権限 ポリシー
{
"Version": "1",
"Statement": [
{
"Action": [
"kvstore:CreateBackup",
"kvstore:DescribeBackupTasks",
"kvstore:DescribeBackups",
"kvstore:DescribeInstances"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"oos:GetApplicationGroup"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"ros:CreateStack",
"ros:DeleteStack",
"ros:GetStack"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"ecs:DescribeNetworkInterfaces"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"fc:CreateFunction",
"fc:CreateService",
"fc:CreateVpcBinding",
"fc:DeleteFunction",
"fc:DeleteFunctionAsyncInvokeConfig",
"fc:DeleteService",
"fc:DeleteVpcBinding",
"fc:GetFunction",
"fc:GetResourceTags",
"fc:GetService",
"fc:GetStatefulAsyncInvocation",
"fc:InvokeFunction",
"fc:PutFunctionAsyncInvokeConfig",
"fc:TagResource",
"fc:UnTagResource",
"fc:UpdateFunction",
"fc:UpdateService"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"ram:PassRole"
],
"Resource": "*",
"Effect": "Allow"
}
]
}
詳細
ACS-Redis-BulkyCreateBackupAndUploadToOSS
テンプレートコンテンツ
FormatVersion: OOS-2019-06-01
Description:
ja: 複数の Redis インスタンスのバックアップを一括で作成し、バックアップファイルを Object Storage Service (OSS) バケットにアップロードします。Redis バックアップの作成と、Function Compute (FC) を使用したバックアップの OSS へのアップロードには料金が発生する場合があります。課金の詳細については、「<a href='https://www.alibabacloud.com/help/redis/user-guide/automatic-or-manual-backup#section-9p1-2sd-zfb'>バックアップストレージの費用</a>」および「<a href='https://www.alibabacloud.com/help/fc/product-overview/billing-overview'>課金の概要</a>」をご参照ください。
name-ja: ACS-Redis-BulkyCreateBackupAndUploadToOSS
categories:
- tair
Parameters:
regionId:
Label:
ja: リージョン ID
Type: String
AssociationProperty: RegionId
Default: '{{ACS::RegionId}}'
targets:
Type: Json
Label:
ja: ターゲットインスタンス
AssociationProperty: Targets
AssociationPropertyMetadata:
ResourceType: ALIYUN::Redis::Instance
RegionId: regionId
OSSRegionId:
Label:
ja: OSS バケットのリージョン ID
Type: String
AssociationProperty: RegionId
OSSBucketName:
Label:
ja: OSS バケット名
Type: String
AssociationProperty: ALIYUN::OSS::Bucket::BucketName
AssociationPropertyMetadata:
RegionId: ${OSSRegionId}
invokeConfig:
Type: String
Label:
ja: 実行モード
Description:
ja: 'Function Compute (FC) 関数の実行モード:同期または非同期。FC を使用して 500 MB を超えるバックアップファイルをアップロードする場合、60 秒のランタイム制限により同期実行が失敗する可能性があります。この場合は、非同期実行を選択してください。非同期実行には、次の追加の権限が必要です:[fc:DeleteFunctionAsyncInvokeConfig, fc:GetStatefulAsyncInvocation, fc:PutFunctionAsyncInvokeConfig]'
AllowedValues:
- sync
- async
Default: sync
rateControl:
Label:
ja: レート制御
Type: Json
AssociationProperty: RateControl
Default:
Mode: Concurrency
MaxErrors: 0
Concurrency: 10
OOSAssumeRole:
Label:
ja: OOS が引き受けるロール
Type: String
Default: ''
RamRole: '{{ OOSAssumeRole }}'
Tasks:
- Name: GetInstance
Description:
ja: Redis インスタンスを取得します。
Action: ACS::SelectTargets
Properties:
ResourceType: ALIYUN::Redis::Instance
RegionId: '{{ regionId }}'
Filters:
- '{{ targets }}'
Outputs:
InstanceIds:
Type: List
ValueSelector: Instances.Instance[].InstanceId
- Name: CreateBackupAndUploadToOSS
Action: ACS::Redis::CreateBackupAndUploadToOSS
Description:
ja: Redis バックアップを作成し、バックアップを OSS にアップロードします。
Properties:
regionId: '{{ regionId }}'
instanceId: '{{ ACS::TaskLoopItem }}'
OSSRegionId: '{{ OSSRegionId }}'
OSSBucketName: '{{ OSSBucketName }}'
invokeConfig: '{{ invokeConfig }}'
Loop:
RateControl: '{{ rateControl }}'
Items: '{{ GetInstance.InstanceIds }}'
Outputs:
OSSObjectURLs:
AggregateType: Fn::ListJoin
AggregateField: OSSObjectURL
Outputs:
OSSObjectURL:
Type: String
ValueSelector: '.OSSObjectURL + "{{ACS::ExecutionId}}/" | split(".t0") | .[0]'
Outputs:
OSSObjectURLs:
Type: List
Value: '{{ CreateBackupAndUploadToOSS.OSSObjectURLs }}'