複数のタスクテンプレートで設定値を共有する場合、グローバル変数のようにパラメーター ストアに保存できます。テンプレート間で値を再利用することで、運用効率が向上し、一貫性が確保されます。このトピックでは、タスクテンプレートで共通パラメーターを使用する方法について説明します。
前提条件
パラメーター ストアで共通パラメーターが作成されていることを確認してください。詳細については、「共通パラメーターを作成」をご参照ください。
手順
OOS コンソールを使用
この例では、[共通タスクテンプレート]を使用してリモートコマンドを実行します。値が 600 の time_out という名前の共通パラメーターにより、テンプレートのタイムアウトが 600 に設定されます。
-
CloudOps Orchestration Service コンソールにログインします。
-
ナビゲーションペインで、 を選択します。対象のテンプレートを見つけて、エグゼキューションの作成 をクリックします。

-
基本情報を入力し、[次へ: パラメーターを設定] をクリックします。
-
タイムアウト の左側にある
アイコンをクリックします。作成した共通パラメーター (この例では time_out) を選択して、タイムアウトを 600 に設定します。次に、対象インスタンスを選択し、[次へ] をクリックします。
-
タスク情報が正しいことを確認し、作成 をクリックします。
-
作成 をクリックすると、実行の詳細ページが表示されます。対象フィールドの値が正しいことを確認してください。

テンプレートでパラメーターを使用
テンプレートで共通パラメーターを使用するには、 {{ oos:parameter_name }} の形式で参照してください。
この例では、ECS インスタンスで Cloud Assistant コマンドを実行するテンプレートを作成する方法を示します。このテンプレートでは、値が 600 の time_out という名前の共通パラメーターにより、タイムアウトが 600 に設定されます。
-
CloudOps Orchestration Service コンソールにログインします。
-
ナビゲーションペインで、 を選択し、[テンプレートを作成] をクリックします。次のテンプレートは、
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 }}' -
テンプレートを作成したら、[実行] をクリックします。必要なパラメーターを入力し、実行を開始します。
-
[Cloud Assistant コマンドを実行] タスクをクリックし、[サブ実行] をクリックします。実行 ID をクリックして、サブ実行の詳細を表示します。
-
[実行ステップと結果] セクションで、[入力] をクリックします。
timeoutパラメーターがtime_out共通パラメーターの値である 600 に設定されていることを確認できます。