moved ve removed ile Durumu Yeniden Düzenleme
Durum değiştirme komutlarını ve bildirime dayalı moved ve removed bloklarını kullanarak altyapıyı yok etmeden kaynakları güvenle yeniden adlandırın ve yeniden yapılandırın.
moved ve removed ile Durumu Yeniden Düzenleme, CoddyKit'te ücretsiz bir DevOps Bootcamp dersidir. Bu, 4 dersinin 4. 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.
Yeniden Adlandırma Sorunu
Yapılandırmanızda bir kaynağı yeniden adlandırdığınızda Terraform, eski adresin ortadan kalktığını ve yeni bir adresin ortaya çıktığını görür. Varsayılan olarak kaynağı yok eder ve yeniden oluşturur; bu da hizmet kesintisine veya veri kaybına yol açabilir.
Durumu yeniden düzenleme araçları, Terraform'a kaynağın yalnızca taşındığını söylemenizi sağlar.
Durumu İnceleme
Önce durumda izlenenleri listeleyin. terraform state list komutu, yönetilen tüm kaynak adreslerini gösterir.
terraform state listBuyurgan state mv
Klasik yaklaşım, durumdaki bir kaynağın adresini yeniden yazan terraform state mv komutudur. Burada bir örneği aws_instance.web adresinden aws_instance.app adresine yeniden adlandırıyoruz.
terraform state mv aws_instance.web aws_instance.appstate mv Komutunun Dezavantajı
state mv, elle bir kez çalıştırılan bir CLI işlemidir. Kodda kaydedilmediği için aynı değişikliği kendi makinelerinde yapan ekip arkadaşlarının işlemi tekrarlaması gerekir. Bu, iş birliğine dayalı iş akışlarında hataya açıktır.
Bildirimsel moved Blokları
moved bloğu, yeniden adlandırmayı yapılandırmanızda kaydeder. Terraform bunu bir sonraki plan sırasında herkes için otomatik olarak uygular; daha sonra bloğu kaldırabilirsiniz.
moved {
from = aws_instance.web
to = aws_instance.app
}Modüle Taşıma
moved blokları, kaynakları bir modül içine almayı da yönetir. Hedef adres, modül yolunu içerir.
moved {
from = aws_instance.app
to = module.compute.aws_instance.app
}Planla Doğrulama
Bir moved bloğu ekledikten sonra terraform plan komutunu çalıştırın. Doğru bir taşıma, yok etme veya oluşturma işlemi göstermez; yalnızca adres değişikliği gösterir. Hâlâ bir değiştirme görüyorsanız blok yanlıştır.
terraform planDurumdan Kaldırma
Bazen gerçek altyapıyı yok etmeden Terraform'un bir kaynağı yönetmeyi bırakmasını istersiniz. Buyurgan komut terraform state rm komutudur.
terraform state rm aws_instance.legacyBildirimsel removed Blokları
Daha yeni Terraform sürümleri bir removed bloğunu destekler. lifecycle { destroy = false } ile kaynak durumdan unutulur ancak gerçek altyapıya dokunulmaz.
removed {
from = aws_instance.legacy
lifecycle {
destroy = false
}
}Durum Dosyalarını Bölme
Büyük projelerde terraform state mv -state-out, kaynakları ayrı durum dosyaları arasında taşıyabilir. Bu, tek parçalı bir yapıyı bağımsız olarak uygulanan yığınlara bölmek için kullanışlıdır.
terraform state mv -state-out=network.tfstate \
aws_vpc.main aws_vpc.mainYedekler ve Güvenlik
Terraform, durumu değiştirmeden önce bir .backup dosyası yazar. Yine de uzak arka uçlarla çalışırken, bozulmayı önlemek için el ile yapılan işlemlerden önce durumun bir ekip arkadaşı tarafından kilitlenmediğini her zaman doğrulayın.
Kısa Kontrol
Yeniden düzenleme bilginizi test edin.
Özet: Güvenli Durum Yeniden Düzenleme
Artık altyapıyı yok etmeden yeniden yapılandırabilirsiniz:
- Buyurgan değişiklikler için
state mv/state rm. - Bildirimsel yeniden adlandırmalar için
movedblokları. - Yok etmeden unutmak için
removedblokları. - Her zaman, değiştirme göstermeyen bir planla doğrulama yapın.
Yapay zeka eğitmeniyle DevOps Bootcamp öğren — ücretsiz
Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.
- Kurslar
- 142
- Dersler
- 568
Sıkça Sorulan Sorular
“moved ve removed ile Durumu Yeniden Düzenleme” dersi ücretsiz mi?
Evet — “moved ve removed ile Durumu Yeniden Düzenleme” 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.
“moved ve removed ile Durumu Yeniden Düzenleme” dersinde ne öğreneceğim?
Durum değiştirme komutlarını ve bildirime dayalı moved ve removed bloklarını kullanarak altyapıyı yok etmeden kaynakları güvenle yeniden adlandırın ve yeniden yapılandırın. 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 4. dersidir.
“moved ve removed ile Durumu Yeniden Düzenleme” 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
- Uzak Durum Arka Uçları
- Durum Kilitleme ve Tutarlılık
- Mevcut Kaynakları İçe Aktarma
- moved ve removed ile Durumu Yeniden Düzenleme