全部产品
Search
文档中心

Resource Orchestration Service:Memulai Cepat untuk Template ROS

更新时间:Jul 02, 2025

Template berfungsi sebagai cetak biru untuk infrastruktur dan arsitektur Anda. Anda dapat mendefinisikan sumber daya layanan cloud serta hubungan ketergantungan di antara mereka dalam template untuk menerapkan sumber daya menggunakan Resource Orchestration Service (ROS). Topik ini menjelaskan cara membuat dan menguji template serta mendefinisikan sumber daya dan hubungan ketergantungan mereka dalam template untuk membantu Anda memulai dengan cepat.

Informasi Latar Belakang

Sebelum membuat template ROS pertama Anda, kami sarankan Anda memahami struktur template. Untuk informasi lebih lanjut, lihat Memulai dengan Konten Template.

Topik ini akan membimbing Anda melalui proses pembuatan dan pengujian template sederhana. Dalam contoh ini, template digunakan untuk membuat virtual private cloud (VPC). Topik ini juga menjelaskan cara mendefinisikan konfigurasi tingkat lanjut seperti sumber daya, hubungan ketergantungan antar sumber daya, dan parameter dalam template untuk menerapkan template dalam berbagai skenario penyebaran. Topik ini mencakup bagian-bagian berikut:

Buat Template

Untuk membuat template, deklarasikan sumber daya yang ingin Anda buat di bagian Sumber Daya dari template. Anda dapat merujuk ke Daftar Jenis Sumber Daya Berdasarkan Layanan untuk melihat semua jenis sumber daya yang didukung oleh ROS. Kemudian, klik jenis sumber daya dalam dokumentasi ini untuk melihat detail properti yang didukung dan nilai balik. Untuk informasi lebih lanjut tentang cara membuat template, lihat Memulai dengan Konten Template. Contoh template berikut digunakan untuk membuat VPC:

ROSTemplateFormatVersion: '2015-09-01'
Resources:
  VPC:
    Type: ALIYUN::ECS::VPC
    Properties:
      VpcName: myvpc
      CidrBlock: 192.168.0.0/16
Outputs:
  VpcId:
    Value:
      Ref: VPC
  VRouterId:
    Value:
      Fn::GetAtt:
        - VPC
        - VRouterId

Uji Template

Setelah membuat template, Anda dapat menguji apakah template tersebut dapat digunakan untuk membuat sumber daya sesuai harapan. Untuk menguji template, buat tumpukan menggunakan template.

  1. Masuk ke Konsol ROS.

  2. Buat tumpukan.

    1. Di bilah navigasi sebelah kiri, klik Stacks.

    2. Di bilah navigasi atas, pilih wilayah tumpukan yang diinginkan dari daftar drop-down wilayah. Dalam contoh ini, China (Hangzhou) dipilih.

    3. Di halaman Stacks, klik Create Stack. Di bagian Specify Template dari langkah Pilih Template, pilih Select an Existing Template.

      Catatan

      Jika Anda memilih Create a New Template atau Configure in Infrastructure Composer, Anda akan dialihkan ke halaman baru.

    4. Di langkah Select Template, pilih Select an Existing Template di bagian Specify Template dan atur parameter Template Import Method menjadi Enter Template Content. Di tab ROS dari bagian Template Content, masukkan template YAML yang Anda buat di bagian Buat Template dari topik ini. Kemudian, klik Next.

    5. Di langkah Configure Parameters, tentukan parameter Stack Name.

    6. Di langkah Configure Stack Settings, konfigurasikan parameter Rollback on Failure, Timeout Period, Tags, Resource Group, Stack Policy, Maximum Concurrent Resources, Deletion Protection, RAM Role, Stack Event Callback URLs, Manual Payment, dan klik Berikutnya.

    7. Di langkah Check and Confirm, klik Preview Template Resources. Di kotak dialog Preview, periksa nama, jenis, dan properti sumber daya template yang divalidasi oleh ROS. Kemudian, klik OK.

    8. Di langkah Check and Confirm, klik Create.

  3. Lihat tumpukan.

    1. Klik nama tumpukan untuk pergi ke halaman manajemen tumpukan. Klik tab Events untuk melihat peristiwa setiap sumber daya dalam tumpukan.

    2. Klik tab Resources untuk melihat sumber daya yang dibuat.

      Catatan

      Untuk melihat lebih banyak informasi tentang sumber daya, Anda dapat mengklik ID sumber daya untuk pergi ke konsol terkait. Dengan cara ini, Anda dapat memeriksa apakah sumber daya memenuhi harapan Anda.

    3. Klik tab Outputs untuk melihat keluaran yang didefinisikan di bagian Keluaran dari template.

Tentukan Sumber Daya dan Hubungan Ketergantungan Mereka dalam Template

Skema penyebaran Anda mungkin mengharuskan Anda mendefinisikan sumber daya dan hubungan ketergantungan mereka dalam template. Misalnya, skenario penyebaran di mana vSwitch bergantung pada VPC mungkin mengharuskan Anda membuat vSwitch di VPC tertentu. Dalam kasus ini, Anda dapat mendefinisikan sumber daya VPC dan vSwitch serta hubungan ketergantungan di antara mereka dalam template. Kemudian, Anda dapat menggunakan template untuk menerapkan tumpukan dalam skenario kompleks.

  1. Panggil fungsi Fn::GetAtt untuk mendapatkan nilai properti keluaran suatu sumber daya. Untuk informasi lebih lanjut, lihat Fungsi.

    Sebagai contoh, jika Anda mendefinisikan VPC di bagian Sumber Daya, Anda dapat menggunakan {"Fn::GetAtt": ["VPC", "VpcId"]} untuk mendapatkan nilai VpcId.

  2. Panggil fungsi Ref untuk mereferensikan ID sumber daya atau nilai parameter. Untuk informasi lebih lanjut, lihat Fungsi.

    Sebagai contoh, jika Anda mendefinisikan VPC di bagian Sumber Daya, Anda dapat menggunakan {"Ref": "VPC"} untuk mereferensikan ID VPC.

    Catatan
    • {"Ref": "VPC"} dan {"Fn::GetAtt": ["VPC", "VpcId"]} memiliki efek yang sama. Namun, {"Ref": "VPC"} lebih mudah dikonfigurasi daripada {"Fn::GetAtt": ["VPC", "VpcId"]}.

    • Anda dapat memanggil fungsi Ref dan Fn::GetAtt untuk secara implisit mendeklarasikan hubungan ketergantungan antar sumber daya. Anda juga dapat menggunakan properti DependsOn untuk secara eksplisit mendeklarasikan hubungan ketergantungan antar sumber daya. Untuk informasi lebih lanjut, lihat DependsOn.

  3. Optimalkan template.

    Kode sampel berikut memberikan contoh cara mengoptimalkan template. Dalam contoh ini, sebuah vSwitch bernama myvsw dideklarasikan. ID zona vSwitch adalah cn-beijing-f. Blok CIDR vSwitch adalah 192.168.0.0/24. VPC direferensikan oleh vSwitch. ID vSwitch didefinisikan di bagian Keluaran.

    ROSTemplateFormatVersion: '2015-09-01'
    Resources:
      VPC:
        Type: ALIYUN::ECS::VPC
        Properties:
          VpcName: myvpc
          CidrBlock: 192.168.0.0/16
      VSwitch:
        Type: ALIYUN::ECS::VSwitch
        Properties:
          VpcId:
            Ref: VPC
          ZoneId: cn-beijing-f
          VSwitchName: myvsw
          CidrBlock: 192.168.0.0/24
    Outputs:
      VpcId:
        Value:
          Fn::GetAtt:
            - VPC
            - VpcId
      VRouterId:
        Value:
          Fn::GetAtt:
            - VPC
            - VRouterId
      VSwitchId:
        Value:
          Ref: VSwitch

Tentukan Nilai Parameter dan Properti dalam Template

Bagian Parameter dapat meningkatkan fleksibilitas dan kemampuan penggunaan ulang template. Anda dapat menentukan nilai parameter dan properti di bagian Parameter template untuk memenuhi persyaratan bisnis Anda, seperti menampilkan nilai valid sebagai opsi yang dapat dipilih untuk parameter dan mengelompokkan parameter dengan tipe yang sama.

  • Tentukan properti sumber daya sebagai parameter

    Anda dapat menentukan nilai literal untuk properti sumber daya dalam template. Namun, setiap kali Anda menggunakan template dalam skenario berbeda, Anda harus mengubah nilai literal properti dalam template. Sebagai contoh, jika Anda menetapkan ZoneId ke cn-beijing-f dalam template, Anda hanya dapat menggunakan template untuk membuat tumpukan di wilayah China (Beijing). Jika Anda ingin membuat tumpukan di wilayah lain, Anda harus mengubah nilai literal ZoneId dalam template. Untuk meningkatkan kemampuan penggunaan ulang template, Anda dapat menambahkan properti yang sering digunakan atau dibagikan oleh beberapa sumber daya di bagian Sumber Daya ke bagian Parameter dan mendefinisikan properti sebagai parameter. Dengan cara ini, Anda dapat menentukan nilai parameter berbeda untuk membuat sumber daya dengan nilai properti berbeda setiap kali Anda menggunakan template. Tabel berikut menjelaskan parameter yang dapat Anda definisikan dalam template. Kode sampel berikut memberikan contoh cara mendefinisikan parameter dalam template.

    • Parameter dalam template

      Parameter

      Deskripsi

      ZoneId

      Parameter ini direferensikan oleh properti ZoneId dari vSwitch.

      VpcCidrBlock

      Parameter ini direferensikan oleh properti CidrBlock dari VPC. Nilai default: 192.168.0.0/16.

      VSwitchCidrBlock

      Parameter ini direferensikan oleh properti CidrBlock dari vSwitch. Nilai default: 192.168.0.0/24.

    • Kode sampel template:

      ROSTemplateFormatVersion: '2015-09-01'
      Parameters:
        ZoneId:
          Type: String
        VpcCidrBlock:
          Type: String
          Default: 192.168.0.0/16
        VSwitchCidrBlock:
          Type: String
          Default: 192.168.0.0/24
      Resources:
        VPC:
          Type: ALIYUN::ECS::VPC
          Properties:
            VpcName: myvpc
            CidrBlock:
              Ref: VpcCidrBlock
        VSwitch:
          Type: ALIYUN::ECS::VSwitch
          Properties:
            VpcId:
              Ref: VPC
            ZoneId:
              Ref: ZoneId
            VSwitchName: myvsw
            CidrBlock:
              Ref: VSwitchCidrBlock
      Outputs:
        VpcId:
          Value:
            Ref: VPC
        VRouterId:
          Value:
            Fn::GetAtt:
              - VPC
              - VRouterId
        VSwitchId:
          Value:
            Ref: VSwitch

      Saat Anda menggunakan template sampel untuk membuat tumpukan, Anda dapat menentukan nilai parameter di Konsol ROS berdasarkan persyaratan bisnis Anda.

      image

      ROS menganalisis hubungan antara parameter dan properti sumber daya dalam template untuk menampilkan rangkaian nilai valid bagi setiap parameter. Pada contoh ini, parameter ZoneId di dalam template terkait dengan properti ZoneId dari vSwitch. ROS mengambil zona yang didukung oleh vSwitch dan menampilkannya di konsol.

      image

  • Tampilkan nilai valid sebagai opsi yang dapat dipilih untuk parameter

    Bagian Parameter mendukung properti parameter. Jika Anda mendefinisikan properti parameter di bagian Parameter, ROS menampilkan properti parameter dan nilainya di konsol. Tabel berikut menjelaskan properti parameter yang dapat Anda definisikan dalam template. Kode sampel berikut memberikan contoh cara mendefinisikan properti parameter dalam template.

    • Properti parameter di bagian Parameter

      Properti Parameter

      Deskripsi

      AllowedValues

      Nilai valid dari parameter. Nilai-nilai tersebut ditampilkan sebagai opsi yang dapat dipilih di Konsol ROS. Dalam contoh ini, nilai valid dari parameter VpcCidrBlock adalah 10.0.0.0/8, 172.16.0.0/12, dan 192.168.0.0/16.

      Label

      Alias dari parameter. Alias parameter ditampilkan di Konsol ROS. Dalam contoh ini, Zone ID ditampilkan sebagai alias ZoneId di Konsol ROS.

    • Kode sampel template:

      ROSTemplateFormatVersion: '2015-09-01'
      Parameters:
        ZoneId:
          Type: String
          Label: Zone ID
        VpcCidrBlock:
          Type: String
          Label: VPC CIDR Block
          Default: 192.168.0.0/16
          AllowedValues:
            - 10.0.0.0/8
            - 172.16.0.0/12
            - 192.168.0.0/16
        VSwitchCidrBlock:
          Type: String
          Label: vSwitch CIDR Block
          Default: 192.168.0.0/24

      Saat Anda menggunakan template sampel untuk membuat tumpukan, ROS menampilkan satu set nilai valid sebagai opsi yang dapat dipilih di konsol.

      image

  • Tampilkan set parameter berbeda berdasarkan nilai parameter

    Setelah Anda mendefinisikan properti AssociationProperty dan AssociationPropertyMetadata untuk parameter, ROS menampilkan nilai set parameter berbeda di konsol berdasarkan nilai yang dipilih untuk parameter. Untuk informasi lebih lanjut, lihat AssociationProperty dan AssociationPropertyMetadata.

    Sebagai contoh, jika Anda mendefinisikan parameter VpcId dan vSwitchId dalam template dan menggunakan template untuk membuat instance Elastic Compute Service (ECS), ROS menampilkan nilai parameter dalam daftar drop-down di konsol. Kode sampel template:

    ROSTemplateFormatVersion: '2015-09-01'
    Parameters:
      VpcId:
        Type: String
        AssociationProperty: ALIYUN::ECS::VPC::VPCId
      ZoneId:
        Type: String
        AssociationProperty: ALIYUN::ECS::ZoneId
      VSwitchId:
        Type: String
        AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
        AssociationPropertyMetadata:
          ZoneId: ${ZoneId}
          VpcId: ${VpcId}

    Saat Anda menggunakan template sampel untuk membuat tumpukan, ROS menampilkan set parameter di konsol berdasarkan nilai yang dipilih untuk parameter.

    image

  • Kelompokkan parameter dengan tipe yang sama

    Anda dapat mengelompokkan parameter di bagian Metadata. Jika Anda mendefinisikan sejumlah besar parameter dalam template, Anda dapat mengelompokkan parameter berdasarkan karakteristik parameter untuk memfasilitasi konfigurasi parameter di Konsol ROS.

    Sebagai contoh, Anda dapat mengelompokkan ZoneId ke dalam Konfigurasi Dasar, dan mengelompokkan VpcCidrBlock dan VSwitchCidrBlock ke dalam Konfigurasi Sumber Daya. Anda dapat mendefinisikan Konfigurasi Dasar dan Konfigurasi Sumber Daya di bagian ParameterGroups dari Metadata. Kode sampel template:

    ROSTemplateFormatVersion: '2015-09-01'
    Parameters:
      ZoneId:
        Type: String
      VpcCidrBlock:
        Type: String
        Default: 192.168.0.0/16
      VSwitchCidrBlock:
        Type: String
        Default: 192.168.0.0/24
    Metadata:
      ALIYUN::ROS::Interface:
        ParameterGroups:
          - Parameters:
              - ZoneId
            Label:
              default: Konfigurasi Dasar
          - Parameters:
              - VpcCidrBlock
              - VSwitchCidrBlock
            Label:
              default: Konfigurasi Sumber Daya

    Saat Anda menggunakan template sampel untuk membuat tumpukan, ROS menampilkan bagian Konfigurasi Dasar dan Konfigurasi Sumber Daya di konsol untuk memungkinkan Anda mengonfigurasi parameter berdasarkan kelompok. image

Apa yang Harus Dilakukan Selanjutnya