0Pricing
Terraform Infrastructure as Code · Pelajaran

Mengelola Penyimpangan State dan Rekonsiliasi

Deteksi, diagnosis, dan rekonsiliasi penyimpangan—perbedaan antara state Terraform dan infrastruktur nyata—sebelum menyebabkan penghentian layanan atau perubahan tak terduga.

Mengelola Penyimpangan State dan Rekonsiliasi adalah pelajaran Terraform Infrastructure as Code gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Terraform Infrastructure as Code, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Terraform Infrastructure as Code mencakup 4 pelajaran total.

Apa Itu Perubahan Menyimpang?

Perubahan menyimpang terjadi saat infrastruktur nyata berubah di luar Terraform, seorang teknisi mengubah pengaturan di konsol, atau perkakas lain memodifikasi sumber daya. Kini status dan kondisi nyata tidak lagi sesuai, dan apply berikutnya mungkin secara tidak terduga mengembalikan atau menimpa perubahan tersebut.

Mendeteksi Perubahan Menyimpang dengan plan

terraform plan biasa akan menyegarkan status dan menampilkan perbedaan. Jika suatu sumber daya mengalami perubahan menyimpang, plan melaporkan perubahan yang tidak Anda buat dalam kode.

terraform plan

Plan Hanya untuk Penyegaran

Untuk melihat perubahan menyimpang tanpa mengusulkan perubahan konfigurasi, gunakan plan hanya untuk penyegaran. Plan ini memperbarui status agar sesuai dengan kondisi nyata dan menampilkan perbedaannya.

terraform plan -refresh-only

Membaca Laporan Perubahan Menyimpang

Terraform menandai atribut yang berubah menyimpang beserta perubahan yang dideteksinya. Tanda tilde menunjukkan perubahan di tempat; pasangan tanda minus/plus menunjukkan bahwa suatu nilai ditambahkan atau dihapus di luar Terraform.

# aws_instance.web has changed
  ~ instance_type = "t3.micro" -> "t3.small"

Dua Cara untuk Menyelaraskan

Saat menemukan perubahan menyimpang, Anda harus memilih arah:

  • Menerima kondisi nyata — perbarui kode agar sesuai dengan status baru.
  • Memulihkan kode — lakukan apply untuk mengembalikan infrastruktur ke kondisi yang dinyatakan konfigurasi.

Menerima Perubahan Menyimpang ke dalam Status

Jika perubahan manual tersebut disengaja, jalankan apply -refresh-only untuk mencatat kondisi nyata dalam status, lalu perbarui kode agar sesuai sehingga plan berikutnya bersih.

terraform apply -refresh-only

Mengembalikan Perubahan Menyimpang

Jika perubahan tersebut tidak sah, terraform apply biasa akan mengembalikan infrastruktur ke konfigurasi yang dinyatakan dan membatalkan perubahan manual itu.

terraform apply

Menargetkan Satu Sumber Daya

Untuk perbaikan terarah, -target membatasi operasi pada satu sumber daya. Gunakan seperlunya karena opsi ini dapat menyamarkan perubahan menyimpang yang lebih luas.

terraform apply -target=aws_instance.web

Mencegah Perubahan Menyimpang yang Tidak Perlu

Beberapa atribut dikelola oleh AWS atau perkakas lain. Gunakan ignore_changes agar Terraform berhenti berkonflik dalam mengelolanya.

resource "aws_instance" "web" {
  lifecycle {
    ignore_changes = [tags["LastScanned"]]
  }
}

Deteksi Perubahan Menyimpang Berkelanjutan

Deteksi perubahan menyimpang lebih awal dengan menjalankan plan terjadwal yang hanya menyegarkan status dalam CI. Terraform Cloud menyediakan deteksi perubahan menyimpang bawaan yang memberi tahu saat status dan kondisi nyata berbeda.

on:
  schedule:
    - cron: "0 6 * * *"

Budaya Lebih Penting daripada Perkakas

Pencegahan perubahan menyimpang yang terbaik adalah proses: batasi akses tulis ke konsol, arahkan semua perubahan melalui Terraform, dan perlakukan perubahan manual sebagai insiden. Perkakas mendeteksi perubahan menyimpang; kedisiplinan mencegahnya.

Pemeriksaan Singkat

Uji pengetahuan Anda tentang pengelolaan perubahan menyimpang.

Ringkasan: Menjaga Keakuratan Status

Sekarang Anda dapat menangani perubahan menyimpang:

  • Deteksi dengan plan atau plan -refresh-only.
  • Terima melalui apply -refresh-only dan pembaruan kode.
  • Kembalikan dengan apply biasa.
  • Gunakan ignore_changes dan pemeriksaan terjadwal untuk tetap mengantisipasinya.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Mengelola Penyimpangan State dan Rekonsiliasi” gratis?

Ya — teks lengkap “Mengelola Penyimpangan State dan Rekonsiliasi” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Terraform Infrastructure as Code, upgrade ke CoddyKit PRO. Kursus Terraform Infrastructure as Code mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Mengelola Penyimpangan State dan Rekonsiliasi”?

Deteksi, diagnosis, dan rekonsiliasi penyimpangan—perbedaan antara state Terraform dan infrastruktur nyata—sebelum menyebabkan penghentian layanan atau perubahan tak terduga. Kamu berlatih Terraform Infrastructure as Code dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Terraform Infrastructure as Code?

Tidak diperlukan pengalaman sebelumnya. Terraform Infrastructure as Code di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.

Berapa lama pelajaran “Mengelola Penyimpangan State dan Rekonsiliasi” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Terraform Infrastructure as Code ini?

Ya. Setiap pelajaran Terraform Infrastructure as Code menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Men-debug Konfigurasi Terraform
  2. Strategi Optimasi Performa
  3. Pemulihan Bencana dengan Terraform
  4. Mengelola Penyimpangan State dan Rekonsiliasi
← Kembali ke Terraform Infrastructure as Code