全部产品
Search
文档中心

Auto Scaling:Secara otomatis menambahkan atau menghapus alamat IP pribadi dari instance ECS ke/dari daftar putih IP kluster PolarDB

更新时间:Jul 02, 2025

Topik ini menjelaskan cara menggabungkan fitur panggilan balik siklus hidup Auto Scaling dengan template CloudOps Orchestration Service (OOS) untuk menempatkan instance Elastic Compute Service (ECS) dalam status Pending, serta mengotomatiskan tugas penambahan atau penghapusan alamat IP instance ke/dari daftar putih IP kluster PolarDB.

Prasyarat

  • Grup penskalaan telah dibuat dan berada dalam status Diaktifkan.

  • Kluster PolarDB telah dibuat.

  • Peran RAM telah dibuat untuk OOS. Entitas tepercaya dari peran RAM harus Alibaba Cloud Service, layanan tepercaya harus CloudOps Orchestration Service, dan peran RAM harus memiliki izin untuk melakukan operasi pada template OOS. Untuk informasi lebih lanjut, lihat Buat Peran RAM untuk OOS dan Berikan Izin.

    Catatan

    Dalam topik ini, peran RAM OOSServiceRole digunakan sebagai contoh. Anda juga dapat menggunakan peran lainnya.

Latar Belakang

Auto Scaling saat ini hanya mendukung integrasi dengan Server Load Balancer (SLB) dan ApsaraDB RDS. Jika Anda menyimpan data aplikasi di kluster PolarDB, memperbarui daftar putih alamat IP kluster secara manual dengan alamat IP pribadi instance ECS mengarah pada proses operasi yang tidak efisien. Untuk meningkatkan efisiensi operasional, Anda dapat mengotomatiskan pembaruan daftar putih alamat IP kluster PolarDB dengan menggabungkan fitur panggilan balik siklus hidup Auto Scaling dan template OOS.

Prosedur

Dalam contoh ini, template OOS publik bernama ACS-ESS-LifeCycleModifyPolarDBIPWhitelist digunakan untuk menunjukkan cara mengotomatiskan penambahan alamat IP instance ke daftar putih alamat IP kluster PolarDB selama acara peningkatan skala. Lakukan langkah-langkah berikut:

Catatan

Jika Anda ingin mengotomatiskan penghapusan alamat IP instance dari daftar putih alamat IP kluster PolarDB, Anda dapat membuat panggilan balik siklus hidup untuk tujuan penurunan skala dan menerapkan panggilan balik siklus hidup selama acara penurunan skala.

Langkah 1: Berikan izin peran RAM pada OOS

Anda harus memiliki izin untuk mengeksekusi template OOS. Template ACS-ESS-LifeCycleModifyPolarDBIPWhitelist mencakup sumber daya ECS, Auto Scaling, dan PolarDB yang diperlukan untuk melaksanakan tugas O&M.

  1. Masuk ke Konsol RAM.

  2. Buat kebijakan.

    1. Di panel navigasi kiri, pilih Permissions > Policies.

    2. Di halaman Kebijakan, klik Create Policy.

    3. Di halaman Create Policy, klik tab JSON, konfigurasikan parameter berdasarkan kebutuhan bisnis Anda, lalu klik OK.

      Tabel berikut menjelaskan pengaturan yang digunakan dalam contoh ini. Parameter apa pun yang tidak tercakup dalam tabel berikut akan menggunakan pengaturan default mereka.

      Parameter

      Deskripsi

      Name

      Masukkan ESSHookPolicyForPolarDBWhitelist.

      Policy document

      Masukkan konten berikut:

      {
          "Version": "1",
          "Statement": [
              {
                  "Action": [
                      "ecs:DescribeInstances"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              },
              {
                  "Action": [
                      "polardb:DescribeDBClusterAccessWhitelist",
                      "polardb:ModifyDBClusterAccessWhitelist"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              },
              {
                  "Action": [
                      "ess:CompleteLifecycleAction"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              }
          ]
      }
  3. Lampirkan kebijakan ke peran RAM OOSServiceRole.

    1. Di panel navigasi kiri, pilih Identities > Roles.

    2. Temukan peran RAM OOSServiceRole dan klik Grant Permission di kolom Actions.

      Tambahkan izin yang diperlukan untuk peran RAM OOSServiceRole yang diasumsikan oleh OOS untuk menyelesaikan otorisasi.

    3. Di panel Grant Permission, konfigurasikan Ruang Lingkup Sumber Daya dan Kebijakan. Setelah Anda menyelesaikan konfigurasi, klik Grant permissions.

      Tabel berikut menjelaskan pengaturan yang digunakan dalam contoh ini. Parameter apa pun yang tidak tercakup dalam tabel berikut akan menggunakan pengaturan default mereka.

      Parameter

      Deskripsi

      Resource Scope

      Atur nilainya menjadi Account.

      Policy

      Pilih kebijakan kustom berikut: ESSHookPolicyForPolarDBWhitelist.

Langkah 2: Buat panggilan balik siklus hidup untuk tujuan peningkatan skala dan picu acara peningkatan skala

  1. Masuk ke Konsol Auto Scaling.

  2. Di panel navigasi kiri, klik Scaling Groups.

  3. Di bilah navigasi atas, pilih wilayah.

  4. Temukan grup peningkatan skala yang diinginkan dan gunakan salah satu metode berikut untuk membuka halaman detail grup peningkatan skala.

    • Klik ID grup peningkatan skala di kolom Scaling Group Name/ID.

    • Klik Details di kolom Actions.

  5. Buat panggilan balik siklus hidup.

    1. Di bagian atas halaman detail, klik tab Lifecycle Hook.

    2. Klik Create Lifecycle Hook.

    3. Konfigurasikan parameter berdasarkan kebutuhan bisnis Anda dan klik OK.

      Tabel berikut menjelaskan pengaturan yang digunakan dalam contoh ini. Parameter apa pun yang tidak tercakup dalam tabel berikut akan menggunakan pengaturan default mereka.

      Parameter

      Deskripsi

      Name

      Masukkan ESSHookForAddPolarDBWhitelist.

      Scaling Activity

      Pilih Scale-out Event.

      Timeout Period

      Konfigurasikan Periode Timeout berdasarkan kebutuhan bisnis Anda. Dalam contoh ini, atur nilainya menjadi 300. Unit: detik.

      Catatan

      Periode timeout adalah periode waktu selama Anda dapat melakukan operasi kustom pada instance. Jika periode timeout lebih pendek daripada periode waktu yang diperlukan untuk melakukan operasi kustom, operasi tersebut mungkin gagal. Kami sarankan Anda memperkirakan periode waktu yang diperlukan untuk melakukan operasi kustom pada instance dan mengonfigurasi Periode Timeout berdasarkan estimasi Anda.

      Default Execution Policy

      Pilih Continue.

      Send Notification When Lifecycle Hook Takes Effect

      Konfigurasikan parameter berikut untuk template:

      • Pilih OOS Template.

      • Pilih Public Templates.

      • Pilih ACS-ESS-LifeCycleModifyPolarDBIPWhitelist.

      Dalam template publik ACS-ESS-LifeCycleModifyPolarDBIPWhitelist, Anda juga harus mengonfigurasi parameter berikut:

      • dbClusterId: Masukkan ID kluster PolarDB.

      • modifyMode: Pilih Append. Nilai ini berlaku untuk acara penambahan skala selama Auto Scaling menambahkan alamat IP pribadi instance ECS Anda ke daftar putih alamat IP kluster PolarDB.

      • OOSAssumeRole: Pilih OOSServiceRole. Di Langkah 1, OOSServiceRole diberikan izin pada sumber daya ECS, Auto Scaling, dan PolarDB. OOS mendapatkan izin sebelumnya setelah mengasumsikan peran RAM.

  6. Picu acara penambahan skala.

    Dalam contoh ini, acara penambahan skala dipicu secara manual dengan mengeksekusi aturan peningkatan skala. Anda juga dapat memicu acara penambahan skala dengan menggunakan tugas terjadwal atau tugas yang dipicu oleh acara.

    Catatan

    Jika acara penskalaan dipicu ketika Anda secara manual mengeksekusi aturan peningkatan skala, panggilan balik siklus hidup berlaku. Namun, panggilan balik siklus hidup tidak berlaku ketika Anda secara manual menambahkan atau menghapus instance ECS ke/dari grup peningkatan skala.

    1. Di bagian atas halaman yang muncul, klik tab Scaling Rules and Event-triggered Tasks.

    2. Di tab Scaling Rules, klik Create Scaling Rule.

    3. Di kotak dialog Buat Aturan Peningkatan Skala, konfigurasikan parameter berdasarkan kebutuhan bisnis Anda dan klik OK.

      Tabel berikut menjelaskan pengaturan yang digunakan dalam contoh ini. Parameter apa pun yang tidak tercakup dalam tabel berikut akan menggunakan pengaturan default mereka.

      Parameter

      Deskripsi

      Rule Name

      Masukkan Add1.

      Rule Type

      Pilih Simple Scaling Rule.

      Operation

      Atur nilainya menjadi Tambah 1 Instance.

    4. Di halaman Aturan Peningkatan Skala, temukan aturan peningkatan skala Add1 dan klik Execute di kolom Actions.

    5. Di pesan Eksekusi Aturan Peningkatan Skala , klik OK.

    Setelah aturan peningkatan skala dieksekusi, Auto Scaling menambahkan satu instance ECS ke grup peningkatan skala. Namun, instance ECS masuk ke status Pending Add karena panggilan balik siklus hidup ESSHookForAddPolarDBWhitelist yang sedang berlaku. Selama periode timeout panggilan balik siklus hidup, Auto Scaling memberi tahu OOS untuk mengeksekusi tugas O&M yang didefinisikan dalam template publik ACS-ESS-LifeCycleModifyPolarDBIPWhitelist.

Langkah 3: Periksa daftar putih alamat IP kluster PolarDB

  1. Masuk ke Konsol PolarDB.

  2. Di panel navigasi kiri, klik Clusters.

  3. Cari kluster PolarDB yang diinginkan dan klik ID di kolom Cluster ID/Name.

  4. Di panel navigasi kiri, pilih Settings and Management > Cluster Whitelists.

    • Jika alamat IP pribadi instance ECS ditambahkan ke daftar putih alamat IP kluster PolarDB, template publik ACS-ESS-LifeCycleModifyPolarDBIPWhitelist berlaku.

    • Jika instance ECS dibuat tetapi alamat IP pribadinya tidak ditambahkan ke daftar putih alamat IP kluster PolarDB, buka konsol OOS untuk melihat eksekusi tugas O&M. Untuk informasi lebih lanjut, lihat Langkah 4: (Opsional) Lihat Eksekusi OOS.

Langkah 4: (Opsional) Lihat eksekusi OOS

  1. Masuk ke Konsol OOS.

  2. Di panel navigasi kiri, pilih Automated Task > Task Execution Management.

  3. Temukan tugas eksekusi berdasarkan waktu dan klik Details di kolom Actions.

  4. Di halaman detail eksekusi yang muncul, lihat informasi terkait.

    Sebagai contoh, di bagian Basic Information, Anda dapat melihat ID eksekusi dan status. Di bagian Execution Steps and Results, Anda dapat mengklik node tugas untuk melihat detail eksekusi. Untuk informasi lebih lanjut, lihat Lihat Detail Eksekusi.

    Catatan

    Jika eksekusi gagal, pesan kesalahan akan ditampilkan di halaman detail eksekusi.

FAQ

Jika Anda gagal mengeksekusi tugas O&M, lakukan pemecahan masalah berdasarkan pesan kesalahan dalam hasil eksekusi. Untuk informasi lebih lanjut, lihat FAQ.

Tabel berikut menjelaskan pesan kesalahan umum.

Pesan Kesalahan

Penyebab

Solusi

Forbidden.Unauthorized message: Otorisasi yang diperlukan untuk tindakan yang ditentukan tidak disediakan.

Anda belum mengotorisasi Auto Scaling untuk melakukan tindakan saat ini.

Periksa apakah peran RAM OOSServiceRole memiliki izin yang diperlukan.

Forbidden.RAM message: Pengguna tidak berwenang untuk mengoperasikan sumber daya yang ditentukan, atau API ini tidak mendukung RAM.

Pengguna RAM atau peran RAM tidak memiliki izin untuk mengoperasikan sumber daya terkait.

Periksa apakah peran RAM OOSServiceRole memiliki izin yang diperlukan. Sebagai contoh, Anda dapat memberikan izin OOS ke peran RAM. Sebelum OOS dapat mengelola sumber daya yang dideklarasikan dalam template OOS, Anda harus memberikan izin yang diperlukan kepada peran RAM.

LifecycleHookIdAndLifecycleActionToken.Invalid message: lifecycleActionToken dan lifecycleActionId yang Anda tentukan tidak cocok dengan tindakan siklus hidup yang sedang berlangsung.

Tindakan panggilan balik siklus hidup yang sedang berlangsung telah berakhir atau dihentikan.

Evaluasi periode timeout panggilan balik siklus hidup untuk memastikan bahwa tugas O&M yang ditentukan dalam template OOS dapat selesai dalam batas waktu yang dialokasikan.