0Pricing
DevOps Bootcamp · Ders

Ortamlar için Çalışma Alanlarını Kullanma

Aynı yapılandırma içinde farklı ortamlar (ör. geliştirme, hazırlık ve üretim) için ayrı durumları yönetmek üzere Terraform çalışma alanlarını keşfedin.

Ortamlar için Çalışma Alanlarını Kullanma, CoddyKit'te ücretsiz bir DevOps Bootcamp dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, DevOps Bootcamp öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. DevOps Bootcamp kursu toplamda 4 dersten oluşur.

Terraform Çalışma Alanları Nedir?

Terraform çalışma alanları, aynı Terraform yapılandırması için birden fazla, birbirinden bağımsız durumu yönetmenize yardımcı olur. Bunları 'dev', 'staging' veya 'prod' gibi ayrı ortamlar olarak düşünebilirsiniz.

Bu sayede, kodunuzu değiştirmeden altyapıyı farklı yerlere dağıtmak için tek bir .tf dosyası kümesi kullanabilir, yeniden kullanılabilirliği ve tutarlılığı artırabilirsiniz.

'default' Çalışma Alanı

Bir dizinde Terraform'u ilk kez başlattığınızda (terraform init kullanarak), otomatik olarak default çalışma alanını kullanırsınız.

Başka bir çalışma alanı oluşturup seçmediğiniz sürece, ilk terraform apply işlemlerinizin tümü durumlarını bu default çalışma alanında depolar. Bu çalışma alanı her zaman vardır!

Yeni Çalışma Alanları Oluşturma

Yeni bir ortam oluşturmak için terraform workspace new komutunu kullanın. Bu komut ayrıca mevcut bağlamınızı otomatik olarak yeni oluşturulan çalışma alanına geçirir.

Bir dev çalışma alanı oluşturalım:

terraform workspace new dev

Terraform daha sonra bu dev ortamı için ayrı bir durum oluşturur.

Kullanılabilir Çalışma Alanlarını Listeleme

Mevcut yapılandırma dizininizdeki tüm kullanılabilir çalışma alanlarını terraform workspace list komutunu kullanarak görebilirsiniz.

Şu anda etkin olan çalışma alanı bir yıldızla (*) işaretlenir; bu, farklı ortamlarınızı takip etmenize yardımcı olur.

terraform workspace list

Çalışma Alanları Arasında Geçiş Yapma

Mevcut çalışma alanları arasında geçiş yapmak için, ardından çalışma alanının adını yazarak terraform workspace select komutunu kullanın. Bu komut etkin ortamınızı değiştirir.

default çalışma alanına geri dönelim:

terraform workspace select default

Bundan sonraki Terraform işlemleri artık default ortamının durumunu hedefler.

'terraform.workspace' Kullanımı

Yerleşik terraform.workspace değişkenini kullanarak mevcut çalışma alanının adına başvurup yapılandırmalarınızı dinamik hâle getirebilirsiniz. Bu özellik, kaynakları adlandırmak veya ortama özgü etiketler ayarlamak için idealdir.

Bu örneği çalıştırmayı deneyin. Önce terraform init, ardından terraform workspace new dev ve son olarak terraform apply komutlarını çalıştırın. Paket adını ve etiketleri gözlemleyin.

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
}

Yalıtılmış Durum Dosyaları

Çalışma alanlarının en kritik özelliği, her birinin tamamen ayrı bir durum dosyasını korumasıdır.

Bu, aynı yapılandırma dosyalarıyla tanımlanmış olsalar bile dev çalışma alanında dağıtılan kaynakların prod çalışma alanındaki kaynakları etkilemeyeceği anlamına gelir. Terraform bu durum dosyalarını çalışma dizininizdeki gizli bir dizinde (.terraform/environments) yönetir.

Çalışma Alanlarını Silme

Bir ortama artık ihtiyaç duyulmadığında, terraform workspace delete <name> komutunu kullanarak o ortamın çalışma alanını silebilirsiniz.

  • Önemli: Şu anda etkin olan çalışma alanını silemezsiniz.
  • Kritik: Silmeden önce, terraform destroy kullanarak bu çalışma alanıyla ilişkili tüm kaynakları yok ettiğinizden daima emin olun. Aksi takdirde geride sahipsiz kaynaklar kalabilir!
terraform workspace select default
terraform workspace delete dev

Çalışma Alanları ve Ayrı Dizinler

Çalışma alanları aynı yapılandırmanın küçük farklılıkları için harika olsa da her zaman en iyi seçenek değildir. Şu noktaları değerlendirin:

  • Çalışma alanları: Aynı temel altyapı tasarımına sahip küçük ortam farklılıkları (ör. kaynak sayıları, etiketler) için idealdir.
  • Ayrı dizinler: Önemli ölçüde farklı altyapı tasarımları için veya farklı ekipler tamamen ayrı ortamları yönettiğinde daha uygundur.

Projenizin karmaşıklığına ve ekip yapınıza en uygun yaklaşımı seçin.

Çalışma Alanı Kontrolü

Terraform çalışma alanlarını öğrendiniz. Anlayışınızı test edelim.

Özet: Ortamlar için Çalışma Alanları

Harika iş çıkardınız! Tek bir yapılandırmadan birden fazla ortamı yönetmek için güçlü bir özellik olan Terraform çalışma alanlarını incelediniz. Şu temel noktaları hatırlayın:

  • Çalışma alanları, farklı ortamlar (ör. dev, prod) için yalıtılmış durum dosyaları sağlar.
  • Bunları yönetmek için terraform workspace new, list ve select komutlarını kullanın.
  • terraform.workspace değişkeni, dinamik ve ortama özgü yapılandırmalar yapmanızı sağlar.
  • Sahipsiz altyapı oluşmasını önlemek için bir çalışma alanını silmeden önce kaynakları daima yok edin.

Bu, esnek ve düzenli altyapı dağıtımı yapmanızı sağlar!

Sıkça Sorulan Sorular

“Ortamlar için Çalışma Alanlarını Kullanma” dersi ücretsiz mi?

Evet — “Ortamlar için Çalışma Alanlarını Kullanma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve DevOps Bootcamp kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. DevOps Bootcamp kursu toplamda 4 dersten oluşur.

“Ortamlar için Çalışma Alanlarını Kullanma” dersinde ne öğreneceğim?

Aynı yapılandırma içinde farklı ortamlar (ör. geliştirme, hazırlık ve üretim) için ayrı durumları yönetmek üzere Terraform çalışma alanlarını keşfedin. DevOps Bootcamp ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

DevOps Bootcamp öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te DevOps Bootcamp, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.

“Ortamlar için Çalışma Alanlarını Kullanma” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu DevOps Bootcamp dersinde kod yazıp çalıştırabilir miyim?

Evet. Her DevOps Bootcamp dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Terraform Modüllerine Giriş
  2. Yeniden Kullanılabilir Modüller Oluşturma
  3. Ortamlar için Çalışma Alanlarını Kullanma
  4. Modülleri Kayıt Defterinde Yayımlama
← DevOps Bootcamp Sayfasına Dön