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

CloudOps Orchestration Service:タスクテンプレートで共通パラメーターを使用

最終更新日:Sep 05, 2026

複数のタスクテンプレートで設定値を共有する場合、グローバル変数のようにパラメーター ストアに保存できます。テンプレート間で値を再利用することで、運用効率が向上し、一貫性が確保されます。このトピックでは、タスクテンプレートで共通パラメーターを使用する方法について説明します。

前提条件

パラメーター ストアで共通パラメーターが作成されていることを確認してください。詳細については、「共通パラメーターを作成」をご参照ください。

手順

OOS コンソールを使用

この例では、[共通タスクテンプレート]を使用してリモートコマンドを実行します。値が 600 の time_out という名前の共通パラメーターにより、テンプレートのタイムアウトが 600 に設定されます。

  1. CloudOps Orchestration Service コンソールにログインします。

  2. ナビゲーションペインで、[自動化タスク] > > [共通タスクテンプレート] を選択します。対象のテンプレートを見つけて、エグゼキューションの作成 をクリックします。image

  3. 基本情報を入力し、[次へ: パラメーターを設定] をクリックします。

  4. タイムアウト の左側にある image アイコンをクリックします。作成した共通パラメーター (この例では time_out) を選択して、タイムアウトを 600 に設定します。次に、対象インスタンスを選択し、[次へ] をクリックします。image

  5. タスク情報が正しいことを確認し、作成 をクリックします。

  6. 作成 をクリックすると、実行の詳細ページが表示されます。対象フィールドの値が正しいことを確認してください。image

テンプレートでパラメーターを使用

テンプレートで共通パラメーターを使用するには、 {{ oos:parameter_name }} の形式で参照してください。

この例では、ECS インスタンスで Cloud Assistant コマンドを実行するテンプレートを作成する方法を示します。このテンプレートでは、値が 600 の time_out という名前の共通パラメーターにより、タイムアウトが 600 に設定されます。

  1. CloudOps Orchestration Service コンソールにログインします。

  2. ナビゲーションペインで、[自動化タスク] > > [カスタムタスクテンプレート] を選択し、[テンプレートを作成] をクリックします。次のテンプレートは、time_out 共通パラメーターを参照する方法を示しています。98 行目で、timeout パラメーターが '{{ oos:time_out }}' に設定されています。

    FormatVersion: OOS-2019-06-01
    Description: 複数の ECS インスタンスで Cloud Assistant コマンドをバッチ実行します。アプリケーション管理やリソースタグ付けなど、複数の ECS インスタンスを一度に管理する場合に便利です。設定時には、次の必須パラメーターを指定する必要があります: 対象 ECS インスタンスのリージョンを指定するリージョン ID (regionId)、ECS インスタンスやマネージドインスタンスなどの対象インスタンスタイプを決定するリソースタイプ (resourceType)、および操作する特定のインスタンスを選択する対象インスタンス (targets)。その他のパラメーターには、シェルスクリプトや Python スクリプトなどのコマンドタイプを指定するコマンドタイプ (commandType)、および特定のコマンドまたはスクリプト内容を指定するコマンド内容 (commandContent) があります。実行後、テンプレートはバッチ操作の出力を返し、実行ステータスを確認できます。
    Parameters:
      regionId:
        Type: String
        Label: リージョン ID
        AssociationProperty: RegionId
        Default: '{{ ACS::RegionId }}'
      resourceType:
        Type: String
        Label: リソースタイプ
        AssociationPropertyMetadata:
          LocaleKey: TargetResourceType
        AllowedValues:
          - ALIYUN::ECS::Instance
          - ALIYUN::ECS::ManagedInstance
        Default: ALIYUN::ECS::Instance
      targets:
        Type: Json
        Label: 対象インスタンス
        AssociationProperty: Targets
        AssociationPropertyMetadata:
          ResourceType: resourceType
          RegionId: regionId
          Status: Running
      commandType:
        Label: コマンドタイプ
        AssociationPropertyMetadata:
          LocaleKey: ECSCommandType
        Type: String
        AllowedValues:
          - RunShellScript
          - RunPythonScript
          - RunPerlScript
          - RunBatScript
          - RunPowerShellScript
        Default: RunShellScript
      commandContent:
        Label: コマンド内容
        Type: String
        MaxLength: 16384
        AssociationProperty: ALIYUN::OOS::Command::CommandContent
        AssociationPropertyMetadata:
          CommandType: ${commandType}
      workingDir:
        Description: 'Linux インスタンスの場合、デフォルトのディレクトリは root ユーザー (管理者) のホームディレクトリである /root です。Windows インスタンスの場合、デフォルトのディレクトリは Cloud Assistant クライアントプロセスが配置されているディレクトリ (C:\Windows\System32 など) です。入力するディレクトリが正しいことを確認してください。'
        Label: 作業ディレクトリ
        Type: String
        Default: ''
      enableParameter:
        Label: コマンドに暗号化パラメーターまたはカスタムパラメーターが含まれているかどうかを指定します。
        Type: Boolean
        Default: false
      username:
        Description: ECS インスタンスでコマンドを実行するためのユーザー名です。ユーザー名は 255 文字を超えることはできません。Linux インスタンスでは、デフォルトで root ユーザーとしてコマンドが実行されます。Windows インスタンスでは、デフォルトで System ユーザーとしてコマンドが実行されます。入力するユーザー名が正しいことを確認してください。<a href="https://www.alibabacloud.com/help/doc-detail/203771.html" target="_blank">詳細</a>
        Label: コマンド実行のユーザー名
        Type: String
        Default: ''
      windowsPasswordName:
        Label: Windows インスタンスのユーザーのパスワード名
        Type: String
        Default: ''
      rateControl:
        Label: レートコントロール
        Type: Json
        AssociationProperty: RateControl
        Default:
          Mode: Concurrency
          MaxErrors: 0
          Concurrency: 10
      OOSAssumeRole:
        Label: OOS が引き受ける RAM ロール
        Type: String
        Default: ''
    RamRole: '{{ OOSAssumeRole }}'
    Tasks:
      - Name: getInstance
        Description: ECS インスタンスを取得します。
        Action: ACS::SelectTargets
        Properties:
          ResourceType: '{{ resourceType }}'
          RegionId: '{{ regionId }}'
          Filters:
            - '{{ targets }}'
        Outputs:
          instanceIds:
            Type: List
            ValueSelector: Instances.Instance[].InstanceId
      - Name: runCommand
        Action: ACS::ECS::RunCommand
        Description: Cloud Assistant コマンドを実行します。
        Properties:
          regionId: '{{ regionId }}'
          commandContent: '{{ commandContent }}'
          instanceId: '{{ ACS::TaskLoopItem }}'
          commandType: '{{ commandType }}'
          workingDir: '{{ workingDir }}'
          timeout: '{{ oos:time_out }}'
          enableParameter: '{{ enableParameter }}'
          username: '{{ username }}'
          windowsPasswordName: '{{ windowsPasswordName }}'
        Loop:
          RateControl: '{{ rateControl }}'
          Items: '{{ getInstance.instanceIds }}'
          Outputs:
            commandOutputs:
              AggregateType: Fn::ListJoin
              AggregateField: commandOutput
        Outputs:
          commandOutput:
            Type: String
            ValueSelector: invocationOutput
    Outputs:
      commandOutputs:
        Type: List
        Value: '{{ runCommand.commandOutputs }}'
  3. テンプレートを作成したら、[実行] をクリックします。必要なパラメーターを入力し、実行を開始します。

  4. [Cloud Assistant コマンドを実行] タスクをクリックし、[サブ実行] をクリックします。実行 ID をクリックして、サブ実行の詳細を表示します。

  5. [実行ステップと結果] セクションで、[入力] をクリックします。timeout パラメーターが time_out 共通パラメーターの値である 600 に設定されていることを確認できます。