All Products
Search
Document Center

CDN:Gunakan Terraform untuk menambahkan dan mengonfigurasi nama domain

Last Updated:Jul 02, 2025

Alibaba Cloud CDN terintegrasi dengan Terraform. Anda dapat menggunakan Terraform untuk menambahkan dan mengonfigurasi nama domain yang ingin dipercepat. Topik ini menjelaskan cara menambahkan nama domain ke CDN serta mengonfigurasinya.

Sebelum memulai

  • Sebelum menggunakan CDN, Anda harus mengaktifkan CDN. Untuk detail lebih lanjut, lihat Aktifkan CDN dan .

  • Gunakan pengguna RAM dengan izin minimum yang diperlukan untuk melakukan operasi dalam topik ini. Ini meminimalkan risiko kebocoran pasangan AccessKey akun Alibaba Cloud Anda. Untuk informasi tentang cara melampirkan kebijakan yang berisi izin minimum kepada pengguna RAM, lihat Buat Pengguna RAM dan Berikan Izin kepada Pengguna RAM. Dalam contoh ini, kebijakan berikut digunakan:

    {
      "Version": "1",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": [
            "cdn:AddCdnDomain",
            "cdn:DescribeCdnDomainDetail",
            "cdn:DescribeDomainCertificateInfo",
            "cdn:ListTagResources",
            "cdn:DeleteCdnDomain",
            "cdn:BatchSetCdnDomainConfig",
            "cdn:DescribeCdnDomainConfigs",
            "cdn:DeleteSpecificConfig"
          ],
          "Resource": "*"
        }
      ]
    }
  • Siapkan lingkungan Terraform. Anda dapat menggunakan salah satu metode berikut:

    • Gunakan Terraform di Terraform Explorer: Alibaba Cloud menyediakan Terraform Explorer, lingkungan runtime online untuk Terraform. Anda dapat menggunakan Terraform setelah masuk tanpa perlu menginstalnya. Untuk informasi lebih lanjut, lihat Gunakan Terraform di Terraform Explorer. Metode ini cocok untuk skenario di mana Anda ingin menggunakan dan men-debug Terraform dengan cepat dan nyaman tanpa biaya tambahan.

    • Gunakan Terraform di Cloud Shell: Terraform sudah diinstal sebelumnya di Cloud Shell dan kredensial identitas telah dikonfigurasi. Anda dapat langsung menjalankan perintah Terraform di Cloud Shell. Untuk informasi lebih lanjut, lihat Gunakan Terraform di Cloud Shell. Metode ini cocok untuk skenario di mana Anda ingin menggunakan dan men-debug Terraform dengan cepat dan nyaman dengan biaya rendah.

    • Instal dan konfigurasikan Terraform di mesin lokal Anda: Metode ini cocok untuk skenario di mana kondisi jaringan buruk atau lingkungan pengembangan kustom digunakan. Untuk informasi lebih lanjut, lihat Instal dan Konfigurasikan Terraform di PC Lokal.

Sumber daya yang digunakan

Catatan

Biaya akan timbul untuk sumber daya tertentu dalam contoh ini. Lepas atau berhenti berlangganan sumber daya tersebut ketika tidak lagi dibutuhkan.

Langkah 1: Tambahkan nama domain ke CDN

  1. Buat direktori kerja dan file bernama main.tf di direktori tersebut. Salin konten berikut ke file main.tf:

    resource "random_integer" "default" {
      min = 10000
      max = 99999
    }
    
    # Tambahkan nama domain.
    resource "alicloud_cdn_domain_new" "domain" {
      domain_name = "mycdndomain-${random_integer.default.result}.alicloud-provider.cn"
      cdn_type    = "download"
      scope       = "overseas"
      sources {
        content  = "myoss-${random_integer.default.result}.oss-rg-china-mainland.aliyuncs.com"
        type     = "oss"
        priority = "20"
        port     = 80
        weight   = "15"
      }
    }
  2. Jalankan perintah berikut untuk menginisialisasi lingkungan runtime Terraform:

    terraform init

    Jika informasi berikut dikembalikan, Terraform telah diinisialisasi:

    Menginisialisasi backend...
    Menginisialisasi plugin penyedia...
    ...
    Terraform telah berhasil diinisialisasi!
    ...
  3. Jalankan perintah berikut untuk menambahkan nama domain:

    terraform apply

    Selama eksekusi, masukkan yes sesuai petunjuk dan tekan tombol Enter. Tunggu hingga perintah dieksekusi. Jika informasi berikut muncul, nama domain telah ditambahkan.

    Catatan

    Jika pesan kesalahan "kode: 400, Verifikasi pemilik domain root gagal" muncul, nama domain ditambahkan ke CDN untuk pertama kalinya, dan Anda perlu memverifikasi kepemilikan nama domain. Untuk informasi lebih lanjut, lihat Verifikasi Kepemilikan Nama Domain.

    Anda dapat menerapkan rencana ini untuk menyimpan nilai keluaran baru ke status Terraform, tanpa mengubah infrastruktur nyata apa pun.
    
    Apakah Anda ingin melakukan tindakan ini?
      Terraform akan melakukan tindakan yang dijelaskan di atas.
      Hanya 'yes' yang akan diterima untuk menyetujui.
    
      Masukkan nilai: yes
    
    
    Penerapan selesai! Sumber daya: 2 ditambahkan, 0 diubah, 0 dihapus.

Langkah 2: Konfigurasikan aturan untuk nama domain

  1. Tambahkan konten berikut ke file main.tf.

    # Konfigurasikan daftar putih alamat IP untuk nama domain.
    resource "alicloud_cdn_domain_config" "config-ip" {
      domain_name   = alicloud_cdn_domain_new.domain.domain_name
      function_name = "ip_allow_list_set"
      function_args {
        arg_name  = "ip_list"
        arg_value = "192.168.0.1"
      }
    }
  2. Buat rencana eksekusi dan pratinjau perubahan.

    terraform plan
  3. Jalankan perintah berikut untuk mengonfigurasi IP address whitelist untuk nama domain:

    terraform apply

    Selama eksekusi perintah, ikuti petunjuk untuk mengetik yes dan tekan Enter. Tunggu hingga perintah selesai. Jika informasi berikut dikembalikan, aturan telah dikonfigurasi.

    Penerapan selesai! Sumber daya: 1 ditambahkan, 0 diubah, 0 dihapus.

Periksa hasilnya

Jalankan perintah terraform show

Jalankan perintah berikut untuk memeriksa sumber daya yang telah dibuat oleh Terraform:

terraform show

image

Masuk ke konsol CDN

Masuk ke Konsol CDN dan lihat daftar hitam dan daftar putih alamat IP yang dikonfigurasi untuk nama domain yang ditambahkan.

image

Bersihkan sumber daya

Jika Anda tidak lagi memerlukan sumber daya yang dibuat atau dikelola menggunakan Terraform, jalankan perintah berikut untuk melepaskan sumber daya. Untuk informasi lebih lanjut tentang perintah terraform destroy, lihat Perintah Umum.

terraform destroy

Contoh

Kode contoh

resource "random_integer" "default" {
  min = 10000
  max = 99999
}

# Tambahkan nama domain.
resource "alicloud_cdn_domain_new" "domain" {
  domain_name = "mycdndomain-${random_integer.default.result}.alicloud-provider.cn"
  cdn_type    = "download"
  scope       = "overseas"
  sources {
    content  = "myoss-${random_integer.default.result}.oss-rg-china-mainland.aliyuncs.com"
    type     = "oss"
    priority = "20"
    port     = 80
    weight   = "15"
  }
}

# Konfigurasikan daftar putih alamat IP untuk nama domain.
resource "alicloud_cdn_domain_config" "config-ip" {
  domain_name   = alicloud_cdn_domain_new.domain.domain_name
  function_name = "ip_allow_list_set"
  function_args {
    arg_name  = "ip_list"
    arg_value = "192.168.0.1"
  }
}

Jika Anda ingin mencoba lebih banyak contoh, kunjungi halaman quickstarts dan lihat contoh-contoh dalam folder layanan yang sesuai.