Menggunakan Ruang Kerja untuk Lingkungan
Pelajari ruang kerja Terraform untuk mengelola state terpisah bagi berbagai lingkungan (misalnya pengembangan, staging, dan produksi) dalam konfigurasi yang sama.
Menggunakan Ruang Kerja untuk Lingkungan adalah pelajaran Terraform Infrastructure as Code gratis di CoddyKit. Ini adalah pelajaran 3 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 Ruang Kerja Terraform?
Ruang kerja Terraform membantu Anda mengelola beberapa status berbeda untuk konfigurasi Terraform yang sama. Anggaplah ruang kerja sebagai lingkungan terpisah seperti 'dev', 'staging', atau 'prod'.
Dengan demikian, Anda dapat menggunakan satu kumpulan berkas .tf untuk menerapkan infrastruktur di tempat yang berbeda tanpa mengubah kode, sehingga penggunaan kembali dan konsistensi tetap terjaga.
Ruang Kerja 'default'
Saat pertama kali menginisialisasi Terraform di sebuah direktori (menggunakan terraform init), Anda otomatis menggunakan ruang kerja default.
Semua operasi terraform apply awal Anda akan menyimpan statusnya di ruang kerja default ini, kecuali Anda membuat dan memilih ruang kerja lain. Ruang kerja ini selalu tersedia!
Membuat Ruang Kerja Baru
Untuk membuat lingkungan baru, gunakan perintah terraform workspace new. Perintah ini juga otomatis mengalihkan konteks Anda saat ini ke ruang kerja yang baru dibuat.
Mari buat ruang kerja dev:
terraform workspace new devTerraform kemudian akan membuat status terpisah untuk lingkungan dev ini.
Melihat Daftar Ruang Kerja yang Tersedia
Anda dapat melihat semua ruang kerja yang tersedia di direktori konfigurasi saat ini menggunakan perintah terraform workspace list.
Ruang kerja yang sedang aktif akan ditandai dengan tanda bintang (*), sehingga Anda dapat melacak berbagai lingkungan Anda.
terraform workspace listBeralih Ruang Kerja
Untuk beralih di antara ruang kerja yang sudah ada, gunakan perintah terraform workspace select, diikuti nama ruang kerja. Perintah ini mengubah lingkungan aktif Anda.
Mari beralih kembali ke ruang kerja default:
terraform workspace select defaultSemua operasi Terraform berikutnya akan menargetkan status lingkungan default.
Menggunakan 'terraform.workspace'
Anda dapat membuat konfigurasi yang dinamis dengan merujuk nama ruang kerja saat ini menggunakan variabel bawaan terraform.workspace. Ini sangat cocok untuk menamai sumber daya atau menetapkan tag khusus lingkungan.
Cobalah menjalankan contoh ini. Pertama, jalankan terraform init, lalu terraform workspace new dev, dan terakhir terraform apply. Amati nama bucket dan tag-nya.
provider "aws" {
region = "us-east-1" # Or your preferred region
}
resource "aws_s3_bucket" "example" {
bucket = "my-unique-bucket-${terraform.workspace}-12345"
acl = "private"
tags = {
Environment = terraform.workspace
ManagedBy = "CoddyKit"
}
}
output "bucket_name" {
description = "Name of the S3 bucket created."
value = aws_s3_bucket.example.bucket
}Berkas Status yang Terisolasi
Aspek terpenting dari ruang kerja adalah setiap ruang kerja memiliki berkas status yang sepenuhnya terpisah.
Artinya, sumber daya yang diterapkan di ruang kerja dev tidak akan mengganggu sumber daya di ruang kerja prod, meskipun semuanya didefinisikan oleh berkas konfigurasi yang sama. Terraform mengelola berkas-berkas status ini di direktori tersembunyi (.terraform/environments) dalam direktori kerja Anda.
Menghapus Ruang Kerja
Saat suatu lingkungan tidak lagi diperlukan, Anda dapat menghapus ruang kerjanya menggunakan terraform workspace delete <name>.
- Penting: Anda tidak dapat menghapus ruang kerja yang sedang aktif.
- Sangat penting: Selalu pastikan Anda telah menghancurkan semua sumber daya yang terkait dengan ruang kerja tersebut menggunakan
terraform destroysebelum menghapusnya. Jika tidak, sumber daya yang terlantar mungkin tetap ada!
terraform workspace select default
terraform workspace delete devRuang Kerja vs. Direktori Terpisah
Meskipun ruang kerja sangat cocok untuk variasi kecil dari konfigurasi yang sama, ruang kerja tidak selalu menjadi pilihan terbaik. Pertimbangkan hal-hal berikut:
- Ruang kerja: Ideal untuk perbedaan kecil antarlingkungan (misalnya, jumlah sumber daya dan tag) dengan desain infrastruktur inti yang sama.
- Direktori terpisah: Lebih baik untuk desain infrastruktur yang sangat berbeda atau saat tim yang berbeda mengelola lingkungan yang sepenuhnya terpisah.
Pilih pendekatan yang paling sesuai dengan kompleksitas proyek dan struktur tim Anda.
Pemeriksaan Ruang Kerja
Anda telah mempelajari ruang kerja Terraform. Mari uji pemahaman Anda.
Rangkuman: Ruang Kerja untuk Lingkungan
Bagus sekali! Anda telah mempelajari ruang kerja Terraform, fitur yang ampuh untuk mengelola beberapa lingkungan dari satu konfigurasi. Ingatlah hal-hal penting berikut:
- Ruang kerja menyediakan berkas status terisolasi untuk lingkungan yang berbeda (misalnya, dev dan prod).
- Gunakan
terraform workspace new,list, danselectuntuk mengelolanya. - Variabel
terraform.workspacememungkinkan konfigurasi yang dinamis dan khusus lingkungan. - Selalu hancurkan sumber daya sebelum menghapus ruang kerja agar infrastruktur yang terlantar tidak tersisa.
Dengan demikian, penerapan infrastruktur dapat dilakukan secara fleksibel dan teratur!
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Menggunakan Ruang Kerja untuk Lingkungan” gratis?
Ya — teks lengkap “Menggunakan Ruang Kerja untuk Lingkungan” 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 “Menggunakan Ruang Kerja untuk Lingkungan”?
Pelajari ruang kerja Terraform untuk mengelola state terpisah bagi berbagai lingkungan (misalnya pengembangan, staging, dan produksi) dalam konfigurasi yang sama. 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 3 dari 4.
Berapa lama pelajaran “Menggunakan Ruang Kerja untuk Lingkungan” 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
- Pengantar Modul Terraform
- Membuat Modul yang Dapat Digunakan Ulang
- Menggunakan Ruang Kerja untuk Lingkungan
- Menerbitkan Modul ke Registri