批量修改ECS實例的計費方式
背景
在一些場景下,根據(jù)實例的使用需求變化需要將包年包月轉(zhuǎn)按量付費或者按量付費轉(zhuǎn)包年包月。針對批量實例的場景,一臺一臺手動操作不僅效率低下還容易出錯。本文將介紹通過系統(tǒng)運維管理執(zhí)行的方式批量修改ECS實例的計費方式。ECS實例的計費方式主要有兩種,包年包月和按量付費。
前提條件
包年包月轉(zhuǎn)按量付費的前提條件,參見包年包月轉(zhuǎn)按量付費。
按量付費轉(zhuǎn)包年包月的前提條件,參見按量付費轉(zhuǎn)包年包月。
操作步驟
登錄系統(tǒng)運維管理管理控制臺。
單擊公共模板。
選擇批量修改實例的計費方式,對其單擊創(chuàng)建執(zhí)行。
單擊下一步,設置參數(shù)。
輸入以下的參數(shù):
instanceChargeType:實例需要修改的目標計費方式
period:(按量計費轉(zhuǎn)包年包月時必填) 續(xù)費時長。PeriodUnit=Week時,Period取值:1~4,PeriodUnit=Month時,Period取值:1~12,24, 36, 48, 60。
periodUnit:(按量計費轉(zhuǎn)包年包月時必填) 續(xù)費時長的時間單位
includeDataDisks:(按量計費轉(zhuǎn)包年包月時必填) 是否將實例掛載的所有按量付費數(shù)據(jù)盤一起轉(zhuǎn)換為包年包月數(shù)據(jù)盤
networkChargeType:網(wǎng)絡需要修改的目標計費方式
regionId:地域ID
targets:目標實例
rateControl:(選填) 任務執(zhí)行的并發(fā)比率
OOSAssumeRole:(選填) OOS扮演的RAM角色
單擊下一步:確認,單擊確認風險并執(zhí)行。
在執(zhí)行管理中可查看剛剛創(chuàng)建的執(zhí)行,若創(chuàng)建執(zhí)行成功,且執(zhí)行狀態(tài)處于運行中,則表示修改ECS實例的計費方式正在進行中。
當執(zhí)行狀態(tài)轉(zhuǎn)換為成功時,則表示修改ECS實例的計費方式成功。可以在ECS實例頁面查看修改后的計費方式。
如需更多了解修改ECS實例的計費方式過程,當創(chuàng)建執(zhí)行成功后,您可單擊該執(zhí)行的詳情,查看執(zhí)行日志,實時了解執(zhí)行的進度和狀態(tài)。
附錄
公共模板 ACS-ECS-BulkyModifyInstanceChargeType
FormatVersion: OOS-2019-06-01
Description:
en: Bulky modify instance charge type
zh-cn: 批量修改實例的計費方式
name-en: ACS-ECS-BulkyModifyInstanceChargeType
name-zh-cn: 批量修改實例的計費方式
categories:
- instance_manage
Parameters:
regionId:
Type: String
Label:
en: RegionId
zh-cn: 地域ID
AssociationProperty: RegionId
Default: '{{ ACS::RegionId }}'
targets:
Type: Json
Label:
en: TargetInstance
zh-cn: 目標實例
AssociationProperty: Targets
AssociationPropertyMetadata:
ResourceType: ALIYUN::ECS::Instance
RegionId: regionId
instanceChargeType:
Label:
en: InstanceChargeType
zh-cn: 實例需要修改的目標計費方式
Type: String
AllowedValues:
- PostPaid
- PrePaid
Default: PostPaid
periodUnit:
Label:
en: PeriodUnit
zh-cn: 續(xù)費時長的時間單位
Type: String
AllowedValues:
- Week
- Month
Default: Month
AssociationPropertyMetadata:
Visible:
Condition:
Fn::Not:
Fn::Equals:
- ${instanceChargeType}
- PostPaid
period:
Description:
en: The period of the instance
zh-cn: PeriodUnit=Week時,Period取值:1~4,PeriodUnit=Month時,Period取值:1~12,24, 36, 48, 60
Label:
en: Period
zh-cn: 續(xù)費時長
Type: Number
Default: 1
AssociationPropertyMetadata:
Visible:
Condition:
Fn::Not:
Fn::Equals:
- ${instanceChargeType}
- PostPaid
includeDataDisks:
Description:
en: Specifies whether to change the billing method of all data disks attached to the instance from pay-as-you-go to subscription
zh-cn: 是否將實例掛載的所有按量付費數(shù)據(jù)盤一起轉(zhuǎn)換為包年包月數(shù)據(jù)盤
Label:
en: IncludeDataDisks
zh-cn: 是否轉(zhuǎn)換數(shù)據(jù)盤
Type: Boolean
Default: false
AssociationPropertyMetadata:
Visible:
Condition:
Fn::Not:
Fn::Equals:
- ${instanceChargeType}
- PostPaid
networkChargeType:
Label:
en: NetworkChargeType
zh-cn: 網(wǎng)絡需要修改的目標計費方式
Type: String
AllowedValues:
- PayByBandwidth
- PayByTraffic
- ''
Default: PayByTraffic
rateControl:
Label:
en: RateControl
zh-cn: 任務執(zhí)行的并發(fā)比率
Type: Json
AssociationProperty: RateControl
Default:
Mode: Concurrency
MaxErrors: 0
Concurrency: 10
OOSAssumeRole:
Label:
en: OOSAssumeRole
zh-cn: OOS扮演的RAM角色
Type: String
Default: OOSServiceRole
RamRole: '{{ OOSAssumeRole }}'
Tasks:
- Name: getInstance
Description:
en: Views the ECS instances
zh-cn: 獲取ECS實例
Action: ACS::SelectTargets
Properties:
ResourceType: ALIYUN::ECS::Instance
RegionId: '{{ regionId }}'
Filters:
- '{{ targets }}'
Outputs:
instanceIds:
Type: List
ValueSelector: Instances.Instance[].InstanceId
- Name: modifyInstanceChargeType
Description:
en: Modify instance charge type
zh-cn: 修改實例計費方式
Action: ACS::ECS::ModifyInstanceChargeType
Properties:
regionId: '{{ regionId }}'
instanceId: '{{ ACS::TaskLoopItem }}'
instanceChargeType: '{{ instanceChargeType }}'
networkChargeType: '{{ networkChargeType }}'
period: '{{ period }}'
periodUnit: '{{ periodUnit }}'
includeDataDisks: '{{ includeDataDisks }}'
Loop:
RateControl: '{{ rateControl }}'
Items: '{{ getInstance.instanceIds }}'
Metadata:
ALIYUN::OOS::Interface:
ParameterGroups:
- Parameters:
- instanceChargeType
- period
- periodUnit
- includeDataDisks
- networkChargeType
Label:
default:
zh-cn: 計費方式參數(shù)選擇
en: Choose the parameter of instnace charge type
- Parameters:
- regionId
- target
Label:
default:
zh-cn: 選擇實例
en: Select ECS Instances
- Parameters:
- rateControl
- OOSAssumeRole
Label:
default:
zh-cn: 高級選項
en: Control Options