Ringkasan Terraform

HashiCorp Terraform adalah alat infrastruktur sebagai kode (IaC) yang memungkinkan Anda menyediakan dan mengelola infrastruktur cloud. Terraform menyediakan plugin yang disebut penyedia yang memungkinkan Anda berinteraksi dengan penyedia cloud dan API lainnya. Untuk Google Distributed Cloud (GDC) dengan air gap, Anda harus menggunakan Penyedia Kubernetes untuk menyediakan resource karena tidak ada penyedia GDC dengan air gap tertentu untuk Terraform.

Resource GDC dapat dikelola oleh Penyedia Kubernetes dengan pengelolaan siklus proses penuh resource Kubernetes.

Operasi Penyedia Terraform
Buat

Penyedia Kubernetes
Baca
Memperbarui
Hapus T/A, gunakan terraform destroy

Cara kerja Terraform

Terraform memiliki sintaksis deklaratif dan berorientasi konfigurasi yang dapat Anda gunakan untuk mendeskripsikan infrastruktur yang ingin Anda sediakan di project GDC Anda. Setelah menulis konfigurasi ini di satu atau beberapa file konfigurasi Terraform, Anda dapat menggunakan Terraform CLI untuk menerapkan konfigurasi ini ke resource GDC Anda.

Langkah-langkah berikut menjelaskan cara kerja Terraform:

  1. Anda menjelaskan infrastruktur yang ingin Anda sediakan dalam file konfigurasi Terraform. Anda tidak perlu menulis kode yang menjelaskan cara menyediakan infrastruktur. Terraform menyediakan infrastruktur untuk Anda.

  2. Anda menjalankan perintah terraform plan, yang mengevaluasi konfigurasi Anda dan membuat rencana eksekusi. Anda dapat meninjau rencana dan melakukan perubahan sesuai kebutuhan.

  3. Anda menjalankan perintah terraform apply, yang melakukan tindakan berikut:

    1. Menyediakan infrastruktur Anda berdasarkan rencana eksekusi dengan memanggil API GDC dengan air gap yang sesuai di latar belakang.

    2. Membuat file status Terraform, yang merupakan file JSON yang memetakan resource dalam file konfigurasi Anda ke resource dalam infrastruktur dunia nyata. Terraform menggunakan file ini untuk menyimpan catatan status infrastruktur Anda yang terbaru, dan untuk menentukan kapan harus membuat, memperbarui, dan menghancurkan resource.

    3. Saat Anda menjalankan terraform apply, Terraform menggunakan pemetaan dalam file status untuk membandingkan infrastruktur yang ada dengan kode, dan melakukan pembaruan jika diperlukan:

      • Jika objek resource ditentukan dalam file konfigurasi, tetapi tidak ada dalam file status, Terraform akan membuatnya.

      • Jika objek resource ada dalam file status, tetapi memiliki konfigurasi yang berbeda dari file konfigurasi Anda, Terraform akan memperbarui resource agar sesuai dengan file konfigurasi Anda.

      • Jika objek resource dalam file status cocok dengan file konfigurasi Anda, Terraform tidak akan mengubah resource.

Resource Terraform untuk GDC dengan air gap

Resource adalah elemen dasar dalam bahasa Terraform. Setiap blok resource menjelaskan satu atau beberapa objek infrastruktur.

GDC dengan air gap dibangun di atas Kubernetes. Selain Kubernetes API inti seperti Node, PersistentVolume, dan Service, GDC dengan air gap juga mendukung CustomResourceDefinition API. Dengan menggunakan definisi resource kustom, API khusus GDC dibangun untuk merepresentasikan infrastruktur GDC dengan air gap.

Tabel berikut mencantumkan resource Terraform yang tersedia untuk GDC dengan air gap:

Resource Terraform Sumber data
kubernetes_manifest

Langkah berikutnya