Tüm Ürünler
Search
Belge Merkezi

Auto Scaling:Automatically add and remove ECS instances from a PolarDB cluster whitelist

Son Güncelleme:Oct 14, 2026

Bu konu, Auto Scaling'in yaşam döngüsü kancası özelliği ile bir CloudOps Orchestration Service (OOS) şablonunun nasıl birleştirileceğini açıklar. Bu yöntemle Elastic Compute Service (ECS) örnekleri önce Bekliyor durumuna alınır; ardından örnek IP adreslerinin PolarDB kümelerinin IP adresi izin listelerine eklenmesi veya bu listelerden kaldırılması işlemi otomatikleştirilir.

Ön koşullar

  • Bir ölçeklendirme grubu oluşturulmuş ve Etkin durumdadır.

  • Bir PolarDB kümesi oluşturulmuştur.

  • OOS için bir Resource Access Management (RAM) rolü oluşturulmuştur. RAM rolünün güvenilir varlığı Alibaba Cloud Service olmalı, güvenilir hizmet CloudOps Orchestration Service olarak ayarlanmalı ve RAM rolünün OOS şablonunda işlem gerçekleştirmek için gerekli izinlere sahip olması gerekir. Daha fazla bilgi için bkz. OOS için RAM rolü oluşturma ve izin verme.

    Not

    Bu konuda örnek olarak OOSServiceRole RAM rolü kullanılmıştır. Farklı roller de kullanabilirsiniz.

Arka plan

Auto Scaling şu anda yalnızca Server Load Balancer (SLB) ve ApsaraDB RDS ile entegrasyonu destekler. Uygulama verilerinizi bir PolarDB kümesinde depoluyorsanız, ECS örneklerinin özel IP adresleriyle küme IP adresi izin listesini manuel olarak güncellemek operasyonel süreçlerin verimsiz yürütülmesine neden olur. Operasyonel verimliliği artırmak için Auto Scaling'in yaşam döngüsü kancası özelliği ile bir OOS şablonunu birleştirerek PolarDB kümeniz için IP adresi izin listesi güncellemelerini otomatikleştirmeyi düşünebilirsiniz.

Yordam

Bu örnekte, bir ölçek genişletme olayı sırasında örnek IP adreslerinin PolarDB kümesinin IP adresi izin listesine otomatik olarak eklenmesini göstermek için ACS-ESS-LifeCycleModifyPolarDBIPWhitelist adlı genel bir OOS şablonu kullanılır. Aşağıdaki adımları uygulayın:

Not

Örnek IP adreslerini PolarDB kümenizin IP adresi izin listesinden otomatik olarak kaldırmak istiyorsanız, ölçek daraltma amaçlı bir yaşam döngüsü kancası oluşturabilir ve bu kancayı bir ölçek daraltma olayı sırasında uygulayabilirsiniz.

1. Adım: Bir RAM rolüne OOS izinleri verin

OOS şablonlarını çalıştırma iznine sahip olmanız gerekir. ACS-ESS-LifeCycleModifyPolarDBIPWhitelist şablonu, bakım ve onarım görevlerini gerçekleştirmek için gereken ECS, Auto Scaling ve PolarDB kaynaklarını içerir.

  1. RAM konsolu üzerinde oturum açın.

  2. Bir ilke oluşturun.

    1. Sol gezinme bölmesinde Permissions > Policies seçeneklerini seçin.

    2. Policies sayfasında Create Policy öğesini tıklayın.

    3. Create Policy sayfasında JSON sekmesini tıklayın, parametreleri yapılandırın ve OK öğesini tıklayın.

      Aşağıdaki tabloda bu örnekte kullanılan ayarlar açıklanmıştır. Aşağıdaki tabloda yer almayan parametreler varsayılan ayarlarına göre uygulanır.

      Parameter

      Description

      Name

      ESSHookPolicyForPolarDBWhitelist girin.

      Policy Document

      Aşağıdaki içeriği girin:

      {
          "Version": "1",
          "Statement": [
              {
                  "Action": [
                      "ecs:DescribeInstances"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              },
              {
                  "Action": [
                      "polardb:DescribeDBClusterAccessWhitelist",
                      "polardb:ModifyDBClusterAccessWhitelist"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              },
              {
                  "Action": [
                      "ess:CompleteLifecycleAction"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              }
          ]
      }
  3. İlkeyi OOSServiceRole RAM rolüne atayın.

    1. Sol gezinme bölmesinde Identities > Roles seçeneklerini seçin.

    2. OOSServiceRole RAM rolünü bulun ve Actions sütununda Grant Permission öğesini tıklayın.

      Yetkilendirmeyi tamamlamak için OOS tarafından üstlenilen OOSServiceRole RAM rolüne gerekli izinleri ekleyin.

    3. Grant Permission sayfasında kaynak kapsamını ve ilkeyi yapılandırın, ardından Grant Permission öğesini tıklayın.

      Aşağıdaki tabloda bu örnekte kullanılan ayarlar açıklanmıştır. Aşağıdaki tabloda yer almayan parametreler varsayılan ayarlarına göre uygulanır.


      Parameter


      Description


      Resource Scope


      Değeri Account olarak ayarlayın.


      Policies


      Aşağıdaki özel ilkeyi seçin: ESSHookPolicyForPolarDBWhitelist.

2. Adım: Ölçek genişletme amaçlı bir yaşam döngüsü kancası oluşturun ve bir ölçek genişletme olayını tetikleyin

  1. Auto Scaling konsolu üzerinde oturum açın.

  2. Soldaki gezinme bölmesinde Scaling Groups öğesini tıklayın.

  3. Üst gezinme çubuğunda bir bölge seçin.

  4. Yönetmek istediğiniz ölçeklendirme grubunu bulun ve ayrıntılar sayfasını aşağıdaki yollardan biriyle açın:

    • Scaling Group Name/ID sütununda ölçeklendirme grubunun kimliğini tıklayın.

    • Actions sütununda Details öğesini tıklayın.

  5. Bir yaşam döngüsü kancası oluşturun.

    1. Sayfanın üst kısmında Events and Lifecycle Hooks sekmesini tıklayın.

    2. Create Lifecycle Hook öğesini tıklayın.

    3. Yaşam döngüsü kancası parametrelerini yapılandırın ve OK öğesini tıklayın.

      Aşağıdaki tabloda bu örnekte kullanılan ayarlar açıklanmıştır. Aşağıdaki tabloda yer almayan parametreler varsayılan ayarlarına göre uygulanır.

      Parameter

      Description

      Name

      ESSHookForAddPolarDBWhitelist girin.

      Scaling Activity Type

      Scale-Out seçeneğini belirleyin.

      Timeout Period

      Zaman aşımı süresini iş gereksinimlerinize göre yapılandırın. Bu örnekte değer 300 olarak ayarlanır. Birim: saniye.

      Not

      Zaman aşımı süresi, örneklerde özel işlemler gerçekleştirebileceğiniz zaman aralığıdır. Zaman aşımı süresi özel işlemlerin tamamlanması için gereken süreden kısa olursa işlemler başarısız olabilir. Örneklerdeki özel işlemlerin tamamlanması için gereken süreyi tahmin etmenizi ve buna göre Zaman aşımı süresini yapılandırmanızı öneririz.

      Default Execution Policy

      Continue seçeneğini belirleyin.

      Send Notification When Lifecycle Hook Takes Effect

      Şablon için aşağıdaki parametreleri yapılandırın:

      • Bildirim Yöntemi: OOS Template seçeneğini belirleyin.

      • OOS Şablon Türü: Public Templates seçeneğini belirleyin.

      • ACS-ESS-LifeCycleModifyPolarDBIPWhitelist seçeneğini belirleyin.

      ACS-ESS-LifeCycleModifyPolarDBIPWhitelist genel şablonunda ayrıca aşağıdaki parametreleri yapılandırmanız gerekir:

      • dbClusterId: PolarDB kümesinin kimliğini girin.

      • modifyMode: Ekle seçeneğini belirleyin. Bu değer, Auto Scaling'in ECS örneklerinizin özel IP adreslerini PolarDB kümesinin IP adresi izin listesine eklediği ölçek genişletme olayı için geçerlidir.

      • OOSAssumeRole: OOSServiceRole seçeneğini belirleyin. 1. Adım'da OOSServiceRole'a ECS, Auto Scaling ve PolarDB kaynakları için izinler verilmiştir. OOS, RAM rolünü üstlendikten sonra söz konusu izinleri alır.

  6. Bir ölçek genişletme olayını tetikleyin.

    Bu örnekte bir ölçek genişletme olayı, bir ölçeklendirme kuralı çalıştırılarak manuel olarak tetiklenir. Ölçek genişletme olaylarını zamanlanmış veya olaya dayalı görevler kullanarak da tetikleyebilirsiniz.

    Not

    Ölçeklendirme kurallarını manuel olarak çalıştırdığınızda ölçeklendirme olayları tetiklenirse yaşam döngüsü kancaları etkinleşir. Ancak bir ölçeklendirme grubuna manuel olarak ECS örnekleri eklediğinizde veya gruptan kaldırdığınızda yaşam döngüsü kancaları etkinleşmez.

    1. Scaling Rules and Event-triggered Tasks sekmesini tıklayın.

    2. Scaling Rules sekmesinde Create Scaling Rule öğesini tıklayın.

    3. Ölçeklendirme kuralının özelliklerini ayarlayın ve OK öğesini tıklayın.

      Aşağıdaki tabloda bu örnekte kullanılan ayarlar açıklanmıştır. Aşağıdaki tabloda yer almayan parametreler varsayılan ayarlarına göre uygulanır.


      Parameter


      Description


      Rule Name


      Add1 girin.


      Rule Type


      Simple Scaling Rule seçeneğini belirleyin.


      Operation


      Değeri Add 1 Instances olarak ayarlayın.

    4. Ölçeklendirme kuralları listesinde oluşturduğunuz Add1 kuralını bulun ve Actions sütununda Recurrently öğesini tıklayın.

    5. OK öğesini tıklayın.

    Ölçeklendirme kuralı çalıştırıldıktan sonra Auto Scaling, ölçeklendirme grubuna bir ECS örneği ekler. Ancak yürürlükteki ESSHookForAddPolarDBWhitelist yaşam döngüsü kancası nedeniyle ECS örneği Bekleyen Ekleme durumuna girer. Yaşam döngüsü kancasının zaman aşımı süresi boyunca Auto Scaling, ACS-ESS-LifeCycleModifyPolarDBIPWhitelist genel şablonunda tanımlanan bakım ve onarım görevlerini yürütmesi için OOS'u bilgilendirir.

3. Adım: PolarDB kümesinin IP adresi izin listesini kontrol edin

  1. PolarDB konsolu üzerinde oturum açın.

  2. Soldaki gezinme bölmesinde Clusters öğesini tıklayın.

  3. PolarDB kümesini bulun ve Cluster ID/Name sütununda kümenin kimliğini tıklayın.

  4. Soldaki gezinme bölmesinde Settings and Management > Cluster Whitelist seçeneklerini seçin.

    • ECS örneğinin özel IP adresi PolarDB kümesinin IP adresi izin listesine eklendiyse ACS-ESS-LifeCycleModifyPolarDBIPWhitelist genel şablonu etkili olur.

    • ECS örneği oluşturulduysa ancak özel IP adresi PolarDB kümesinin IP adresi izin listesine eklenmediyse bakım ve onarım görevlerinin yürütülmesini görüntülemek için OOS konsoluna gidin. Daha fazla bilgi için bkz. 4. Adım: (İsteğe bağlı) OOS yürütmesini görüntüleme.

4. Adım: (İsteğe bağlı) OOS yürütmesini görüntüleyin

  1. OOS konsolu üzerinde oturum açın.

  2. Sol gezinme bölmesinde Automated Task > Task Execution Management seçeneklerini seçin.

  3. Yürütme görevini zamana göre bulun ve Actions sütununda Details öğesini tıklayın.

  4. Görüntülenen yürütme ayrıntıları sayfasında ilgili bilgileri görüntüleyin.

    Örneğin, Basic Information bölümünde yürütme kimliğini ve durumunu görüntüleyebilirsiniz. Execution Result bölümünde ayrıntılarını görüntülemek için bir görev düğümünü tıklayabilirsiniz. Daha fazla bilgi için bkz. Bir yürütmenin ayrıntılarını görüntüleme.

    Not

    Yürütme başarısız olursa yürütme ayrıntıları sayfasında bir hata iletisi görüntülenir.

SSS

Bir bakım ve onarım görevini çalıştıramazsanız sorunu yürütme sonucundaki hata iletisine göre giderin. Daha fazla bilgi için bkz. SSS.

Aşağıdaki tabloda yaygın hata iletisi açıklanmaktadır.


Error message


Cause


Solution


Forbidden.Unauthorized message: A required authorization for the specified action is not supplied.


Auto Scaling'e geçerli eylemi gerçekleştirme yetkisi vermediniz.


OOSServiceRole RAM rolünün gerekli izinlere sahip olup olmadığını kontrol edin.


Forbidden.RAM message: User not authorized to operate on the specified resource, or this API doesn't support RAM.


RAM kullanıcı veya RAM rolü, ilgili kaynakları işletme iznine sahip değildir.


OOSServiceRole RAM rolünün gerekli izinlere sahip olup olmadığını kontrol edin. Örneğin, RAM rolüne OOS izinleri verebilirsiniz. OOS'un OOS şablonunda bildirilen kaynakları yönetebilmesi için RAM rolüne gerekli izinleri vermeniz gerekir.


LifecycleHookIdAndLifecycleActionToken.Invalid message: The specified lifecycleActionToken and lifecycleActionId you provided does not match any in process lifecycle action.


Devam eden yaşam döngüsü kancası eylemi sonlandı veya durduruldu.


OOS şablonunda belirtilen bakım ve onarım görevlerinin ayrılan süre içinde tamamlanabilmesini sağlamak için yaşam döngüsü kancasının zaman aşımı süresini değerlendirin.