Ringkasan Infrastructure Manager

Infrastructure Manager (Infra Manager) adalah layanan terkelola yang menyederhanakan dan mengotomatiskan deployment dan pengelolaan resource infrastruktur Google Cloud Anda. Dengan menggunakan konfigurasi Terraform (juga disebut blueprint), Infra Manager menyediakan toolchain Google Cloud terkelola untuk menerapkan alur kerja Infrastructure as Code (IaC).

Dengan Infra Manager, Anda dapat:

  • Tentukan infrastruktur Anda secara deklaratif menggunakan Terraform.
  • Deploy konfigurasi Terraform yang disimpan di bucket Cloud Storage, repositori Git, atau direktori lokal Anda.
  • Mengelola siklus proses infrastruktur Anda melalui deployment dan revisi.
  • Buat deployment pratinjau untuk melihat pengaruh perubahan terhadap infrastruktur Anda sebelum menerapkannya.
  • Gunakan integrasi dengan Cloud Build untuk alur kerja otomatis.

Infra Manager tidak mengelola deployment aplikasi ke resource Anda. Untuk deployment aplikasi, pertimbangkan untuk menggunakan Google Cloud produk seperti App Lifecycle Manager, Cloud Build, dan Cloud Deploy, atau alat pihak ketiga.

Untuk menggunakan Infra Manager, Anda harus memahami Terraform. Untuk mempelajari lebih lanjut Terraform dengan Google Cloud, lihat Terraform di Google Cloud.

Untuk mempelajari lebih lanjut apa itu Terraform dan cara kerjanya, lihat What is Terraform? dari HashiCorp.

Infra Manager dan Infrastructure as Code

Infra Manager memungkinkan Anda menggunakan IaC untuk mengelola siklus proses resourceGoogle Cloud :

  • Terraform didefinisikan secara deklaratif dalam konfigurasi Terraform. Artinya, konfigurasi tersebut 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 resource Google Cloud 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.

Menyesuaikan deployment menggunakan nilai input

Anda dapat membuat parameter konfigurasi Terraform dengan variabel input Terraform, yang disebut oleh Infra Manager sebagai nilai input. Nilai input memungkinkan Anda menyesuaikan deployment sekaligus menggunakan kembali konfigurasi yang sama di beberapa lingkungan atau deployment tanpa mengubah kode sumber konfigurasi Terraform. Anda dapat memberikan nilai untuk variabel yang diperlukan yang tidak memiliki nilai default, atau mengganti nilai default yang ada.

Anda dapat meneruskan nilai input saat membuat, memperbarui, atau melihat pratinjau deployment. Untuk mengetahui informasi selengkapnya tentang cara menentukan dan menggunakan variabel input di Terraform, lihat dokumentasi variabel input HashiCorp.

Cara kerja Infra Manager

Berikut adalah deskripsi tentang apa yang terjadi dalam skenario saat Anda menggunakan Infra Manager untuk men-deploy infrastruktur:

  1. 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 Anda.
  2. Saat menggunakan Infra Manager untuk men-deploy resource dari konfigurasi Terraform, Anda membuat deployment. Untuk membuat deployment, Infra Manager:
    1. Memvalidasi permintaan. Misalnya, perintah ini memastikan bahwa dalam perintah Anda, Anda menentukan lokasi konfigurasi Terraform.
    2. Membuat tugas Cloud Build menggunakan image container. Image ini dimiliki dan dikelola oleh Google Cloud. Lihat Lingkungan runtime untuk mengetahui detail tentang lingkungan Cloud Build. Tugas Cloud Build mengotomatiskan tugas-tugas berikut:
      1. Mendownload modul Terraform dari bucket penyimpanan atau repositori Git.
      2. Melakukan inisialisasi Terraform (terraform init)
      3. Memvalidasi konfigurasi Terraform (terraform validate)
      4. Mengaktifkan konfigurasi (terraform apply, atau terraform destroy jika Anda menghapus deployment)
      5. Melakukan streaming log Cloud Build ke bucket penyimpanan yang dibuat oleh Infra Manager.
      6. Jika deployment gagal, Infra Manager akan otomatis mencoba ulang operasi terraform init atau terraform apply dalam skenario tertentu, seperti jika gagal karena pemadaman jaringan yang terputus-putus. Percobaan ulang ini dilakukan dalam jumlah terbatas.
    3. Membuat bucket Cloud Storage dan menyimpan metadata tentang deployment. Untuk mengetahui informasi selengkapnya tentang deployment dan metadata, lihat Ringkasan deployment dan revisi.
  3. Setelah deployment selesai, resource Google Cloud akan disediakan sesuai dengan deskripsi konfigurasi.

    Anda dapat mengkueri 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 sewaktu-waktu.

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 berikutnya