All Products
Search
Document Center

Auto Scaling:Gunakan Alibaba Cloud CLI untuk menjalankan tugas pembaruan bergulir

Last Updated:Jul 02, 2025

Antarmuka Baris Perintah (CLI) Alibaba Cloud adalah alat manajemen berbasis OpenAPI Alibaba Cloud. Anda dapat menggunakannya untuk memanggil API Alibaba Cloud, mengelola layanan secara fleksibel, dan melakukan penskalaan. Panduan ini menjelaskan cara menggunakan Alibaba Cloud CLI untuk menjalankan tugas pembaruan bergulir.

Prasyarat

  • Alibaba Cloud CLI telah terpasang. Untuk informasi lebih lanjut, lihat Apa itu Alibaba Cloud CLI?

  • Grup penskalaan telah dibuat dan instance Elastic Compute Service (ECS) telah ditambahkan ke grup tersebut.

  • Sumber konfigurasi instance dari grup penskalaan adalah konfigurasi penskalaan. Prasyarat ini harus dipenuhi jika ingin memperbarui gambar instance ECS dalam grup penskalaan.

  • Paket Layanan Orkestrasi CloudOps (OOS) telah dibuat. Prasyarat ini diperlukan jika ingin menginstal paket OOS pada instance ECS di grup penskalaan. Untuk informasi lebih lanjut, lihat Kelola Ekstensi Kustom dalam Jumlah Besar.

Informasi latar belakang

Tugas pembaruan bergulir digunakan untuk memperbarui konfigurasi beberapa instance ECS secara bersamaan. Untuk informasi lebih lanjut, lihat Pembaruan Bergulir.

Prosedur

Langkah 1: Buat pengguna RAM dan berikan izin kepada pengguna RAM

  1. Masuk ke Konsol Resource Access Management (RAM).

  2. Buat pengguna RAM.

    Contoh ini menciptakan pengguna RAM bernama clitest. Untuk detail lebih lanjut, lihat Buat Pengguna RAM.

    1. Di panel navigasi sisi kiri, pilih Identities > Users.

    2. Di halaman Pengguna, klik Create User.

    3. Di halaman Create User, konfigurasikan parameter sesuai petunjuk dan klik OK.

      Tabel berikut menjelaskan pengaturan parameter yang digunakan dalam contoh ini.

      Parameter

      Deskripsi

      Logon Name

      example@sample.com

      Display Name

      contoh

      Access Mode

      Dalam contoh ini, Using permanent AccessKey to access dipilih.

      AccessKey pair otomatis dibuat untuk pengguna RAM. Pengguna RAM dapat memanggil operasi API atau menggunakan SDK untuk mengakses sumber daya Alibaba Cloud.

    4. Di halaman User Information, klik Download CSV File.

      Catatan

      Rahasia AccessKey hanya ditampilkan saat Anda membuat pasangan AccessKey dan tidak dapat diperoleh nanti. Kami sarankan menyimpan rahasia AccessKey untuk penggunaan selanjutnya. Jika pasangan AccessKey bocor atau hilang, Anda harus membuat pasangan baru.

  3. Berikan izin kepada pengguna RAM untuk mengelola sumber daya.

    1. Di panel navigasi sisi kiri, pilih Identities > Users.

    2. Temukan pengguna clitest yang Anda buat dan klik Add Permissions di kolom Actions.

    3. Di panel Berikan Izin, pilih izin yang diperlukan untuk menjalankan tugas pembaruan bergulir dan klik Grant permissions.

      Tabel berikut menjelaskan pengaturan parameter yang digunakan dalam contoh ini.

      Parameter

      Deskripsi

      Resource Scope

      Atur nilainya menjadi Account.

      Principal

      Atur nilainya menjadi example@sample.com.

      Policy

      Pilih kebijakan sistem berikut:

      • AliyunECSFullAccess: memberikan izin untuk mengelola sumber daya ECS, seperti instance ECS.

      • AliyunESSFullAccess: memberikan izin untuk mengelola sumber daya Auto Scaling, seperti grup penskalaan.

      • AliyunOOSFullAccess: memberikan izin untuk mengelola sumber daya OOS, seperti eksekusi.

      • AliyunOSSFullAccess: memberikan izin untuk mengelola sumber daya Object Storage Service (OSS), seperti bucket.

Langkah 2: Konfigurasikan dan verifikasi Alibaba Cloud CLI

Untuk informasi tentang Alibaba Cloud CLI, lihat Apa itu Alibaba Cloud CLI?

  1. Buka Alibaba Cloud CLI di komputer lokal Anda.

  2. Konfigurasikan Alibaba Cloud CLI.

    1. Jalankan perintah berikut untuk membuka file konfigurasi:

      aliyun configure
    2. Masukkan ID AccessKey dan Rahasia AccessKey sesuai petunjuk.

      cli-config

  3. Jalankan perintah berikut untuk memeriksa apakah Alibaba Cloud CLI tersedia:

    aliyun ecs DescribeRegions

    Perintah ini digunakan untuk menanyakan wilayah tempat Alibaba Cloud CLI didukung. Jika informasi wilayah dikembalikan, perintah berhasil dijalankan. Gambar berikut menunjukkan contoh keluaran perintah.cli-example

Langkah 3: Gunakan Alibaba Cloud CLI untuk menjalankan tugas pembaruan bergulir

Dalam langkah ini, perintah sampel digunakan untuk menunjukkan cara memperbarui gambar, menjalankan skrip, dan menginstal paket OOS pada instance ECS dalam grup penskalaan.

  1. Jalankan perintah Alibaba Cloud CLI untuk menjalankan tugas pembaruan bergulir.

    Untuk informasi tentang parameter template OOS dalam kode, lihat Parameter Template OOS.

    • Kode sampel berikut memberikan contoh cara memperbarui gambar instance ECS dalam grup penskalaan ke Alibaba Cloud Linux 2.1903 LTS 64-bit:

      aliyun oos StartExecution --TemplateName ACS-ESS-RollingUpdateByReplaceSystemDiskInScalingGroup --Parameters "{
              \"invokeType\": \"invoke\",
              \"scalingGroupId\": \"asg-bp18p2yfxow2dloq****\",
              \"scalingConfigurationId\": \"asc-bp1bx8mzur534edp****\",
              \"imageId\": \"aliyun_2_1903_x64_20G_alibase_20200529.vhd\",
              \"sourceImageId\": \"centos_7_8_x64_20G_alibase_20200717.vhd\",
              \"OOSAssumeRole\": \"\",
              \"enterProcess\": [
                \"ScaleIn\",
                \"ScaleOut\",
                \"HealthCheck\",
                \"AlarmNotification\",
                \"ScheduledAction\"
              ],
              \"exitProcess\":  [
                \"ScaleIn\",
                \"ScaleOut\",
                \"HealthCheck\",
                \"AlarmNotification\",
                \"ScheduledAction\"
              ],
              \"batchNumber\": 2,
              \"batchPauseOption\": \"Automatic\"
            }"
    • Kode sampel berikut memberikan contoh cara menjalankan perintah shell df -h dan ifconfig pada instance ECS dalam grup penskalaan untuk melihat disk dan konfigurasi jaringan:

      aliyun oos StartExecution --TemplateName ACS-ESS-RollingUpdateByRunCommandInScalingGroup --Parameters "{
              \"invokeType\": \"invoke\",
              \"scalingGroupId\": \"asg-bp18p2yfxow2dloq****\",
              \"commandType\": \"RunShellScript\",
              \"invokeScript\": \"df -h\nifconfig\",
              \"rollbackScript\": \"df -h\nifconfig\",
              \"OOSAssumeRole\": \"\",
              \"exitProcess\": [
                \"ScaleIn\",
                \"ScaleOut\",
                \"HealthCheck\",
                \"AlarmNotification\",
                \"ScheduledAction\"
              ],
              \"enterProcess\": [
                \"ScaleIn\",
                \"ScaleOut\",
                \"HealthCheck\",
                \"AlarmNotification\",
                \"ScheduledAction\"
              ],
              \"batchNumber\": 2,
              \"batchPauseOption\": \"Automatic\"
            }"
    • Kode sampel berikut memberikan contoh cara menginstal paket perangkat lunak WordPress yang dibuat dalam template OOS pada instance ECS dalam grup penskalaan:

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

    Saat menjalankan perintah CLI untuk menjalankan tugas pembaruan bergulir, eksekusi otomatis dibuat di OOS. Anda dapat menemukan eksekusi yang diinginkan berdasarkan ID eksekusi yang dikembalikan dan melihat detail seperti hasil dan keluaran. Contoh berikut menunjukkan cara mendapatkan ID eksekusi dan melihat detail:

    1. Temukan ID eksekusi tugas pembaruan bergulir dalam keluaran perintah.

      Gambar berikut menunjukkan contoh ID eksekusi.exec-id

    2. Jalankan perintah Alibaba Cloud CLI berikut untuk melihat detail eksekusi:

      aliyun oos ListExecutions --ExecutionId exec-40e2e17ef7e04****

      Gambar berikut menunjukkan detail eksekusi sampel.exec-outputs

Jalankan tugas rollback untuk menangani pengecualian dalam tugas pembaruan bergulir

Jika pengecualian terjadi selama tugas pembaruan bergulir atau jika Anda ingin menggunakan konfigurasi sebelumnya setelah tugas pembaruan bergulir dijalankan, Anda dapat menjalankan tugas rollback untuk mengembalikan konfigurasi instance ECS. Dalam bagian ini, perintah sampel digunakan untuk menunjukkan cara melakukan rollback tugas pembaruan bergulir.

  1. Temukan ID eksekusi tugas pembaruan bergulir dalam keluaran perintah.

    Gambar berikut menunjukkan contoh ID eksekusi.exec-id

  2. Jalankan perintah Alibaba Cloud CLI untuk menjalankan tugas rollback.

    Untuk informasi tentang parameter template OOS dalam kode, lihat Parameter Template OOS.

    Catatan

    Saat menjalankan tugas rollback, OOS secara otomatis menemukan instance ECS yang perlu di-rollback berdasarkan tugas pembaruan bergulir dan menangguhkan atau melanjutkan proses penskalaan grup penskalaan. Oleh karena itu, Anda mungkin tidak perlu mengonfigurasi beberapa parameter.

    • Kode sampel berikut memberikan contoh cara rollback gambar instance ECS dalam grup penskalaan ke CentOS 7.8 64-bit:

      aliyun oos StartExecution --TemplateName ACS-ESS-RollingUpdateByReplaceSystemDiskInScalingGroup --Parameters "{
              \"invokeType\": \"rollback\",
              \"scalingGroupId\": \"asg-bp18p2yfxow2dloq****\",
              \"scalingConfigurationId\": \"asc-bp1bx8mzur534edp****\",
              \"sourceImageId\": \"centos_7_8_x64_20G_alibase_20200717.vhd\",
              \"sourceExecutionId\": \"exec-83dba59be77d430****\",
              \"OOSAssumeRole\": \"\",
              \"batchNumber\": 2,
              \"batchPauseOption\": \"Automatic\"
            }"
    • Kode sampel berikut memberikan contoh cara menjalankan skrip rollback pada instance ECS: Perintah shell df -h dan ifconfig masih digunakan. Anda dapat mengubah skrip sesuai kebutuhan bisnis Anda.

      aliyun oos StartExecution --TemplateName ACS-ESS-RollingUpdateByRunCommandInScalingGroup --Parameters "{
              \"invokeType\": \"rollback\",
              \"commandType\": \"RunShellScript\",
              \"rollbackScript\": \"df -h\nifconfig\",
              \"scalingGroupId\": \"asg-bp18p2yfxow2dloq****\",
              \"sourceExecutionId\": \"exec-40e2e17ef7e046****\",
              \"OOSAssumeRole\": \"\",
              \"batchNumber\": 2,
              \"batchPauseOption\": \"Automatic\"
            }"
    • Kode sampel berikut memberikan contoh cara rollback paket perangkat lunak WordPress yang dibuat dalam template OOS pada instance ECS ke versi sebelumnya:

      aliyun oos StartExecution --TemplateName ACS-ESS-RollingUpdateByConfigureOOSPackage --Parameters "{
              \"invokeType\": \"rollback\",
              \"scalingGroupId\": \"asg-bp18p2yfxow2dloq****\",
              \"packageVersion\": \"v3\",
              \"packageName\": \"wordpress\",
              \"sourceExecutionId\": \"exec-f4e61f2f21fe490****\",
              \"OOSAssumeRole\": \"\",
              \"batchNumber\": 2,
              \"batchPauseOption\": \"Automatic\"
            }"
  3. Lihat detail eksekusi.

    Saat menjalankan perintah CLI untuk menjalankan tugas rollback, eksekusi otomatis dibuat di OOS. Anda juga dapat menggunakan metode di Langkah 3 untuk melihat detail eksekusi, seperti hasil dan keluaran.

Parameter template OOS

Tabel berikut menjelaskan parameter template publik OOS yang digunakan dalam contoh-contoh sebelumnya.

Tabel 1. Parameter dalam template ACS-ESS-RollingUpdateByReplaceSystemDiskInScalingGroup

Parameter

Deskripsi

invokeType

Jenis tugas. Nilai valid:

  • invoke: tugas pembaruan bergulir.

  • rollback: tugas rollback.

scalingGroupId

ID grup penskalaan tempat Anda ingin menjalankan tugas.

scalingConfigurationId

ID konfigurasi penskalaan aktif dalam grup penskalaan.

imageId

ID gambar yang ingin Anda ganti dengan gambar saat ini.

sourceImageId

ID gambar yang ingin Anda gunakan untuk tugas rollback.

OOSAssumeRole

Peran RAM yang ingin Anda gunakan untuk menjalankan tugas. Nilai default: OOSServiceRole.

enterProcess

Proses penskalaan yang ingin Anda tangguhkan sebelum tugas dijalankan.

exitProcess

Proses penskalaan yang ingin Anda lanjutkan ketika tugas selesai.

batchNumber

Jumlah batch ke dalam mana instance ECS dalam grup penskalaan dibagi untuk eksekusi tugas. Setiap batch berisi setidaknya satu instance ECS.

batchPauseOption

Menentukan apakah dan bagaimana menangguhkan tugas. Nilai valid:

  • Otomatis: Tugas dijalankan tanpa gangguan.

  • FirstBatchPause: Tugas ditangguhkan ketika eksekusi batch pertama selesai.

  • EveryBatchPause: Tugas ditangguhkan ketika setiap eksekusi batch selesai.

sourceExecutionId

ID eksekusi tugas pembaruan bergulir sumber saat tugas rollback dijalankan.

Catatan

Anda dapat masuk ke konsol OOS untuk melihat lebih banyak parameter. Misalnya, untuk melihat parameter yang didukung di wilayah China (Hangzhou), lihat ACS-ESS-RollingUpdateByReplaceSystemDiskInScalingGroup.

Tabel 2. Parameter dalam template ACS-ESS-RollingUpdateByRunCommandInScalingGroup

Parameter

Deskripsi

invokeType

Jenis tugas. Nilai valid:

  • invoke: tugas pembaruan bergulir.

  • rollback: tugas rollback.

scalingGroupId

ID grup penskalaan tempat Anda ingin menjalankan tugas.

commandType

Jenis skrip yang ingin Anda jalankan. Nilai RunShellScript menentukan skrip shell.

invokeScript

Skrip yang ingin Anda jalankan pada instance ECS selama tugas pembaruan bergulir.

rollbackScript

Skrip yang ingin Anda jalankan pada instance ECS selama tugas rollback.

OOSAssumeRole

Peran RAM yang ingin Anda gunakan untuk menjalankan tugas. Nilai default: OOSServiceRole.

enterProcess

Proses penskalaan yang ingin Anda tangguhkan sebelum tugas dijalankan.

exitProcess

Proses penskalaan yang ingin Anda lanjutkan ketika tugas selesai.

batchNumber

Jumlah batch ke dalam mana instance ECS dalam grup penskalaan dibagi untuk eksekusi tugas. Setiap batch berisi setidaknya satu instance ECS.

batchPauseOption

Menentukan apakah dan bagaimana menangguhkan tugas. Nilai valid:

  • Otomatis: Tugas dijalankan tanpa gangguan.

  • FirstBatchPause: Tugas ditangguhkan ketika eksekusi batch pertama selesai.

  • EveryBatchPause: Tugas ditangguhkan ketika setiap eksekusi batch selesai.

sourceExecutionId

ID eksekusi tugas pembaruan bergulir sumber saat tugas rollback dijalankan.

Catatan

Anda dapat masuk ke konsol OOS untuk melihat lebih banyak parameter. Misalnya, untuk melihat parameter yang didukung di wilayah China (Hangzhou), lihat ACS-ESS-RollingUpdateByRunCommandInScalingGroup.

Tabel 3. Parameter dalam template ACS-ESS-RollingUpdateByConfigureOOSPackage

Parameter

Deskripsi

invokeType

Jenis tugas. Nilai valid:

  • invoke: tugas pembaruan bergulir.

  • rollback: tugas rollback.

scalingGroupId

ID grup penskalaan tempat Anda ingin menjalankan tugas.

packageName

Nama paket perangkat lunak.

packageVersion

Versi paket perangkat lunak.

action

Mode di mana Anda ingin mengonfigurasi paket perangkat lunak. Nilai valid:

  • install

  • uninstall

Nilai default: install.

OOSAssumeRole

Peran RAM yang ingin Anda gunakan untuk menjalankan tugas. Nilai default: OOSServiceRole.

enterProcess

Proses penskalaan yang ingin Anda tangguhkan sebelum tugas dijalankan.

exitProcess

Proses penskalaan yang ingin Anda lanjutkan ketika tugas selesai.

batchNumber

Jumlah batch ke dalam mana instance ECS dalam grup penskalaan dibagi untuk eksekusi tugas. Setiap batch berisi setidaknya satu instance ECS.

batchPauseOption

Menentukan apakah dan bagaimana menangguhkan tugas. Nilai valid:

  • Otomatis: Tugas dijalankan tanpa gangguan.

  • FirstBatchPause: Tugas ditangguhkan ketika eksekusi batch pertama selesai.

  • EveryBatchPause: Tugas ditangguhkan ketika setiap eksekusi batch selesai.

sourceExecutionId

ID eksekusi tugas pembaruan bergulir sumber saat tugas rollback dijalankan.

Catatan

Anda dapat masuk ke konsol OOS untuk melihat lebih banyak parameter. Misalnya, untuk melihat parameter yang didukung di wilayah China (Hangzhou), lihat ACS-ESS-RollingUpdateByConfigureOOSPackage.