全部产品
Search
文档中心

CloudOps Orchestration Service:Kelola ekstensi kustom secara massal

更新时间:Jun 28, 2025

CloudOps Orchestration Service (OOS) memungkinkan Anda mengelola agen Alibaba Cloud, alat manajemen perangkat lunak, dan ekstensi kustom pada instance Elastic Compute Service (ECS). Ekstensi kustom mendukung paket reguler seperti RPM, DEB, dan MSI. Topik ini menjelaskan cara mengelola ekstensi kustom pada instance ECS secara efektif menggunakan OOS.

Persiapan

  1. Buat instance ECS dalam Virtual Private Cloud (VPC).

    Untuk informasi lebih lanjut, lihat Buat Instance di Tab Peluncuran Kustom. Hanya instance ECS dalam VPC yang mendukung pemasangan dan pelepasan ekstensi kustom. Pastikan bahwa instance ECS ditempatkan dalam VPC.

    Pastikan bahwa instance ECS ditempatkan dalam VPC

    1. Masuk ke Konsol ECS.

    2. Di panel navigasi sebelah kiri, pilih Instances & Images > Instances.

    3. Temukan instance ECS dan pastikan bahwa VPC ditampilkan di kolom Network Type.

  2. Buat Peran RAM dan lampirkan peran tersebut ke instance ECS.

    Untuk informasi lebih lanjut, lihat Peran RAM Instance. Perhatikan parameter berikut:

    1. Buat kebijakan kustom.

      Untuk informasi lebih lanjut, lihat Buat Kebijakan Kustom. Pastikan bahwa kebijakan dalam skrip JSON berikut dilampirkan ke Peran RAM.

      Skrip JSON

      {
          "Version": "1",
          "Statement": [
              {
                  "Action": [
                      "oos:GetTemplate"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              },
              {
                  "Action": [
                      "oss:GetObject",
                      "oss:GetBucketAcl"
                  ],
                  "Effect": "Allow",
                  "Resource": "*"
              }
          ]
      }
    2. Buat Peran RAM.

      Untuk informasi lebih lanjut, lihat Buat Peran Layanan Reguler. Perhatikan parameter berikut:

      • Pilih Entitas Terpercaya: Pilih Alibaba Cloud Service.

      • Tipe Peran: Pilih Normal Service Role.

      • Pilih Layanan Terpercaya: Pilih Elastic Compute Service.

    3. Berikan izin kepada peran RAM instance.

      Saat memberikan izin kepada peran RAM, atur Policy ke kebijakan yang dibuat di 2.a Buat Kebijakan Kustom. Untuk informasi lebih lanjut, lihat Berikan Izin kepada Peran RAM.

    4. Lampirkan Peran RAM ke instance ECS.

      Pilih RAM Role yang dibuat di langkah sebelumnya. Untuk informasi lebih lanjut, lihat Peran RAM Instance.

  3. Buat bucket Object Storage Service (OSS) untuk menyimpan ekstensi kustom.

    Untuk informasi lebih lanjut, lihat Buat Bucket. Saat menentukan Region, pilih Specify Region dari daftar drop-down dan tentukan wilayah yang sama dengan OOS.

Buat ekstensi kustom

  1. Pergi ke halaman Konsol OOS>Manajemen Server>Ekstensi dan klik tab Custom Extensions.

  2. Klik Create Custom Extension, atur Basic Information sesuai petunjuk, lalu klik Next Step.

    Hanya Anda yang dapat melihat, memasang, dan melepas ekstensi kustom. Parameter utama:

    Parameter

    Deskripsi

    Extension Type

    Anda dapat memilih Driver, Akselerasi Performa, Aplikasi, dan Agen.

    Version Description

    V1 digunakan secara otomatis untuk pembuatan pertama kali. Setelah ekstensi dibuat, Anda dapat melihat nomor versi dan detail versi di halaman detail ekstensi.

    Catatan

    Anda dapat menggunakan fitur pembaruan ekstensi untuk memodifikasi ekstensi. Saat Anda memperbarui ekstensi, sistem secara otomatis menghasilkan versi v2. Versi selanjutnya dihasilkan dengan cara yang sama.

    Extension Applicable Scope

    Tentukan kondisi aplikasi ekstensi, termasuk keluarga instance yang didukung, tipe gambar, serta sistem operasi dan versinya. Setelah Anda menentukan parameter ini, Anda hanya dapat memilih ekstensi yang memenuhi kondisi di halaman pembelian ECS atau halaman detail.

    Command Parameter

    Tentukan parameter input ekstensi. Anda dapat menambahkan beberapa parameter. Tipe parameter dapat berupa String, Numerik, atau Boolean. Anda dapat mendefinisikan nama parameter, nilai default, dan deskripsi parameter untuk setiap parameter. Anda harus memberikan nilai untuk parameter ini saat memasang ekstensi di halaman pembelian ECS atau halaman detail instance ECS.

  3. Di langkah Extension Configuration, atur parameter sesuai petunjuk.

    Catatan

    Anda dapat menambahkan konfigurasi untuk beberapa ekstensi. Saat Anda memasang ekstensi pada instance ECS, sistem menemukan konfigurasi ekstensi yang berlaku untuk sistem operasi dan arsitektur instance ECS, mengunduh paket perangkat lunak yang ditentukan, lalu menjalankan skrip instalasi atau pelepasan.

    脚本.png

    Contoh untuk installation script dan uninstallation script:

    • Contoh Skrip Instalasi

      #!/bin/bash
      #######  Catatan penggunaan template skrip instalasi untuk paket perangkat lunak proses tunggal  #########
      #1. Secara default, skrip ini dieksekusi di direktori root. Direktori default adalah /root untuk instance ECS yang menjalankan Linux.
      #2. Setelah perangkat lunak dipasang menggunakan skrip, jalur unduhan jarak jauh dihapus secara default.
      #3. Kami merekomendasikan agar Anda menggunakan fungsi job_start untuk menyesuaikan perangkat lunak.
      #4. ID proses paket perangkat lunak harus disimpan di jalur yang ditentukan berdasarkan batasan penyimpanan ID proses.
      
      #######  spesifikasi kode kesalahan  #########
      # Harap perbarui dokumentasi ini jika kode kesalahan baru ditambahkan.
      # 1   => gagal instalasi
      # 2   => gagal memeriksa kesehatan
      # 3   => gagal mencatat ID proses
      # 4   => gagal shell pengguna
      
      function user_shell() {
          # Jalankan skrip instalasi kustom.
          $nohup java -jar demo-1.0.0-SNAPSHOT.jar > /demo.log 2>&1 &
          # Hentikan skrip instalasi kustom.
      }
      
      ##### Saat skrip mulai berjalan, Anda dapat memanggil fungsi ini untuk menampilkan cap waktu dan ID proses paket perangkat lunak dan menyimpan ID proses di jalur yang ditentukan. 
      function job_start() {
          user_shell
          if [ $?  -ne 0 ]; then
              exit4
          else
              # Batasan ini tidak dapat dihapus.
              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 "Buat jalur $pidPath untuk menyimpan ID proses."
              fi
              echo "$pid" > "$pidPath/main_process_id"
              if [ $?  -ne 0 ]; then
                  exit3
              fi
          fi
      }
      
      ##### Panggil fungsi ini untuk memeriksa apakah layanan berjalan sesuai harapan. Anda dapat memeriksa status proses atau memanggil perintah curl dalam fungsi ini.
      function check_health() {
          now=$(date +'%Y-%m-%d %H:%M:%S')
          echo "[$now][$$] check_health"
      }
      
      function exit1() {
        echo "kode keluar 1, gagal instalasi"
        exit 1
      }
      
      function exit2() {
        echo "kode keluar 2, gagal memeriksa kesehatan"
        exit 2
      }
      
      function exit3() {
        echo "kode keluar 3, gagal mencatat ID proses"
        exit 3
      }
      
      function exit4() {
        echo "kode keluar 4, gagal shell pengguna"
        exit 4
      }
      
      
      ##### Jika 0 dikembalikan, eksekusi berhasil. Jika tidak, eksekusi gagal.
      function main() {
          job_start
          if [ $?  -ne 0 ]; then
              exit1
          fi
          check_health
          if [ $?  -ne 0 ]; then
              exit2
          fi
      }
      
      ##### Eksekusi dipicu. OOS secara otomatis mencatat log untuk eksekusi.
      main
    • Contoh Skrip Pelepasan

      #!/bin/bash
      ##### Saat skrip mulai berjalan, Anda dapat memanggil fungsi untuk menampilkan cap waktu dan ID proses. 
      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][$$] pekerjaan berhenti gagal."
          exit 1
      fi
  4. Klik Create.

    Setelah ekstensi dibuat, Anda dapat melihatnya di tab Custom Extensions.

    我的软件.png

Pasang ekstensi kustom

  1. Pergi ke halaman Konsol OOS>Tugas Otomatis>Tugas O&M Umum>Manajemen Perangkat Lunak Massal dan klik Create.

  2. Di halaman Create Task Batch Software Management, atur parameter sesuai petunjuk dan klik Create.

    • Atur Operation menjadi Install.

    • Atur Extension Name ke Custom Extension dan pilih ekstensi kustom yang akan dipasang.

    • Atur Select Instances ke Manually Select Instances dan pilih instance ECS tempat Anda ingin memasang ekstensi. Pastikan bahwa instance ECS ditempatkan dalam VPC.

  3. Di kotak dialog Parameter Confirmation, konfirmasi parameter dan klik OK.

    Setelah ekstensi kustom dibuat, Anda dapat melihat tugas instalasi di halaman Task Execution Management.

    任务执行管理.png

Lepas ekstensi kustom

  1. Pergi ke halaman Konsol OOS>Tugas Otomatis>Tugas O&M Umum>Manajemen Perangkat Lunak Massal dan klik Create.

  2. Di halaman Create Task Batch Software Management, atur parameter sesuai petunjuk dan klik Create.

    • Atur Operation menjadi Uninstall.

    • Atur Extension Name ke Custom Extension dan pilih ekstensi kustom yang akan dilepas.

    • Atur Select Instances ke Manually Select Instances dan pilih instance ECS tempat Anda ingin melepas ekstensi.

  3. Di kotak dialog Parameter Confirmation, konfirmasi parameter dan klik OK.

    Setelah ekstensi kustom dilepas, Anda dapat melihat tugas pelepasan di halaman Task Execution Management.

    任务执行管理.png