Tüm Ürünler
Search
Belge Merkezi

CloudOps Orchestration Service:Manage custom extensions in batches

Son Güncelleme:Oct 07, 2026

Yazılımları toplu olarak yönetmek için OOS (CloudOps Orchestration Service) kullanabilirsiniz. Alibaba Cloud aracıları veya paket yönetim araçlarıyla yazılım yüklemenin yanı sıra OOS, özel uzantıları da yüklemenize olanak tanır. Özel bir uzantı; RPM, DEB veya MSI dosyası gibi standart bir yazılım paketi olabilir. Bu özellik, farklı platformlar ve mimariler arasında yazılımları verimli bir şekilde yönetmenizi sağlar. Bu konuda, özel uzantıların nasıl oluşturulacağı ve toplu olarak nasıl yönetileceği açıklanmaktadır.

Önkoşullar

  1. Bir VPC içinde dağıtılmış bir ECS örneğine ihtiyacınız vardır.

    Daha fazla bilgi için bkz. Sihirbazı kullanarak bir örnek oluşturun. Özel uzantıları yalnızca bir VPC içindeki örneklerde yükleyebilir veya kaldırabilirsiniz. ECS örneğinizin ağ türünün VPC olduğundan emin olun.

    Ağ türünün VPC olduğunu doğrulayın

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

    2. Sol gezinme bölmesinde Instances & Images > Instances seçeneğini belirleyin.

    3. Hedef ECS örneğini bulun ve örneğin bir VPC içinde olduğunu doğrulamak için Network Type sütununu kontrol edin.

  2. ECS örneğinize eklenmiş bir RAM rolüne ihtiyacınız vardır.

    Daha fazla bilgi için bkz. 1. Adım: RAM rolü oluşturun. Rolü oluştururken aşağıdaki parametre ayarlarını dikkate alın:

    1. Özel bir izin ilkesi oluşturun.

      Daha fazla bilgi için bkz. Özel izin ilkesi oluşturma. RAM rolü aşağıdaki ilkedeki izinleri içermelidir:

      İzin ilkesi JSON betiği

      {
          "Version": "1",
          "Statement": [
              {
                  "Action": [
                      "oos:GetTemplate"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              },
              {
                  "Action": [
                      "oss:GetObject",
                      "oss:GetBucketAcl"
                  ],
                  "Effect": "Allow",
                  "Resource": "*"
              }
          ]
      }
    2. Bir RAM rolü oluşturun.

      Daha fazla bilgi için bkz. Normal hizmet rolü oluşturma. Aşağıdaki parametre ayarlarını dikkate alın:

      • Alibaba Cloud Service alanında Alibaba Cloud Service seçeneğini belirleyin.

      • Role Type alanında Normal Service Role seçeneğini belirleyin.

      • Elastic Compute Service alanında Elastic Compute Service seçeneğini belirleyin.

    3. RAM rolüne izinler atayın.

      Bir RAM rolüne izin atarken Permission Policy için 2.a Özel izin ilkesi oluşturun adımında oluşturduğunuz özel ilkeyi seçin. Daha fazla bilgi için bkz. RAM rolünün izinlerini yönetme.

    4. RAM rolünü ECS örneğine ekleyin.

      RAM Role parametresi için önceki adımlarda oluşturup yapılandırdığınız rolü seçin. Daha fazla bilgi için bkz. 1. Adım: RAM rolü oluşturun.

  3. Özel uzantılarınızı depolamak için bir OSS paketiniz olması gerekir.

    Daha fazla bilgi için bkz. Paket oluşturma. Bir Region seçerken Region-specific seçeneğini belirlemeli ve OOS kullandığınız bölge ile aynı bölgeyi seçmelisiniz.

Özel uzantı oluşturma

  1. OOS konsolu adresine gidin, sol gezinme bölmesinden Server Management > Extensions seçeneğini belirleyin ve ardından Custom Extensions sekmesine tıklayın.

  2. Create Custom Extension seçeneğine tıklayın. Basic Information bölümünde parametreleri yapılandırın ve ardından Next Step seçeneğine tıklayın.

    Özel uzantılar yalnızca sizin tarafından görülebilir. Bunları yüklemek veya kaldırmak için hesabınızı kullanabilirsiniz. Aşağıdaki tabloda anahtar parametreler açıklanmaktadır.

    Parametre

    Açıklama

    Extension Type

    Uzantının kategorisi. İş ihtiyaçlarınıza göre Sürücü, Performans Hızlandırma, Aracı veya Uygulama seçeneklerinden birini seçebilirsiniz.

    Version Description

    Oluşturduğunuz ilk sürüm otomatik olarak V1 olarak etiketlenir. Uzantı oluşturulduktan sonra ayrıntılar sayfasında sürüm numarasını ve detayları görüntüleyebilirsiniz.

    Not

    Uzantıyı değiştirmek için güncelleme özelliğini kullanmanız gerekir. Bir uzantıyı güncellediğinizde sistem otomatik olarak V2 gibi yeni bir sürüm oluşturur.

    Supported Scope

    Desteklenen örnek aileleri, görüntü türleri ve işletim sistemi platformları veya sürümleri dahil olmak üzere uzantının kullanımı için koşulları tanımlar. Bu kapsamı ayarladıktan sonra kullanıcılar, ECS satın alma sayfasından veya ECS örnek ayrıntıları sayfasından uzantı yüklerken yalnızca geçerli uzantıları seçebilir.

    Command Parameter

    Uzantı komutları için giriş parametrelerini belirtir. Birden fazla parametre ekleyebilirsiniz. Parametre türü dize, sayısal veya Boolean olabilir. Parametre adını, varsayılan değeri ve açıklamasını tanımlayabilirsiniz. Yükleme komutu parametrelerini ayarladıktan sonra, kullanıcılar ECS satın alma sayfasından veya ECS örnek ayrıntıları sayfasından uzantıyı yüklerken bu parametreler için değer sağlamalıdır.

  3. Extension Configuration adımında parametreleri yapılandırın.

    Not

    Birden fazla uzantı yapılandırması ekleyebilirsiniz. Daha sonra uzantıyı yüklediğinizde sistem, ECS örneğinin işletim sistemi ve mimarisine uygun yapılandırmayı bulur. Ardından sistem ilgili yazılım paketini indirir ve süreci tamamlamak için belirtilen yükleme veya kaldırma betiğini çalıştırır.

    脚本.png

    Aşağıdaki kod, bir Installation Execution Script ve bir Uninstallation Execution Script örneği sağlar:

    • Örnek yükleme yürütme betiği

      #!/bin/bash
      #######  Notes on the installation script template for a single-process software package  #########
      #1. This script runs in the root directory by default. For Linux, the default directory is /root.
      #2. After the software is successfully installed, the remote download path is deleted by default.
      #3. We recommend that you add your custom logic in the job_start function.
      #4. You must store the process ID of the software package in the specified path.
      
      #######  error code specification  #########
      # Please update this documentation if new error codes are added.
      # 1   => Installation failed.
      # 2   => Health check failed.
      # 3   => Failed to record process ID.
      # 4   => User shell script failed.
      
      function user_shell() {
          # Custom installation script START
          $nohup java -jar demo-1.0.0-SNAPSHOT.jar > /demo.log 2>&1 &
          # Custom installation script END
      }
      
      ##### You can call this function when the script starts to print the timestamp and PID and record the process ID to the specified path.
      function job_start() {
          user_shell
          if [ $? -ne 0 ]; then
              exit4
          else
              # Do not delete this constraint.
              now=$(date +'%Y-%m-%d %H:%M:%S')
              pid=$!
              echo "[$now][$pid] job_start"
              pidPath="/etc/aliyun"
              if [ ! -d $pidPath ]; then
                  mkdir -p /etc/aliyun
                  echo "Create the PID storage path: $pidPath"
              fi
              echo "$pid" > "$pidPath/main_process_id"
              if [ $? -ne 0 ]; then
                  exit3
              fi
          fi
      }
      
      ##### In this function, check whether the service is running. For example, you can check the process or run a curl command to an HTTP address.
      function check_health() {
          now=$(date +'%Y-%m-%d %H:%M:%S')
          echo "[$now][$$] check_health"
      }
      
      function exit1() {
        echo "exit code 1, install fail"
        exit 1
      }
      
      function exit2() {
        echo "exit code 2, check health fail"
        exit 2
      }
      
      function exit3() {
        echo "exit code 3, record process id fail"
        exit 3
      }
      
      function exit4() {
        echo "exit code 4, user shell fail"
        exit 4
      }
      
      ##### A return value of 0 indicates success. A non-zero value indicates failure.
      function main() {
          job_start
          if [ $? -ne 0 ]; then
              exit1
          fi
          check_health
          if [ $? -ne 0 ]; then
              exit2
          fi
      }
      
      ##### OOS automatically records logs for triggered executions.
      main
    • Örnek kaldırma yürütme betiği

      #!/bin/bash
      ##### You can call this function when the script starts to print the current timestamp and PID.
      function job_stop() {
          pid=$(cat /etc/aliyun/main_process_id)
          kill -9 $pid
          now=`date +'%Y-%m-%d %H:%M:%S'`
          echo "[$now][$pid] job_stop"
      }
      
      job_stop
      if [ $? -ne 0 ]; then
          echo "[$now][$$] job stop failed."
          exit 1
      fi
  4. Create seçeneğine tıklayın.

    Uzantı oluşturulduktan sonra bunu Custom Extensions sekmesinde görüntüleyebilirsiniz.

    我的软件.png

Özel uzantı yükleme

  1. OOS konsolu adresine gidin, sol gezinme bölmesinden Automated Tasks > Common O&M Tasks > Batch Software Management seçeneğini belirleyin ve ardından Create seçeneğine tıklayın.

  2. Create Batch Software Management Task sayfasında parametreleri yapılandırın ve Create seçeneğine tıklayın.

    • Operation alanında Install seçeneğini belirleyin.

    • Extension Name alanında Custom Extensions seçeneğini belirleyin ve ardından yüklemek istediğiniz özel uzantıyı seçin.

    • Select Instances alanında Manually Select Instances seçeneğini belirleyin. Örnek listesinde özel uzantıyı yüklemek istediğiniz ECS örneklerini seçin. Örneklerin bir VPC içinde dağıtıldığından emin olun.

  3. Parameter Confirmation iletişim kutusunda parametreleri doğrulayın ve çalıştırmayı oluşturmak için OK seçeneğine tıklayın.

    Çalıştırma oluşturulduktan sonra özel uzantının yükleme durumunu görev listesinde görüntülemek için Task Execution Management sayfasına gidebilirsiniz.

    任务执行管理.png

Özel uzantı kaldırma

  1. OOS konsolu adresine gidin, sol gezinme bölmesinden Automated Tasks > Common O&M Tasks > Batch Software Management seçeneğini belirleyin ve ardından Create seçeneğine tıklayın.

  2. Create Batch Software Management Task sayfasında parametreleri yapılandırın ve Create seçeneğine tıklayın.

    • Operation alanında Uninstall seçeneğini belirleyin.

    • Extension Name alanında Custom Extensions seçeneğini belirleyin ve ardından kaldırmak istediğiniz özel uzantıyı seçin.

    • Select Instances alanında Manually Select Instances seçeneğini belirleyin ve özel uzantıyı kaldırmak istediğiniz ECS örneklerini seçin.

  3. Parameter Confirmation iletişim kutusunda parametreleri doğrulayın ve çalıştırmayı oluşturmak için OK seçeneğine tıklayın.

    Çalıştırma oluşturulduktan sonra özel uzantının kaldırıldığını doğrulamak için görev listesini kontrol etmek üzere Task Execution Management sayfasına gidebilirsiniz.

    任务执行管理.png