All Products
Search
Document Center

Tablestore:Buat instans Tablestore menggunakan Terraform

Last Updated:Mar 01, 2026

Tablestore terintegrasi dengan Terraform, alat Infrastructure as Code (IaC) open source. Dengan Terraform, Anda dapat mendefinisikan dan menyediakan instans Tablestore secara terprogram, bukan melalui Konsol.

Topik ini mencakup penulisan konfigurasi Terraform, penerapannya untuk membuat instans, verifikasi hasil, dan pembersihan.

Catatan

Jalankan kode contoh dari topik ini secara langsung di Terraform Explorer.

Prasyarat

Sebelum memulai, pastikan Anda telah memiliki:

  • Pengguna RAM dengan izin minimum yang diperlukan. Untuk mengurangi risiko kebocoran Pasangan Kunci Akses Akun Alibaba Cloud Anda, gunakan pengguna RAM alih-alih akun root. Untuk informasi selengkapnya, lihat Buat pengguna RAM dan Berikan izin kepada pengguna RAM. Lampirkan kebijakan berikut ke pengguna RAM:

      {
        "Version": "1",
        "Statement": [
          {
            "Effect": "Allow",
            "Action": [
              "ots:GetInstance",
              "ots:BindInstance2Vpc",
              "ots:ListVpcInfoByInstance",
              "ots:UnbindInstance2Vpc",
              "ots:DeleteInstance",
              "ots:InsertInstance",
              "ots:UpdateInstance",
              "ots:ListInstance"
            ],
            "Resource": "*"
          }
        ]
      }
  • Lingkungan runtime Terraform yang telah disiapkan melalui salah satu metode berikut:

    • Terraform Explorer (disarankan): Lingkungan runtime online yang disediakan oleh Alibaba Cloud. Tidak perlu instalasi. Paling cocok untuk eksperimen cepat tanpa biaya tambahan.

    • Cloud Shell: Terraform telah diprinstal dan kredensial telah dikonfigurasi sebelumnya. Paling cocok untuk sesi debugging cepat dengan biaya rendah.

    • Instalasi lokal: Instal dan konfigurasikan Terraform pada mesin lokal Anda. Paling cocok untuk lingkungan pengembangan kustom atau kondisi jaringan terbatas.

Sumber daya yang diperlukan

Konfigurasi ini menggunakan sumber daya Terraform berikut:

Referensi argumen

Sumber daya alicloud_ots_instance mendukung argumen berikut:

ArgumenWajibDeskripsiContoh
nameYaNama instans. Harus unik dalam wilayah tersebut. Menambahkan sufiks acak mencegah tabrakan nama saat rollback.tf-example-12345
descriptionTidakDeskripsi instance.tf-example
accessed_byTidakJenis jaringan yang diizinkan mengakses instans. Nilai yang valid: Any, Vpc, ConsoleOrVpc.Vpc
tagsTidakPeta tag yang akan ditetapkan ke instans.{ Created = "TF" }

Prosedur

Langkah 1: Tulis konfigurasi

Buat direktori kerja dan file bernama main.tf. Tambahkan konfigurasi berikut:

variable "name" {
  default = "tf-example"
}

variable "region" {
  default = "cn-hangzhou"
}

provider "alicloud" {
  region = var.region
}

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

# Buat instans Tablestore dengan sufiks acak untuk memastikan keunikan nama
resource "alicloud_ots_instance" "default" {
  name        = "${var.name}-${random_integer.default.result}"
  description = var.name
  accessed_by = "Vpc"
  tags = {
    Created = "TF"
    For     = "Building table"
  }
}

Sumber daya random_integer menambahkan sufiks acak ke nama instans. Hal ini mencegah tabrakan nama jika Anda perlu menghapus dan membuat ulang instans, karena nama instans Tablestore harus unik dalam suatu wilayah dan instans yang dihapus memerlukan waktu hingga benar-benar dilepas.

Langkah 2: Inisialisasi Terraform

Jalankan perintah berikut untuk mengunduh plugin provider yang diperlukan:

terraform init

Output yang diharapkan:

Terraform has been successfully initialized!

You may now begin working with Terraform. Try running "terraform plan" to see
any changes that are required for your infrastructure. All Terraform commands
should now work.

If you ever set or change modules or backend configuration for Terraform,
rerun this command to reinitialize your working directory. If you forget, other
commands will detect it and remind you to do so if necessary.

Langkah 3: Terapkan konfigurasi

Jalankan perintah berikut untuk membuat instans:

terraform apply

Saat diminta, ketik yes dan tekan Enter untuk mengonfirmasi. Output yang diharapkan:

You can apply this plan to save these new output values to the Terraform state, without changing any real infrastructure.

Do you want to perform these actions?
  Terraform will perform the actions described above.
  Only 'yes' will be accepted to approve.

  Enter a value: yes


Apply complete!  Resources: 2 added, 0 changed, 0 destroyed.

Langkah 4: Verifikasi hasil

Gunakan salah satu metode berikut untuk memastikan bahwa instans telah dibuat:

Opsi A: Jalankan terraform show

terraform show

Output menampilkan detail instans, termasuk nama, deskripsi, dan jenis akses jaringan.

Opsi B: Periksa Konsol Tablestore

Masuk ke Konsol Tablestore. Pada halaman All Instances, verifikasi bahwa instans baru muncul dalam daftar.

Pembersihan

Untuk menghapus instans dan semua sumber daya terkait yang dikelola oleh konfigurasi ini, jalankan:

terraform destroy

Saat diminta, ketik yes dan tekan Enter untuk mengonfirmasi. Output yang diharapkan:

Plan: 0 to add, 0 to change, 2 to destroy.

Do you really want to destroy all resources?
  Terraform will destroy all your managed infrastructure, as shown above.
  There is no undo. Only 'yes' will be accepted to confirm.

  Enter a value: yes
  ...
  Destroy complete!  Resources: 2 destroyed.

Untuk informasi selengkapnya tentang terraform destroy dan perintah lainnya, lihat Perintah umum.

Contoh lainnya

Untuk contoh Terraform tambahan di berbagai layanan Alibaba Cloud, lihat repositori landing-with-terraform quickstarts.

FAQ

Bagaimana cara menghindari tabrakan nama dalam alur kerja multi-layanan?

Nama instans Tablestore harus unik dalam suatu wilayah, dan penghapusan instans tidak serta-merta membebaskan nama tersebut. Jika alur kerja Anda melakukan rollback setelah membuat instans Tablestore, menjalankan ulang dengan nama instans yang sama akan gagal karena instans sebelumnya mungkin masih dalam proses penghapusan.

Tambahkan sufiks acak atau ID auto-increment ke setiap nama instans sehingga setiap eksekusi menghasilkan nama yang unik. Kode contoh dalam topik ini telah melakukannya dengan sumber daya random_integer.