雲計算

通過阿里雲CLI執行ESS滾動升級

安裝並配置阿里雲CLI

本文以Mac-os為例,其他系統安裝可參考阿里雲CLI

首先為阿里雲CLI創建一個RAM用戶來獲取AK,詳細操作請參考創建RAM用戶

安裝阿里雲CLI。

brew install aliyun-cli

配置CLI。

aliyun configure

驗證CLI可用,若可用,可在終端看到輸出當前支持的多個地域。

aliyun ecs DescribeRegions

通過CLI執行滾動升級
需模板名稱和參數。

  1. 通過更新鏡像滾動升級。
    命令如下:
aliyun oos StartExecution --TemplateName ACS-ESS-RollingUpdateByReplaceSystemDiskInScalingGroup --Parameters '{
                "invokeType": "invoke",
                "imageId": "centos_7_8_amd_x64_20G_alibase_20200806.vhd",
                "sourceImageId": "centos_8_2_x64_20G_alibase_20200717.vhd",
                "OOSAssumeRole": "",
                "exitProcess": [],
                "scalingConfigurationId": "asc-bp14e7lqyl66ca4rp4rb",
                "enterProcess": [
                    "ScaleIn",
                    "ScaleOut",
                    "HealthCheck",
                    "AlarmNotification",
                    "ScheduledAction"
                ],
                "scalingGroupId": "asg-bp1cjeuvlt1e1i1t",
                "batchNumber": 2,
                "batchPauseOption": "Automatic"
            }'
  1. 通過腳本執行滾動升級。
aliyun oos StartExecution --TemplateName ACS-ESS-RollingUpdateByRunCommandInScalingGroup --Parameters '{
                "invokeType": "invoke",
                "commandType": "RunShellScript",
                "OOSAssumeRole": "",
                "exitProcess": [],
                "invokeScript": "df -h\nifconfig",
                "rollbackScript": "df -h\nifconfig",
                "enterProcess": [
                    "ScaleIn",
                    "ScaleOut",
                    "HealthCheck",
                    "AlarmNotification",
                    "ScheduledAction"
                ],
                "scalingGroupId": "asg-bp1cjeuvlt1e1i1t",
                "batchNumber": 2,
                "batchPauseOption": "Automatic"
            }'

3.通過安裝OOS軟件包滾動升級。

aliyun oos StartExecution --TemplateName ACS-ESS-RollingUpdateByConfigureOOSPackage --Parameters '{
                "invokeType": "invoke",
                "OOSAssumeRole": "",
                "exitProcess": [],
                "action": "install",
                "enterProcess": [
                    "ScaleIn",
                    "ScaleOut",
                    "HealthCheck",
                    "AlarmNotification",
                    "ScheduledAction"
                ],
                "packageVersion": "v4",
                "packageName": "wordpress",
                "scalingGroupId": "asg-bp1cjeuvlt1e1i1t",
                "batchNumber": 2,
                "batchPauseOption": "Automatic"
            }'

Leave a Reply

Your email address will not be published. Required fields are marked *