阿裡雲對象存儲服務(Object Storage Service,簡稱 OSS),是阿裡雲提供的海量、安全、低成本、高可靠的雲存儲服務。當需要在不同的區域建立多個存儲空間時,此時可以使用OOS服務執行特定模版來實作自動化建立存儲空間。
前提條件
- 確定建立的Bucket名稱不存在。( 詳情請檢視OSS文檔 )
- 本模版屬于ROA風格,與REST風格模版稍有差別。
模版說明:
本模版主要功能為在不同的Region下可以同時建立相同類型的Bucket,也可以僅在一個Region下建立Bucket。
FormatVersion: OOS-2019-06-01
Description:
en: Create multiple buckets in different region at the same time.
zh-cn: 同時建立多個不同區域的Bucket。
Parameters:
Regions:
Description:
en: The region id..
zh-cn: 區域Id。
Type: List
AllowedValues:
- cn-qingdao
- cn-beijing
- cn-zhangjiakou
- cn-huhehaote
- cn-hangzhou
- cn-shanghai
- cn-shenzhen
- cn-chengdu
- cn-hongkong
- ap-northeast-1
- ap-southeast-1
- ap-southeast-2
- ap-southeast-3
- ap-southeast-5
- ap-south-1
- us-east-1
- us-west-1
- eu-west-1
- me-east-1
- eu-central-1
BucketName:
Description:
en: The bucket name.
zh-cn: Bucket名稱。
Type: String
DataRedundancyType:
Description:
en: Specifies the data disaster tolerance type of the bucket.
zh-cn: 指定Bucket的資料容災類型。
Type: String
AllowedValues:
- LRS
- ZRS
StorageClass:
Description:
en: Specify the bucket storage type.
zh-cn: 指定Bucket存儲類型。
Type: String
AllowedValues:
- Standard
- IA
- Archive
XOssAcl:
Description:
en: Specify bucket access rights.
zh-cn: 指定Bucket通路權限。
Type: String
AllowedValues:
- public-read-write
- public-read
- private
RateControl:
Description:
en: Concurrency ratio of task execution.
zh-cn: 任務執行的并發比率。
Type: Json
AssociationProperty: RateControl
OOSAssumeRole:
Description: The RAM role to be assumed by OOS.
Type: String
Default: OOSServiceRole
RamRole: '{{ OOSAssumeRole }}'
Tasks:
- Name: PutBucket
Action: 'ACS::ExecuteAPI'
Description:
en: Create buckets in different regions.
zh-cn: 建立不同區域的Bucket。
Properties:
Service: OSS
API: PutBucket
Method: PUT
URI: ''
Headers:
x-oss-acl: '{{ XOssAcl }}'
Parameters:
BucketName: '{{ BucketName }}-{{ACS::TaskLoopItem}}'
RegionId: '{{ACS::TaskLoopItem}}'
Body: |
<?xml version="1.0" encoding="UTF-8"?>
<CreateBucketConfiguration>
<StorageClass>{{ StorageClass }}</StorageClass>
<DataRedundancyType>{{ DataRedundancyType }}</DataRedundancyType>
</CreateBucketConfiguration>
Loop:
Items: '{{ Regions }}'
RateControl: '{{ RateControl }}'
模版參數說明:
參數 | 說明 | 示例 |
---|---|---|
Regions | 建立Bucket的區域 | cn-hangzhou |
BucketName | 建立Bucket的名稱 | test-put-bucket |
DataRedundancyType | 指定Bucket的資料容災類型。 有效值: - LRS(本地容災類型) - ZRS(同城容災類型) | LRS |
StorageClass | 指定Bucket存儲類型。 - Standard(标準) - IA - Archive | Standard |
XOssAcl | 指定Bucket通路權限。 有效值: - public-read-write(公共可讀可寫) - public-read(公共可讀) - private(私有) | private |
RateControl | 固定參數。 - 速率控制類型:并發控制 - 并發速率:1 - 最大錯誤次數:0 | |
OOSAssumeRole | 可選參數。 - (預設設定)目前賬号的已有權限:執行您使用的賬号的權限動作。請確定您擁有建立自定義鏡像涉及的所有ECS API調用權限。 - 指定RAM角色,使用該角色的權限:如果指定了RAM角色名稱,OOS扮演該RAM角色執行運維任務。 | 目前賬号的已有權限 |
操作步驟
- 請登入 運維編排OOS的控制台 。
- 單擊自定義模闆,單擊建立模闆按鈕,選取空白模闆。
運維編排場景系列-----自動建立多個區域同類型存儲空間 - 将上述提供的子模闆粘貼到yaml欄,輸入名稱CreateDifferentRegionBucket,點選建立模闆。
運維編排場景系列-----自動建立多個區域同類型存儲空間 - 單擊建立執行。
運維編排場景系列-----自動建立多個區域同類型存儲空間 - 保持基本資訊的預設設定,單擊下一步:設定參數。
- 完成參數設定填寫,單擊下一步:确認。
運維編排場景系列-----自動建立多個區域同類型存儲空間 - 檢視參數設定是否無誤,确認無誤後單擊建立執行。
運維編排場景系列-----自動建立多個區域同類型存儲空間 - 在執行管理中檢視建立的運維任務。
運維編排場景系列-----自動建立多個區域同類型存儲空間 -
執行結果
如下所示,已經根據自己需求建立出相應的存儲空間。
運維編排場景系列-----自動建立多個區域同類型存儲空間
附錄一:
此模版屬于ROA風格的模版,編寫風格與REST風格稍有變化。是以簡單介紹ROA的編寫風格:
- 根據OSS的PutBucket的 文檔 可見。在此模版中的參數 x-oss-acl 在源OSS文檔中是屬于請求頭,是以放到本文的模版中,存在于Headers下。
- 此模版中的參數RegionId、BucketName是屬于公共參數是直接放到模版中的Parameters下。
- 此模版中的請求參數StorageClass與DataRedundancyType,在原文檔中是屬于請求元素,是以放到模版中是編寫到Body下。
附錄二:
編輯OOS模版時,與本文中的模版擁有一樣模版形式的有以下服務: