Tüm Ürünler
Search
Belge Merkezi

Auto Scaling:Automatically manage ECS instances in a Tair whitelist

Son Güncelleme:Oct 14, 2026

Bu eğitimde, bir Auto Scaling yaşam döngüsü kancası kullanarak bir ECS örneğini bekletme moduna alma ve CloudOps Orchestration Service (OOS) şablonu aracılığıyla bu örneği bir Tair örneğinin izin listesine otomatik olarak ekleme veya listeden kaldırma işlemi açıklanmaktadır.

Önkoşullar

  • Bir ölçeklendirme grubu oluşturulmuş olmalı ve grup Etkin durumda bulunmalıdır.

  • Bir Tair örneği oluşturulmuş olmalıdır.

  • OOS için bir Resource Access Management (RAM) rolü oluşturulmuş olmalıdır. RAM rolünün güvenilir varlığı Alibaba Cloud Service, güvenilir hizmeti ise CloudOps Orchestration Service olmalı ve RAM rolünün OOS şablonundaki işlemleri gerçekleştirme izni bulunmalıdır. 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 tercih edilebilir.

Arka plan

Bir ölçeklendirme grubu Server Load Balancer (SLB) örnekleri ve ApsaraDB RDS örnekleriyle ilişkilendirilebilir ancak Tair örnekleriyle doğrudan ilişkilendirilemez. İş verilerinizi bir Tair örneğinde saklıyorsanız, ECS örneklerini Tair örneğinin izin listesine manuel olarak eklemek veya listeden kaldırmak verimsizdir. Yaşam döngüsü kancaları ve OOS şablonlarını kullanarak ECS örneklerinin Tair izin listesine otomatik olarak eklenmesini ve listeden kaldırılmasını sağlayabilirsiniz.

Yordam

Bu eğitimde, genel OOS şablonu ACS-ESS-LifeCycleModifyRedisIPWhitelist kullanılarak bir ECS örneğinin ölçek genişletme sırasında Tair örneği izin listesine nasıl ekleneceği gösterilmektedir.

Not

Ölçek daraltma sırasında bir ECS örneğini Tair izin listesinden kaldırmak için ölçek daraltma etkinliklerine yönelik bir yaşam döngüsü kancası oluşturun ve ardından bir ölçek daraltma işlemini tetikleyin.

1. Adım: OOS RAM rolüne izinler atayın

ACS-ESS-LifeCycleModifyRedisIPWhitelist OOS şablonunun çalıştırılması; ilgili Elastic Compute Service, Auto Scaling ve Tair (Redis OSS-compatible) kaynakları üzerinde işlem yapma izni gerektirir.

  1. RAM konsolu nda oturum açın.

  2. Bir izin ilkesi oluşturun.

    1. Sol gezinme bölmesinde Permissions > Policies seçeneğini belirleyin.

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

    3. Create Policy sayfasında JSON Editor sekmesine gidin, parametreleri yapılandırın ve OK düğmesini tıklayın.

      Aşağıdaki tabloda parametreler açıklanmıştır. Bahsedilmeyen parametreler için varsayılan değerleri kullanın.

      Parameter

      Description

      Name

      ESSHookPolicyForRedisWhitelist girin.

      Policy Document

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

      {
          "Version": "1",
          "Statement": [
              {
                  "Action": [
                      "ecs:DescribeInstances"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              },
              {
                  "Action": [
                      "kvstore:ModifySecurityIps"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              },
              {
                  "Action": [
                      "ess:CompleteLifecycleAction"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              }
          ]
      }
  3. İzin ilkesini OOSServiceRole RAM rolüne ekleyin.

    1. Sol gezinme bölmesinde Identities > Roles seçeneğini belirleyin.

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

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

    3. Grant Permission sayfasında yetkilendirme kapsamını ve izinleri yapılandırın, ardından OK düğmesini tıklayın.

      Aşağıdaki tabloda parametreler açıklanmıştır. Bahsedilmeyen parametreler için varsayılan değerleri kullanın.


      Parameter


      Description


      Resource Range


      Account seçeneğini belirleyin.


      Policies

      ESSHookPolicyForRedisWhitelist adlı özel ilkeyi ekleyin.

2. Adım: Ölçek genişletme kancası oluşturun ve tetikleyin

Yaşam döngüsü kancası oluştururken bildirim yöntemi olarak OOS Şablonu'nu seçin ve gerekli parametreleri yapılandırın. Bu sayede, ölçek genişletme tetiklendiğinde bir ECS örneği otomatik olarak Tair örneği izin listesine eklenir.

  1. Auto Scaling konsolu nda oturum açın.

  2. Soldaki gezinme bölmesinde Scaling Groups öğesini 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ğini tıklayın.

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

  5. Ölçek genişletme için 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ını yapılandırın ve OK düğmesini tıklayın.

      Aşağıdaki tabloda parametreler açıklanmıştır. Bahsedilmeyen parametreler için varsayılan değerleri kullanın.

      Parameter

      Description

      Name

      ESSHookForAddRedisWhitelist 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 eylemlerin gerçekleştirilmesi için ayrılan süredir. Bu süre çok kısa olursa eylemler başarısız olabilir. Özel eylemleriniz için gereken süreyi değerlendirin ve uygun bir zaman aşımı süresi ayarlayın.

      Send Notification When Lifecycle Hook Takes Effect

      Continue seçeneğini belirleyin.

      Default Execution Policy

      Şablonu aşağıdaki ayarlarla 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-LifeCycleModifyRedisIPWhitelist seçeneğini belirleyin.

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

      • RedisInstanceId: Tair örneğinizin kimliğini girin.

      • ModifyIPWhitelistMode: Append seçeneğini belirleyin. Bu seçenek, ölçek genişletmeye karşılık gelir ve ECS örneğini Tair örneği izin listesine ekler.

      • RAM role assumed by OOS: OOSServiceRole seçeneğini belirleyin. Yukarıdaki yordamda, OOSServiceRole RAM rolüne ECS, Auto Scaling ve Redis kaynaklarını yönetme izinleri eklenmiştir. OOS hizmeti, gerekli izinleri elde etmek için bu rolü üstlenir.

  6. Ölçek genişletmeyi tetikleyin.

    Bu eğitimde, ölçek genişletmeyi tetiklemek amacıyla bir ölçeklendirme kuralının manuel olarak nasıl çalıştırılacağı gösterilmektedir. Ölçek genişletmeyi tetiklemek için zamanlanmış görevleri veya olayla tetiklenen görevleri de kullanabilirsiniz.

    Not

    Yaşam döngüsü kancaları yalnızca bir ölçeklendirme kuralı ölçek genişletme veya ölçek daraltma işlemini tetiklediğinde etkin olur. Mevcut ECS örneklerini manuel olarak eklediğinizde veya kaldırdığınızda kancalar devreye girmez.

    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ı parametrelerini ayarlayın ve OK düğmesini tıklayın.

      Aşağıdaki tabloda parametreler açıklanmıştır. Bahsedilmeyen 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


      Değeri Add 1 instance olarak ayarlayın.

    4. Oluşturduğunuz Add1 ölçeklendirme kuralını bulun ve Actions sütununda Perform seçeneğini tıklayın.

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

    Ölçeklendirme kuralı yürütüldükten sonra bir ECS örneği otomatik olarak oluşturulur. ESSHookForAddRedisWhitelist yaşam döngüsü kancası daha sonra örneği bekletme moduna alır ve OOS hizmetini ACS-ESS-LifeCycleModifyRedisIPWhitelist şablonunda tanımlanan işlemleri yürütmek üzere bilgilendirir.

3. Adım: Tair örneği izin listesini görüntüleyin

  1. konsola giriş yaparak Tair (Redis OSS-compatible) hizmetine erişin.

  2. Sol gezinme bölmesinde Instance List öğesini tıklayın.

  3. Tair örneğinizi bulun ve Instance ID/Name sütununda örneğin kimliğini tıklayın.

  4. Sol gezinme bölmesinde Whitelist Settings öğesini tıklayın.

    • Yeni ECS örneğinin özel IP adresi Tair örneği izin listesinde görünüyorsa ACS-ESS-LifeCycleModifyRedisIPWhitelist şablonu başarıyla yürütülmüş demektir.

    • ECS örneği mevcut ancak özel IP adresi Tair izin listesinde yer almıyorsa OOS konsolunda OOS görevinin yürütme durumunu kontrol edin. Ayrıntılar için bkz. (İsteğe bağlı) 4. Adım: OOS yürütmesini denetleme.

(İsteğe bağlı) 4. Adım: OOS yürütmesini denetleyin

  1. OOS konsolu nda oturum açın.

  2. Sol gezinme bölmesinde Automated Task > Task Execution Management seçeneğini belirleyin.

  3. Zamana göre yürütme görevini bulun ve Actions sütununda Details seçeneğini 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ünü tıklayarak ayrıntılarını inceleyebilirsiniz. Daha fazla bilgi için bkz. Görev yürütme ayrıntılarını görüntüleme.

    Not

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

SSS

Bir O&M görevini yürütemezseniz yürütme sonucundaki hata iletisine dayanarak sorunu giderin. Daha fazla bilgi için bkz. SSS.

Aşağıdaki tabloda yaygın hata iletileri 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ştirmesi 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.


RAM kullanıcısı veya RAM rolü, ilgili kaynaklarda işlem yapma iznine 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, OOS şablonunda bildirilen kaynakları yönetebilmesi için RAM rolüne gerekli izinlerin verilmesini gerektirir.


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 sona ermiş veya durdurulmuş.


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.