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

Resource Orchestration Service:テンプレートコンテンツの概要

最終更新日:Aug 28, 2026

テンプレートは、Resource Orchestration Service (ROS) を通じてデプロイするクラウドサービスリソースとその依存関係を定義する設計図です。この例では、VPC (Virtual Private Cloud) と vSwitch を作成するテンプレートの作成方法について説明します。

前提条件

テンプレート構造の要件を理解している必要があります。詳細については、「テンプレート構造」をご参照ください。

テンプレートエディターの選択

オンラインエディターを使用できます。自動構文ヒントとリソースプロパティの検証をサポートしています。

  • オンラインエディター: インストール不要で、すぐに使用できます。シンプルなシナリオでリソースのデプロイとリソース管理のテンプレートを作成する場合に適しています。オンラインエディターの使用方法の詳細については、「ROS オンラインエディターでテンプレートを作成する」をご参照ください。

テンプレートの定義

テンプレートを定義するには、Resources セクションで作成するリソースを宣言します。サポートされているすべてのリソースタイプについては、「リソースタイプインデックス」をご参照ください。各リソースタイプのドキュメントには、サポートされているプロパティと戻り値が記載されており、プロパティが必須か編集可能かが示されています。必須プロパティは、Resources セクションの Properties 部分で宣言する必要があります。編集可能なプロパティは、スタックの更新で変更できます。編集不可能なプロパティは、作成後に変更できません。

  1. 目的のリソースタイプの詳細を確認します。

    1. 「リソースタイプインデックス」を参照して、デプロイシナリオに適したリソースタイプを見つけます。この例では、VPC と vSwitch を作成するために使用される ALIYUN::ECS::VPC と ALIYUN::ECS::VSwitch リソースタイプが適しています。

    2. 各リソースタイプのドキュメントを参照し、リソースプロパティを確認します。

  2. Parameters セクションで、テンプレートのパラメーターを定義します。

    VPC の VpcCidrBlock、および vSwitch の ZoneId、VSwitchName、VSwitchCidrBlock を定義します。このセクションのパラメーターは、ROS コンソールで GUI 要素として表示されます。詳細については、「ALIYUN::ECS::VPC」および「ALIYUN::ECS::VSwitch」をご参照ください。vSwitch の CIDR ブロックは、VPC の CIDR ブロック内に収まる必要がありますが、このテンプレートでは検証が実行されないため、手動で確認する必要があります。

    Parameters:
      VpcCidrBlock:
        Type: String
        Default: 192.168.0.0/16
        AllowedValues:
          - 10.0.0.0/8
          - 172.16.0.0/12
          - 192.168.0.0/16
      ZoneId:
        Type: String
        AssociationProperty: ALIYUN::ECS::Instance::ZoneId
      VSwitchName:
        Type: String
      VSwitchCidrBlock:
        Type: String
        Default: 192.168.0.0/24
        AllowedValues:
          - 10.0.0.0/24
          - 172.16.0.0/24
          - 192.168.0.0/24
  3. Resources セクションで、作成するリソースを定義します。

    vSwitch には、VpcId、ZoneId、CidrBlock が必須です。その他のプロパティはオプションです。詳細については、「ALIYUN::ECS::VPC」および「ALIYUN::ECS::VSwitch」をご参照ください。Ref 関数を使用してパラメーターを参照するか、値を直接指定します。詳細については、「Ref」をご参照ください。

    Resources:
      Vpc:
        Type: ALIYUN::ECS::VPC
        Properties:
          VpcName: MyTest
          CidrBlock:
            Ref: VpcCidrBlock 
      VSwitch:
        Type: ALIYUN::ECS::VSwitch
        Properties:
          VpcId:
            Ref: Vpc
          ZoneId:
            Ref: ZoneId
          VSwitchName:
            Ref: VSwitchName
          CidrBlock:
            Ref: VSwitchCidrBlock
  4. Outputs セクションで、テンプレートの出力を定義します。

    VpcId と VSwitchId を出力として定義します。詳細については、「ALIYUN::ECS::VPC」および「ALIYUN::ECS::VSwitch」をご参照ください。Fn::GetAtt 関数を使用して、リソースプロパティの値を取得します。詳細については、「Fn::GetAtt」をご参照ください。

    Outputs:
      VpcId:
        Value:
          Fn::GetAtt:
            - Vpc
            - VpcId
      VSwitchId:
        Value:
          Fn::GetAtt:
            - VSwitch
            - VSwitchId
  5. テンプレート構造に従って、完全なテンプレートコンテンツを定義します。

    ROSTemplateFormatVersion: '2015-09-01'
    Parameters:
      VSwitchName:
        Type: String
      VSwitchCidrBlock:
        Default: 192.168.0.0/24
        Type: String
        AllowedValues:
          - 10.0.0.0/24
          - 172.16.0.0/24
          - 192.168.0.0/24
      VpcCidrBlock:
        Default: 192.168.0.0/16
        Type: String
        AllowedValues:
          - 10.0.0.0/8
          - 172.16.0.0/12
          - 192.168.0.0/16
      ZoneId:
        AssociationProperty: ALIYUN::ECS::Instance::ZoneId
        Type: String
    Resources:
      VSwitch:
        Type: ALIYUN::ECS::VSwitch
        Properties:
          VSwitchName:
            Ref: VSwitchName
          VpcId:
            Ref: Vpc
          CidrBlock:
            Ref: VSwitchCidrBlock
          ZoneId:
            Ref: ZoneId
      Vpc:
        Type: ALIYUN::ECS::VPC
        Properties:
          VpcName: MyTest
          CidrBlock:
            Ref: VpcCidrBlock
    Outputs:
      VpcId:
        Value:
          Fn::GetAtt:
            - Vpc
            - VpcId
      VSwitchId:
        Value:
          Fn::GetAtt:
            - VSwitch
            - VSwitchId

次のステップ

定義したテンプレートを使用してスタックを作成するか、テンプレートをプライベートテンプレートとして保存します。詳細については、「スタックのクイックスタート」および「テンプレートの作成」をご参照ください。

関連ドキュメント