Tüm Ürünler
Search
Belge Merkezi

Auto Scaling:Automatically add and remove ECS instances from an AnalyticDB cluster IP address whitelist

Son Güncelleme:Oct 14, 2026

Bu eğitimde, bir Auto Scaling yaşam döngüsü kancası kullanarak bir ECS örneğini bekleme durumuna nasıl alacağınız ve bir CloudOps Orchestration Service (OOS) şablonu aracılığıyla bu örneği bir AnalyticDB for MySQL kümesinin IP adresi izin listesine otomatik olarak nasıl ekleyip çıkaracağınız gösterilir.

Önkoşullar

  • Bir ölçeklendirme grubu oluşturun ve grubun Etkin durumda olduğundan emin olun.

  • Bir AnalyticDB for MySQL kümesi oluşturun.

  • OOS için bir Resource Access Management (RAM) rolü oluşturun. 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 yapmak 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ılır. Diğer rolleri de kullanabilirsiniz.

Arka Plan

Bir ölçeklendirme grubu, Server Load Balancer (SLB) örnekleri ve ApsaraDB RDS örnekleriyle ilişkilendirilebilir ancak AnalyticDB for MySQL kümeleriyle doğrudan ilişkilendirilemez. İş verileriniz bir AnalyticDB for MySQL kümesinde bulunuyorsa, ECS örneklerinin IP adresi izin listesini manuel olarak yönetmek verimsizdir. Bu süreci otomatikleştirmek için bir yaşam döngüsü kancası ve bir OOS şablonu kullanın.

Yordam

Bu eğitimde, bir ölçeklendirme-out (yatay genişletme) olayı sırasında bir ECS örneğini AnalyticDB for MySQL kümesinin IP adresi izin listesine eklemek için ACS-ESS-LifeCycleModifyAnalyticDBIPWhitelist genel OOS şablonunun nasıl kullanılacağı gösterilir. Aşağıdaki adımları uygulayın:

Not

Bir ölçeklendirme-in (yatay daraltma) olayı sırasında bir ECS örneğini AnalyticDB for MySQL kümesinin IP adresi izin listesinden otomatik olarak kaldırmak için ölçeklendirme-in olayına yönelik bir yaşam döngüsü kancası oluşturun ve ardından bir ölçeklendirme-in işlemi başlatın.

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

OOS şablonlarını çalıştırmak için gerekli izinlere sahip olmanız gerekir. ACS-ESS-LifeCycleModifyAnalyticDBIPWhitelist şablonu, ECS, Auto Scaling ve AnalyticDB for MySQL kaynaklarında işlem yapmak için izinler gerektirir.

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

  2. Bir ilke oluşturun.

    1. Sol gezinme bölmesinde Permissions > Policies seçeneğine tıklayın.

    2. Policies sayfasında Create Policy düğmesine tıklayın.

    3. Create Policy sayfasında JSON sekmesine tıklayın, parametreleri yapılandırın ve ardından OK düğmesine tıklayın.

      Aşağıdaki tabloda bu eğitimde kullanılan parametreler açıklanır. Diğer parametreler için varsayılan değerleri kullanın.

      Parameter

      Description

      Name

      ESSHookPolicyForAnalyticDBWhitelist girin.

      Policy Document

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

      {
          "Version": "1",
          "Statement": [
              {
                  "Action": [
                      "ecs:DescribeInstances"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              },
              {
                  "Action": [
                      "adb: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çeneğine tıklayın.

    2. OOSServiceRole RAM rolünü bulun ve Actions sütununda Grant Permission seçeneğine tıklayın.

      OOS'un yetkilendirmeyi tamamlaması için üstlendiği OOSServiceRole RAM rolüne gerekli izinleri ekleyin.

    3. Grant Permission sayfasında parametreleri yapılandırın ve ardından OK düğmesine tıklayın.

      Aşağıdaki tabloda bu eğitimde kullanılan parametreler açıklanır. Diğer parametreler için varsayılan değerleri kullanın.


      Parameter


      Description


      Authorized scope


      Alibaba Cloud Account seçeneğini belirleyin.


      Policy


      ESSHookPolicyForAnalyticDBWhitelist özel ilkesini seçin.

Adım 2: Ölçeklendirme-out yaşam döngüsü kancası oluşturma ve tetikleme

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

  2. Soldaki gezinme bölmesinde Scaling Groups seçeneğine tıklayın.

  3. Üst gezinme çubuğundan 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ğine tıklayın.

    • Actions sütununda Details seçeneğine tıklayın.

  5. Ölçeklendirme-out olayı için bir yaşam döngüsü kancası oluşturun.

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

    2. Create Lifecycle Hook düğmesine tıklayın.

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

      Aşağıdaki tabloda bu eğitimde kullanılan parametreler açıklanır. Diğer parametreler için varsayılan değerleri kullanın.

      Parameter

      Description

      Name

      ESSHookForAddAnalyticDBWhitelist girin.

      Scaling Activity Type

      Scale-Out seçeneğini belirleyin.

      Timeout Period

      Uygun bir zaman aşımı süresi girin; örneğin, 300 saniye.

      Not

      Zaman aşımı süresi, özel eylemin çalışması için izin verilen süredir. Eylem için gereken süreyi değerlendirin ve başarısızlıkları önlemek için uygun bir zaman aşımı ayarlayın.

      Default Execution Policy

      Continue seçeneğini belirleyin.

      Send Notification When Lifecycle Hook Takes Effect

      Şablonu aşağıdaki gibi yapılandırın:

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

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

      • Genel Şablon: ACS-ESS-LifeCycleModifyAnalyticDBIPWhitelist seçeneğini belirleyin.

      ACS-ESS-LifeCycleModifyAnalyticDBIPWhitelist için yürütme parametrelerini aşağıdaki gibi yapılandırın:

      • dbClusterId: AnalyticDB for MySQL kümenizin kimliğini girin.

      • modifyMode: Append seçeneğini belirleyin. Bu seçenek bir ölçeklendirme-out olayı için geçerlidir ve ECS örneğini AnalyticDB for MySQL kümesinin IP adresi izin listesine ekler.

      • RAM role assumed by OOS: OOSServiceRole seçeneğini belirleyin. yordam bölümünde, OOSServiceRole RAM rolüne ECS, Auto Scaling ve AnalyticDB for PostgreSQL kaynaklarını yönetmek için izinler verilmiştir. OOS hizmeti, bu izinleri elde etmek için bu rolü üstlenir.

  6. Bir ölçeklendirme-out olayını tetikleyin.

    Bu eğitimde manuel olarak yürütülen bir ölçeklendirme kuralı örnek olarak kullanılır; ancak zamanlanmış veya olay tetiklemeli bir görevle de ölçeklendirme-out olayı tetikleyebilirsiniz.

    Not

    Ölçeklendirme kurallarını manuel olarak yürüttüğünüzde ölçeklendirme etkinlikleri tetiklenirse yaşam döngüsü kancaları devreye girer. Bir ölçeklendirme grubuna manuel olarak ECS örnekleri eklediğinizde veya gruptan çıkardığınızda yaşam döngüsü kancaları devreye girmez.

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

    2. Scaling Rules sekmesinde Create Scaling Rule düğmesine tıklayın.

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

      Aşağıdaki tabloda bu eğitimde kullanılan parametreler açıklanır. Diğer parametreler için varsayılan değerleri kullanın.


      Parameter


      Description


      Rule Name


      Add1 girin.


      Rule Type


      Simple Scaling Rule seçeneğini belirleyin.


      Operation


      Bu değeri Add 1 Instances olarak ayarlayın.

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

    5. OK düğmesine tıklayın.

    Ölçeklendirme kuralı yürütüldükten sonra bir ECS örneği otomatik olarak oluşturulur. Ölçeklendirme grubunda ESSHookForAddAnalyticDBWhitelist yaşam döngüsü kancası oluşturulduğu için örnek bekleme durumuna geçer. Ardından OOS'a ACS-ESS-LifeCycleModifyAnalyticDBIPWhitelist şablonunda tanımlanan işlemleri çalıştırması için bildirim gönderilir.

Adım 3: AnalyticDB for MySQL izin listesini kontrol etme

  1. AnalyticDB for MySQL konsolu üzerinde oturum açın.

  2. Soldaki gezinme bölmesinde Clusters seçeneğine tıklayın.

  3. Hedef kümeyi bulun ve Cluster ID/Description sütunundaki kimliğine tıklayın.

  4. Soldaki gezinme bölmesinde Data Security seçeneğine tıklayın.

    • Yeni ECS örneğinin özel IP adresi AnalyticDB for MySQL kümesinin IP adresi izin listesinde görünüyorsa ACS-ESS-LifeCycleModifyAnalyticDBIPWhitelist genel şablonu doğru çalışıyor demektir.

    • Bir ECS örneği oluşturulmuş ancak özel IP adresi IP adresi izin listesinde görünmüyorsa OOS konsolunda görevin yürütme durumunu kontrol edin. Daha fazla bilgi için bkz. (İsteğe Bağlı) Adım 4: OOS yürütme ayrıntılarını görüntüleme.

(İsteğe Bağlı) Adım 4: OOS yürütme ayrıntılarını görüntüleme

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

  2. Sol gezinme bölmesinde Automated Task > Task Execution Management seçeneğine tıklayın.

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

  4. Yürütme ayrıntıları sayfasında yürütme bilgilerini görüntüleyin.

    Örneğin, Basic Information bölümünde yürütme kimliğini ve durumunu görüntüleyebilirsiniz. Ayrıca Execution Result bölümündeki bir görev düğümüne tıklayarak ayrıntılarını görüntüleyebilirsiniz. Daha fazla bilgi için bkz. Yürütme 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 ilgili hata mesajı görüntülenir.

SSS

Bir O&M görevini yürütmekte başarısız olursanız sorunu yürütme sonucundaki hata mesajına göre giderin. Daha fazla bilgi için bkz. SSS.

Aşağıdaki tabloda yaygın hata mesajları açıklanı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ştirmek için yetki 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.


Kullanıcı veya RAM rolü, ilgili kaynaklarda işlem yapmak için gerekli izinlere sahip değil.


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 önce 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 O&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.