すべてのプロダクト
Search
ドキュメントセンター

CloudOps Orchestration Service:カスタム拡張機能の一括管理

最終更新日:Sep 05, 2026

CloudOps Orchestration Service (OOS) を使用して、ソフトウェアを一括管理できます。Alibaba Cloud エージェントやパッケージ管理ツールを使用したソフトウェアのインストールに加えて、OOS ではカスタム拡張機能のインストールも可能です。カスタム拡張機能は、RPM、DEB、MSI ファイルなどの標準的なソフトウェアパッケージとすることができます。この機能により、さまざまなプラットフォームやアーキテクチャ間でソフトウェアを効率的に管理できます。このトピックでは、カスタム拡張機能を作成して一括管理する方法について説明します。

前提条件

  1. [VPC] にデプロイされた [VPC] インスタンスが必要です。

    詳細については、「ウィザードを使用してインスタンスを作成する」をご参照ください。カスタム拡張機能は、VPC 内のインスタンスでのみインストールまたはアンインストールできます。ECS インスタンスのネットワークタイプが VPC であることを確認してください。

    ネットワークタイプが [VPC] であることを確認

    1. ECS コンソールにログインします。

    2. 左側のナビゲーションペインで、インスタンスとイメージ > インスタンスを選択します。

    3. 対象の ECS インスタンスを見つけ、ネットワークタイプ 列でインスタンスが VPC 内にあることを確認します。

  2. ECS インスタンスに RAM ロールをアタッチする必要があります。

    詳細については、「ステップ 1: RAM ロールを作成する」をご参照ください。ロールを作成する際、以下のパラメーター設定にご注意ください。

    1. カスタム権限ポリシーを作成します。

      詳細については、「カスタム権限ポリシーを作成する」をご参照ください。RAM ロールには、以下のポリシーの権限を含める必要があります。

      権限ポリシー JSON スクリプト

      {
          "Version": "1",
          "Statement": [
              {
                  "Action": [
                      "oos:GetTemplate"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              },
              {
                  "Action": [
                      "oss:GetObject",
                      "oss:GetBucketAcl"
                  ],
                  "Effect": "Allow",
                  "Resource": "*"
              }
          ]
      }
    2. RAM ロールを作成します。

      詳細については、「通常のサービスロールを作成する」をご参照ください。次のパラメーター設定にご注意ください:

      • Alicloud Care Service には、Alicloud Care Service を選択します。

      • [ロールタイプ] には、[通常のサービスロール] を選択します。

      • Elastic Compute Service (ECS) には、Elastic Compute Service (ECS) を選択します。

    3. RAM ロールに権限を付与します。

      RAM ロールに権限を付与する場合、権限付与ポリシー には、2.a カスタム権限ポリシーの作成で作成したカスタムポリシーを選択します。詳細については、「RAM ロールの権限を管理する」をご参照ください。

    4. RAM ロールを ECS インスタンスにアタッチします。

      RAM ロール パラメーターには、前の手順で作成および設定したロールを選択します。詳細については、「ステップ 1: RAM ロールの作成」をご参照ください。

  3. カスタム拡張機能を保存するための OSS バケットが必要です。

    詳細については、「バケットの作成」をご参照ください。リージョン を選択する際は、[リージョン固有] を選択し、OOS を使用するリージョンと同じリージョンを選択する必要があります。

カスタム拡張機能の作成

  1. [OOS コンソール] に移動し、左側のナビゲーションペインで [サーバー管理] > [拡張機能] を選択し、次に カスタムエクステンション タブをクリックします。

  2. カスタムエクステンダーの作成 をクリックします。基本情報 セクションでパラメーターを設定し、次のステップ をクリックします。

    カスタム拡張機能は作成者にのみ表示されます。ご自身のアカウントを使用してインストールまたはアンインストールできます。主要なパラメーターについて次の表で説明します。

    パラメーター

    説明

    拡張プログラムの分類

    拡張機能のカテゴリです。ビジネスニーズに応じて、Driver、Performance Acceleration、Agent、または Application を選択できます。

    バージョンの説明

    作成する最初のバージョンには、自動的に V1 のラベルが付けられます。拡張機能の作成後、詳細ページでバージョン番号と詳細を確認できます。

    説明

    拡張機能を変更するには、更新機能を使用する必要があります。拡張機能を更新すると、システムは V2 などの新しいバージョンを自動的に作成します。

    [Supported Scope]

    拡張機能を使用するための条件を定義します。サポートされるインスタンスファミリー、イメージタイプ、オペレーティングシステムのプラットフォームまたはバージョンが含まれます。この範囲を設定すると、ECS 購入ページまたは ECS インスタンス詳細ページから拡張機能をインストールする際に、ユーザーは適用可能な拡張機能のみを選択できます。

    コマンドパラメータ

    拡張機能コマンドの入力パラメーターを指定します。複数のパラメーターを追加できます。パラメータータイプは、文字列、数値、またはブール値に設定できます。パラメーター名、デフォルト値、説明を定義できます。インストールコマンドパラメーターを設定すると、ECS 購入ページまたは ECS インスタンス詳細ページから拡張機能をインストールする際に、ユーザーはこれらのパラメーターの値を指定する必要があります。

  3. 拡張機能の設定 ステップで、パラメーターを設定します。

    説明

    複数の拡張機能設定を追加できます。後で拡張機能をインストールする際、システムは ECS インスタンスのオペレーティングシステムとアーキテクチャに一致する設定を検索します。その後、システムは対応するソフトウェアパッケージをダウンロードし、指定されたインストールまたはアンインストールスクリプトを実行してプロセスを完了します。

    脚本.png

    次のコードは、[インストール実行スクリプト] と [実行スクリプトのアンインストール] の例を示しています。

    • インストール実行スクリプトの例

      #!/bin/bash
      #######  単一プロセスソフトウェアパッケージのインストールスクリプトテンプレートに関する注意事項  #########
      # 1. このスクリプトはデフォルトでルートディレクトリで実行されます。Linux の場合、デフォルトのディレクトリは /root です。
      # 2. ソフトウェアが正常にインストールされた後、リモートダウンロードパスはデフォルトで削除されます。
      # 3. job_start 関数にカスタムロジックを追加することを推奨します。
      # 4. ソフトウェアパッケージのプロセス ID を指定されたパスに保存する必要があります。
      
      #######  エラーコード仕様  #########
      # 新しいエラーコードが追加された場合は、このドキュメントを更新してください。
      # 1   => インストールに失敗しました。
      # 2   => ヘルスチェックに失敗しました。
      # 3   => プロセス ID の記録に失敗しました。
      # 4   => ユーザーシェルスクリプトが失敗しました。
      
      function user_shell() {
          # カスタムインストールスクリプト START
          $nohup java -jar demo-1.0.0-SNAPSHOT.jar > /demo.log 2>&1 &
          # カスタムインストールスクリプト END
      }
      
      ##### スクリプトの開始時にこの関数を呼び出して、タイムスタンプと PID を出力し、プロセス ID を指定されたパスに記録できます。
      function job_start() {
          user_shell
          if [ $? -ne 0 ]; then
              exit4
          else
              # この制約を削除しないでください。
              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 "PID 保存パスを作成: $pidPath"
              fi
              echo "$pid" > "$pidPath/main_process_id"
              if [ $? -ne 0 ]; then
                  exit3
              fi
          fi
      }
      
      ##### この関数では、サービスが実行されているかどうかを確認します。たとえば、プロセスを確認するか、HTTP アドレスに curl コマンドを実行できます。
      function check_health() {
          now=$(date +'%Y-%m-%d %H:%M:%S')
          echo "[$now][$$] check_health"
      }
      
      function exit1() {
        echo "終了コード 1、インストール失敗"
        exit 1
      }
      
      function exit2() {
        echo "終了コード 2、ヘルスチェック失敗"
        exit 2
      }
      
      function exit3() {
        echo "終了コード 3、プロセス ID の記録失敗"
        exit 3
      }
      
      function exit4() {
        echo "終了コード 4、ユーザーシェルスクリプト失敗"
        exit 4
      }
      
      
      ##### 戻り値 0 は成功を示します。0 以外の値は失敗を示します。
      function main() {
          job_start
          if [ $? -ne 0 ]; then
              exit1
          fi
          check_health
          if [ $? -ne 0 ]; then
              exit2
          fi
      }
      
      ##### OOS はトリガーされた実行のログを自動的に記録します。
      main
    • アンインストール実行スクリプトの例

      #!/bin/bash
      ##### スクリプトの開始時にこの関数を呼び出して、現在のタイムスタンプと 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][$$] ジョブの停止に失敗しました。"
          exit 1
      fi
  4. 作成 をクリックします。

    拡張機能の作成後、カスタムエクステンション タブで確認できます。

    我的软件.png

カスタム拡張機能のインストール

  1. OOS コンソールに移動し、左側のナビゲーションペインで[自動化タスク] > [一般的な O&M タスク] > [一括ソフトウェア管理]を選択し、作成をクリックします。

  2. [Create Batch Software Management Task] ページでパラメーターを設定し、作成 をクリックします。

    • 操作内容 で、インストール を選択します。

    • 拡張名 で、カスタムエクステンション を選択し、インストールするカスタム拡張機能を選択します。

    • インスタンスの選択 で、インスタンスの手動選択 を選択します。インスタンスリストで、カスタム拡張機能をインストールする ECS インスタンスを選択します。インスタンスが VPC にデプロイされていることを確認してください。

  3. パラメーターの確認 ダイアログボックスでパラメーターを確認し、[OK] をクリックして実行を作成します。

    実行の作成後、エグゼキューション ページに移動して、タスクリストでカスタム拡張機能のインストールステータスを確認できます。

    任务执行管理.png

カスタム拡張機能のアンインストール

  1. OOS コンソールに移動し、左側のナビゲーションペインで[自動化タスク] > [一般的な O&M タスク] > [一括ソフトウェア管理]を選択し、作成をクリックします。

  2. [Create Batch Software Management Task] ページでパラメーターを設定し、作成 をクリックします。

    • 操作内容 で、アンロード を選択します。

    • 拡張名 で、カスタムエクステンション を選択し、アンインストールするカスタム拡張機能を選択します。

    • インスタンスの選択 で、インスタンスの手動選択 を選択し、カスタム拡張機能をアンインストールする ECS インスタンスを選択します。

  3. パラメーターの確認 ダイアログボックスでパラメーターを確認し、[OK] をクリックして実行を作成します。

    実行の作成後、エグゼキューション ページに移動して、タスクリストを確認し、カスタム拡張機能がアンインストールされたことを確認できます。

    任务执行管理.png