Tüm Ürünler
Search
Belge Merkezi

Auto Scaling:Use Alibaba Cloud CLI to execute rolling update tasks

Son Güncelleme:Sep 30, 2026

Alibaba Cloud CLI, Alibaba Cloud OpenAPI üzerine kurulu bir yönetim aracıdır ve Alibaba Cloud hizmetlerini yönetmek için OpenAPI işlemlerini çağırmanıza olanak tanır. Bu öğreticide, bir ölçeklendirme grubundaki ECS örneklerinde kademeli bir güncelleme görevi çalıştırmak için Alibaba Cloud CLI kullanırsınız. Ayrıca, güncelleme beklendiği gibi tamamlanmadığında kademeli güncelleme görevinin nasıl geri alınacağını da öğrenirsiniz.

Önkoşullar

  • Alibaba Cloud CLI yüklüdür. Daha fazla bilgi için bkz. Alibaba Cloud CLI belgeleri içindeki kurulum kılavuzu.

  • Bir ölçeklendirme grubu oluşturulmuş ve ölçeklendirme grubuna ECS örnekleri eklenmiştir.

  • (Yalnızca örnek görüntülerinin güncellenmesi durumunda geçerlidir) Ölçeklendirme grubunun örnek yapılandırma kaynağı bir ölçeklendirme yapılandırmasıdır.

  • (Yalnızca bir OOS paketi yüklenmesi durumunda geçerlidir) ECS örneklerine yüklemek istediğiniz OOS paketleri önceden OOS'te oluşturulmuştur. Daha fazla bilgi için bkz. Özel uzantıları toplu iş olarak yönetin.

Arka plan bilgileri

Kademeli güncelleme, birden çok ECS örneğinin yapılandırmalarını toplu işler halinde günceller. Alibaba Cloud CLI'den bir kademeli güncelleme görevi çalıştırdığınızda, görev bir Operation Orchestration Service (OOS) genel şablonunun yürütülmesi olarak gerçekleşir. Daha fazla bilgi için bkz. Kademeli güncellemeler.

Senaryolar

Bu öğreticide üç ardışık aşama ve yalnızca gerektiğinde çalıştıracağınız bir koşullu geri alma dalı bulunur. Her kademeli güncelleme senaryosu, bir OOS genel şablonunun yürütülmesi olarak gerçekleşir. Her senaryonun kullandığı şablon parametreleri için aşağıdaki referanslara bakın:

Adım 1: RAM kullanıcı oluşturun ve izin verin

  1. Resource Access Management (RAM) konsolunda oturum açın.

  2. Bir RAM kullanıcı oluşturun.

    Bu adımda örnek kullanıcı olarak example adlı bir RAM kullanıcı kullanılır. Daha fazla bilgi için bkz. RAM kullanıcı oluşturma.

    1. Sol gezinme bölmesinde IdentitiesUsers seçeneğini belirleyin.

    2. Create User öğesini tıklayın.

    3. Create User sayfasında kullanıcı yapılandırmalarını belirtin ve ardından OK öğesini tıklayın.

      Aşağıdaki tabloda örnek yapılandırmalar açıklanmaktadır.


      Yapılandırma öğesi


      Örnek yapılandırma


      Logon Name


      example@sample.com


      Display name


      example


      Access Mode


      Using permanent AccessKey to access seçeneğini belirleyin. API'ler veya diğer geliştirme araçları aracılığıyla Alibaba Cloud'a erişmenize olanak tanıyan bir AccessKey çifti RAM kullanıcı için otomatik olarak oluşturulur.

    4. User Information sayfasında Download CSV File öğesini tıklayın.

      Not

      AccessKey gizli anahtarı yalnızca oluşturulduğunda görüntülenir ve sorgulanamaz. Gizli tutun. Bir AccessKey çifti ifşa edilirse veya kaybolursa yeni bir AccessKey çifti oluşturmanız gerekir.

  3. RAM kullanıcısına kaynakları yönetme izni verin.

    1. Sol gezinme bölmesinde IdentitiesUsers seçeneğini belirleyin.

    2. Oluşturduğunuz example RAM kullanıcısını bulun. Actions sütununda Add Permissions öğesini tıklayın.

    3. İzin Ekle sayfasında kademeli güncelleme görevlerini çalıştırmak için gereken izinleri seçin ve ardından OK öğesini tıklayın.

      Aşağıdaki tabloda örnek yapılandırmalar açıklanmaktadır.

      Yapılandırma öğesi

      Örnek yapılandırma

      Resource Range

      Varsayılan değer olan Account değerini koruyun.

      Prensip

      Varsayılan değer example@sample.com olarak bırakın.

      Policies

      Aşağıdaki sistem ilkelerini seçin:

      • AliyunECSFullAccess: ECS örnekleri ve diğer ilgili kaynaklar dahil olmak üzere ECS kaynaklarını yönetme izinleri.

      • AliyunESSFullAccess: Ölçeklendirme grupları ve diğer ilgili kaynaklar dahil olmak üzere Auto Scaling kaynaklarını yönetme izinleri.

      • AliyunOOSFullAccess: Çalıştırmalar ve diğer ilgili kaynaklar dahil olmak üzere CloudOps Orchestration Service kaynaklarını yönetme izinleri.

      • AliyunOSSFullAccess: Paketler ve diğer ilgili kaynaklar dahil olmak üzere Object Storage Service kaynaklarını yönetme izinleri.

Adım 2: Alibaba Cloud CLI'yı yapılandırın ve doğrulayın

  1. Yerel bilgisayarınızda bir terminal veya komut istemi açın.

  2. Alibaba Cloud CLI'yı yapılandırın.

    1. Yapılandırma dosyasını açmak için aşağıdaki komutu çalıştırın:

      aliyun configure
    2. İstendiğinde AccessKey ID, AccessKey gizli anahtarı, varsayılan bölge ve diğer bilgileri girin.

      cli-config

      Adım 3'teki örnek komutlar bir bölge parametresi içermez. Yapılandırdığınız varsayılan bölgenin, ölçeklendirme grubunuzun bulunduğu bölge olduğundan emin olun.

  3. Alibaba Cloud CLI'nın kullanılabilir olduğunu doğrulamak için aşağıdaki komutu çalıştırın:

    aliyun ecs DescribeRegions

    cli-example

    Diğer yapılandırma öğeleri hakkında daha fazla bilgi için bkz. Alibaba Cloud CLI belgeleri içindeki Alibaba Cloud CLI'yı yapılandırma bölümü.

Adım 3: Alibaba Cloud CLI kullanarak kademeli güncelleme görevi çalıştırın

Örnek komutlar, Linux veya macOS'taki bash gibi bir POSIX kabuğunun tırnak işareti ve satır devam ettirme kurallarını kullanır. Windows PowerShell veya Komut İstemi kullanıyorsanız, tırnak işaretlerini ve kaçış karakterlerini bu kabukla eşleşecek şekilde ayarlayın.

Tüm örnek komutlarda batchPauseOption değeri Automatic olarak ayarlanır; bu, her toplu işi duraklatmadan çalıştırır. Görevi ilk toplu iş çalıştırıldıktan sonra duraklatmak için batchPauseOption değerini FirstBatchPause olarak ayarlayın.

  1. Kademeli güncelleme görevi çalıştırmak için bir Alibaba Cloud CLI komutu girin.

    Örnek kodda kullanılan OOS şablon parametrelerinin açıklamaları için bkz. OOS kademeli güncelleme şablon parametreleri.

    • Aşağıdaki örnek komut, ölçeklendirme grubundaki ECS örneklerinin görüntülerini Alibaba Cloud Linux 2.1903 LTS 64-bit olarak günceller:

      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\"
            }"
    • Komut dosyası çalıştırma için örnek komut aşağıdadır; bu komut, ölçeklendirme grubundaki ECS örneklerinde disk ve ağ yapılandırma bilgilerini görüntülemek için df -h ve ifconfig shell komutlarını çalıştırır.

      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\"
            }"
    • OOS paketini yükleme için örnek komut aşağıdadır; bu komut, OOS'te oluşturulan WordPress paketini ölçeklendirme grubundaki ECS örneklerine tek tip olarak yükler.

      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. Kademeli güncelleme görevinin sonucunu onaylamak için çalıştırma ayrıntılarını görüntüleyin.

    Kademeli güncelleme görevi çalıştırmak için CLI komutunu çalıştırdığınızda OOS'te otomatik olarak bir çalıştırma oluşturulur. Dönülen çalıştırma kimliğini kullanarak çalıştırma sonucu ve çıktı gibi çalıştırma ayrıntılarını görüntüleyebilirsiniz. Aşağıdaki örnekte, bir komut dosyası çalıştırmasının çalıştırma kimliğinin nasıl bulunacağı ve çalıştırma ayrıntılarının nasıl görüntüleneceği gösterilmektedir.

    1. Komut tarafından döndürülen bilgilerde kademeli güncelleme görevinin çalıştırma kimliğini bulun.

      Aşağıdaki şekilde örnek bir çalıştırma kimliği gösterilmektedir. exec-id

    2. Örnek çalıştırma kimliğini kendi kimliğinizle değiştirin ve ardından çalıştırma ayrıntılarını görüntülemek için aşağıdaki Alibaba Cloud CLI komutunu çalıştırın:

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

      exec-outputs

Kademeli güncelleme görevini geri alın: Kademeli Güncellemeler Sırasında Anormallikleri İşleme

Kademeli güncelleme işlemi sırasında bir özel durum oluşursa veya kademeli güncellemeden sonra önceki yapılandırmayı kullanmanız gerekirse, ölçeklendirme grubundaki ECS örneklerinin yapılandırmasını geri yüklemek için bir geri alma görevi çalıştırabilirsiniz. Bu adım, zaten çalıştırılmış olan bir kademeli güncelleme görevinin nasıl geri alınacağını gösteren bir örnek komut sağlar.

  1. Komut tarafından döndürülen bilgilerde kademeli güncelleme görevinin çalıştırma kimliğini bulun.

    Aşağıdaki şekilde örnek bir çalıştırma kimliği gösterilmektedir. exec-id

  2. Geri alma görevi çalıştırmak için bir Alibaba Cloud CLI komutu girin.

    Örnek kodda kullanılan OOS şablon parametrelerinin açıklamaları için bkz. Referans: OOS şablon parametreleri.

    Not

    Bir geri alma görevi çalıştırdığınızda OOS, geri alınacak ECS örneklerini filtreleme ve ölçeklendirme süreçlerini askıya alma ile yeniden başlatma gibi işlemleri kademeli güncelleme görevine göre otomatik olarak gerçekleştirir. Bu nedenle, bazı parametreleri belirtmeyi atlayabilirsiniz.

    • Aşağıdaki örnek komut, ECS örneklerinin görüntülerini CentOS 7.8 64-bit sürümüne geri alır:

      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\"
            }"
    • Geri alma komut dosyası çalıştırma için örnek komut aşağıdadır; bu komut, ECS örneklerinde geri alma komut dosyasını çalıştırır. Burada Shell komutları df -h ve ifconfig yine örnek olarak kullanılmıştır ve komut dosyasını ihtiyaca göre değiştirebilirsiniz.

      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\"
            }"
    • OOS paketinin yüklenmesini geri almak için örnek komut aşağıdadır; bu komut, OOS'te oluşturulan WordPress paketinin önceki sürümünü ECS örneklerine tek tip olarak yükler.

      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. Geri alma görevinin sonucunu onaylamak için çalıştırma ayrıntılarını görüntüleyin.

    Geri alma görevi çalıştırmak için CLI komutunu çalıştırdığınızda OOS'te de otomatik olarak bir çalıştırma oluşturulur. Adım 3'teki adımları izleyerek çalıştırma sonucu ve çıktı gibi çalıştırma ayrıntılarını görüntüleyebilirsiniz.

Referans: OOS şablon parametreleri

Bu bölümde, örnek komutlarda kullanılan OOS genel şablonlarının parametreleri listelenmektedir.

ACS-ESS-RollingUpdateByReplaceSystemDiskInScalingGroup

Parametre

Açıklama

invokeType

Görev türü. Geçerli değerler:

  • invoke: kademeli güncelleme görevi.

  • rollback: geri alma görevi.

scalingGroupId

Görevin çalıştırıldığı ölçeklendirme grubunun kimliği.

scalingConfigurationId

Ölçeklendirme grubunda etkin olan ölçeklendirme yapılandırmasının kimliği.

imageId

Mevcut görüntüyü değiştirmek için kullanılan görüntünün kimliği.

sourceImageId

Geri alma için kullanılan görüntünün kimliği.

OOSAssumeRole

Görevi çalıştırmak için kullanılan RAM rolü. Varsayılan değer: OOSServiceRole.

enterProcess

Görev başladığında askıya alınan ölçeklendirme süreçleri.

exitProcess

Görev sona erdiğinde yeniden başlatılması gereken ölçeklendirme süreçleri.

batchNumber

Görev çalıştırılırken ölçeklendirme grubundaki ECS örneklerinin ayrıldığı toplu iş sayısı. Her toplu iş en az bir ECS örneği içerir.

batchPauseOption

Görev çalıştırma için duraklatma ayarı. Geçerli değerler:

  • Automatic: Görev duraklatılmadan tek seferde çalıştırılır.

  • FirstBatchPause: Görev, ilk toplu iş çalıştırıldıktan sonra duraklatılır.

  • EveryBatchPause: Görev, her toplu iş çalıştırıldıktan sonra duraklatılır.

sourceExecutionId

Bir geri alma görevi çalıştırılırken kaynak kademeli güncelleme görevinin çalıştırma kimliği.

Not

Daha fazla parametre açıklamasını OOS konsolunda da görüntüleyebilirsiniz. Örneğin, China (Hangzhou) bölgesi için bkz. ACS-ESS-RollingUpdateByReplaceSystemDiskInScalingGroup.

ACS-ESS-RollingUpdateByRunCommandInScalingGroup

Parametre

Açıklama

invokeType

Görev türü. Geçerli değerler:

  • invoke: kademeli güncelleme görevi.

  • rollback: geri alma görevi.

scalingGroupId

Görevin çalıştırıldığı ölçeklendirme grubunun kimliği.

commandType

Çalıştırılacak komut dosyası türü. RunShellScript değeri bir shell komut dosyasını belirtir.

invokeScript

Kademeli güncelleme görevi çalıştırılırken ECS örneklerinde çalıştırılan komut dosyası.

rollbackScript

Geri alma görevi çalıştırılırken ECS örneklerinde çalıştırılan komut dosyası.

OOSAssumeRole

Görevi çalıştırmak için kullanılan RAM rolü. Varsayılan değer: OOSServiceRole.

enterProcess

Görev başladığında askıya alınan ölçeklendirme süreçleri.

exitProcess

Görev sona erdiğinde yeniden başlatılması gereken ölçeklendirme süreçleri.

batchNumber

Görev çalıştırılırken ölçeklendirme grubundaki ECS örneklerinin ayrıldığı toplu iş sayısı. Her toplu iş en az bir ECS örneği içerir.

batchPauseOption

Görev çalıştırma için duraklatma ayarı. Geçerli değerler:

  • Automatic: Görev duraklatılmadan tek seferde çalıştırılır.

  • FirstBatchPause: Görev, ilk toplu iş çalıştırıldıktan sonra duraklatılır.

  • EveryBatchPause: Görev, her toplu iş çalıştırıldıktan sonra duraklatılır.

sourceExecutionId

Bir geri alma görevi çalıştırılırken kaynak kademeli güncelleme görevinin çalıştırma kimliği.

Not

Daha fazla parametre açıklamasını OOS konsolunda da görüntüleyebilirsiniz. Örneğin, China (Hangzhou) bölgesi için bkz. ACS-ESS-RollingUpdateByRunCommandInScalingGroup.

ACS-ESS-RollingUpdateByConfigureOOSPackage

Parametre

Açıklama

invokeType

Görev türü. Geçerli değerler:

  • invoke: kademeli güncelleme görevi.

  • rollback: geri alma görevi.

scalingGroupId

Görevin çalıştırıldığı ölçeklendirme grubunun kimliği.

packageName

Paketin adı.

packageVersion

Paketin sürümü.

action

Paketi yapılandırmak için kullanılan yöntem. Geçerli değerler:

  • install: paketi yükler.

  • uninstall: paketi kaldırır.

Varsayılan değer: install.

OOSAssumeRole

Görevi çalıştırmak için kullanılan RAM rolü. Varsayılan değer: OOSServiceRole.

enterProcess

Görev başladığında askıya alınan ölçeklendirme süreçleri.

exitProcess

Görev sona erdiğinde yeniden başlatılması gereken ölçeklendirme süreçleri.

batchNumber

Görev çalıştırılırken ölçeklendirme grubundaki ECS örneklerinin ayrıldığı toplu iş sayısı. Her toplu iş en az bir ECS örneği içerir.

batchPauseOption

Görev çalıştırma için duraklatma ayarı. Geçerli değerler:

  • Automatic: Görev duraklatılmadan tek seferde çalıştırılır.

  • FirstBatchPause: Görev, ilk toplu iş çalıştırıldıktan sonra duraklatılır.

  • EveryBatchPause: Görev, her toplu iş çalıştırıldıktan sonra duraklatılır.

sourceExecutionId

Bir geri alma görevi çalıştırılırken kaynak kademeli güncelleme görevinin çalıştırma kimliği.

Not

Daha fazla parametre açıklamasını OOS konsolunda da görüntüleyebilirsiniz. Örneğin, China (Hangzhou) bölgesi için bkz. ACS-ESS-RollingUpdateByConfigureOOSPackage.