Infrastructure Manager (Infra Manager) mengotomatiskan deployment dan pengelolaan resource infrastruktur Google Cloud menggunakan Terraform.
Infra Manager memungkinkan Anda men-deploy secara terprogram ke Google Cloud, sehingga Anda dapat menggunakan layanan ini, bukan mengelola toolchain yang berbeda untuk bekerja dengan Terraform di Google Cloud.
Konfigurasi Terraform menentukan infrastruktur. Konfigurasi di-deploy ke Google Cloud oleh Infra Manager, sehingga Anda dapat mengelola resource menggunakan Infrastructure as Code (IaC).
Infra Manager tidak mengelola deployment aplikasi ke resource Anda. Untuk mengelola deployment aplikasi, Anda dapat menggunakan produk Google Cloudseperti Cloud Build dan Cloud Deploy. Anda juga dapat menggunakan alat pihak ketiga atau toolchain Anda sendiri.
Untuk menggunakan Infra Manager, Anda harus memahami Terraform. Untuk mempelajari Terraform lebih lanjut, mulailah dengan artikel Apa yang dimaksud dengan Terraform? dari HashiCorp.
Untuk mempelajari Terraform dengan Google Cloudlebih lanjut, lihat Terraform di Google Cloud.
Infra Manager dan Infrastructure as Code
Infra Manager memungkinkan Anda menggunakan IaC untuk mengelola siklus proses resourceGoogle Cloud :
- Terraform ditentukan secara deklaratif dalam konfigurasi Terraform. Artinya, konfigurasi menjelaskan status akhir infrastruktur Anda.
- Anda dapat membuat versi konfigurasi Terraform di repositori Git, atau di bucket Cloud Storage. Gunakan Pembuatan Versi Objek untuk membuat versi konfigurasi di bucket penyimpanan.
- Gunakan Infra Manager untuk mengupdate deployment infrastruktur Anda
dengan revisi. Untuk setiap revisi, Infra Manager
menyimpan hal berikut:
- Log
- Konfigurasi yang digunakan untuk melakukan revisi
- Daftar Google Cloud resource yang dibuat oleh revisi
- File status yang dibuat sebagai bagian dari setiap deployment dan revisi
Lihat Infrastructure as Code di Google Cloud untuk mengetahui informasi selengkapnya tentang IaC.
Cara kerja Infra Manager
Berikut adalah deskripsi tentang apa yang terjadi dalam skenario sederhana saat Anda menggunakan Infra Manager untuk men-deploy infrastruktur.
- Resource infrastruktur yang akan di-deploy ke Google Cloud ditentukan dalam konfigurasi Terraform.
- Anda dapat membuat file ini sendiri, atau menggunakan konfigurasi yang sudah ditulis untuk Google Cloud. Lihat Terraform dan Infrastructure Manager untuk mengetahui detailnya.
- Anda dapat menyimpan konfigurasi Terraform di bucket Cloud Storage, repositori Git, atau di komputer lokal.
- Saat menggunakan Infra Manager untuk men-deploy resource dari konfigurasi Terraform, Anda akan membuat deployment. Untuk membuat deployment,
Infra Manager:
- Memvalidasi permintaan. Misalnya, ini memastikan bahwa dalam perintah Anda, Anda telah menentukan lokasi konfigurasi Terraform.
- Membuat tugas Cloud Build menggunakan image container. Gambar ini
milik dan dikelola oleh Google Cloud. Lihat
Lingkungan runtime untuk mengetahui detail tentang
lingkungan Cloud Build. Tugas Cloud Build mengotomatiskan
tugas berikut:
- Mendownload modul Terraform dari bucket penyimpanan atau repositori Git.
- Melakukan inisialisasi Terraform (
terraform init
) - Memvalidasi konfigurasi Terraform (
terraform validate
) - Mengaktifkan konfigurasi (
terraform apply
, atauterraform destroy
jika Anda menghapus deployment) - Menstreaming log Cloud Build ke dalam bucket penyimpanan yang dibuat oleh Infra Manager.
- Jika deployment gagal, Infra Manager akan otomatis mencoba ulang operasi
terraform init
atauterraform apply
dalam skenario tertentu, seperti jika gagal dengan pemadaman jaringan yang terputus-putus. Percobaan ulang ini dilakukan dalam jumlah terbatas.
- Membuat bucket Cloud Storage dan menyimpan metadata tentang deployment. Untuk informasi selengkapnya tentang deployment dan metadata, lihat Ringkasan deployment dan revisi.
Setelah deployment selesai, resource Google Cloud akan disediakan seperti yang dijelaskan dalam konfigurasi.
Anda dapat membuat kueri deployment Infra Manager untuk:
- Status deployment.
- Daftar resource yang di-deploy sebagai bagian dari deployment.
- Detail tentang setiap resource yang merupakan bagian dari deployment.
Lingkungan runtime
Lingkungan runtime Infra Manager adalah lingkungan Cloud Build sementara. Infra Manager menjalankan perintah Terraform di lingkungan Cloud Build ini, lalu lingkungan tersebut akan dihapus.
Sistem operasi tertentu, software yang tersedia, dan detail konfigurasi lainnya dari lingkungan Cloud Build adalah detail implementasi internal Infra Manager, dan dapat berubah kapan saja.
Anda dapat menentukan versi Terraform yang didukung yang akan digunakan untuk setiap deployment.
Jangan sertakan informasi pribadi atau sensitif
Jangan sertakan informasi pribadi atau sensitif dalam nilai konfigurasi Terraform.
Untuk informasi tambahan tentang konfigurasi Terraform dan data sensitif, lihat Nilai konfigurasi Terraform dan data sensitif.
Langkah selanjutnya
- Pelajari Terraform dengan Google Cloud lebih lanjut.
- Buat deployment.
- Memperbarui deployment.
- Mengotomatiskan deployment.
- Menghapus deployment.