複数のタスクテンプレートが同じ構成を共有する場合、その値をパラメーター ストアに保存してグローバル変数として使用できます。この値はテンプレート間で再利用できるため、運用効率と一貫性が向上します。このトピックでは、タスクテンプレートで共通パラメーターを使用する方法について説明します。
前提条件
パラメーター ストアで共通パラメーターを作成しておく必要があります。詳細については、「共通パラメーターの作成」をご参照ください。
手順
OOS コンソールでの使用
この例では、共通タスクテンプレートの Send Remote Command を使用します。テンプレートのタイムアウトは、値が 600 の共通パラメーター `time_out` を使用して 600 に設定されます。
CloudOps Orchestration Service コンソールにログインします。
左側のナビゲーションウィンドウで、 を選択します。ターゲットの共通テンプレートを見つけて、[実行の作成] をクリックします。

基本情報を入力し、[次へ:パラメーターの設定] をクリックします。
[タイムアウト] の左側にある
アイコンをクリックします。 time_out などの共通パラメーターを選択して、タイムアウトを 500 に設定します。 次に、ターゲットインスタンスを選択し、[次へ] をクリックします。
タスク情報が正しいことを確認し、[作成] をクリックします。
[作成] をクリックすると、実行詳細ページが表示されます。ターゲットフィールドが期待どおりの値に設定されていることを確認します。

テンプレートでの使用
テンプレートで共通パラメーターを使用するには、`{{ oos:parameter_name }}` のフォーマットでパラメーターを参照します。
この例では、ECS インスタンスでクラウドアシスタントコマンドを実行するテンプレートを作成する方法を示します。この例では、共通パラメーター `time_out` を使用して、タイムアウトを 600 に設定します。
CloudOps Orchestration Service コンソールにログインします。
左側のナビゲーションウィンドウで、 を選択し、[テンプレートの作成] をクリックします。テンプレートの 98 行目にある `timeout` パラメーターは、`{{ oos:time_out }}` フォーマットを使用して共通パラメーター `time_out` を参照します。
FormatVersion: OOS-2019-06-01 Description: 複数の ECS インスタンスでクラウドアシスタントコマンドをバッチ実行します。これは、アプリケーション管理やリソースのタグ付けなどのタスクで、複数の 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 インスタンスの場合、デフォルトのディレクトリはクラウドアシスタントクライアントプロセスが配置されている場所 (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: クラウドアシスタントコマンドの実行 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 }}'テンプレートを作成した後、[実行] をクリックします。必須パラメーターを入力し、実行を開始します。
[クラウドアシスタントコマンドの実行] タスクをクリックし、次に [サブ実行] をクリックします。実行 ID をクリックして、サブ実行の詳細を表示します。
[実行ステップと結果] セクションで、[入力] をクリックします。`timeout` パラメーターは、共通パラメーター `time_out` の値である 600 に置き換えられています。