İlginizi Çekebilir
  1. Ana Sayfa
  2. DevOps
  3. Terraform – Part 2 – Update Azure Resources

Terraform – Part 2 – Update Azure Resources

032219_0523_TerraformPa5.png

Bir önceki makalemde ile Azure platformu üzerinde resource oluşturmuştum. Bu makalemde ise oluşturduğum bu resource’lar üzerinde güncelleme işlemlerinin nasıl yapılacağından bahsedeceğim.

Terraform mimarisinde konfigürasyon dosyasının bulunduğu dizinde .tfstate uzantılı bir dosya bulunur. Bu dosya deploy edilen konfigürasyonlara ilişkin bilgiyi JSON formatında tutar. Bunu tutmasının sebebi bir sonra yapılacak konfigürasyon deployment’larında karşılaştırma yapmak içindir. Bu karşılaştırma sonrasında yapılan işlemin yeni bir resource oluşturmak mı, yoksa var olan bir resource’u update etmekmi olduğuna bu .tfstate uzantılı dosyaya bakılarak karar verilir.

Eğer deploy edilen resource’lar hedef platform üzerinde değişikliğe uğradıysa, .tfstate dosyası ve hedef konfigürasyon arasında farklılık var demektir. Bu durumda da terraform’un refresh komutu kullanılarak platform üzerinde yapılan değişiklik terraform state dosyasına sync edilir.

Şimdi bir örnek ile ilerleyelim. Bir önceki makalemin devamı şeklinde ilerleyeceğim. Bir önceki makalemde Terraform ile Azure platformu üzerinde bir adet resource group ve bir adet virtual network oluşturmuştum. Şimdi bu virtual network üzerinde bir adet subnet oluşturalım. Ayrıca virtual network’ü de belli etiketler ile tag’leyelim.

Aşağıdaki resimde görüldüğü üzere, Subnet yeni bir resource olarak eklenirken, tag’leme işlemi var olan virtual network resource’u üzerinde bir update işlemi olarak Terraform tarafından algınalacaktır.

Resim-1

Update işlemi öncesinde konfigürasyon üzerinde yapılan değişiklikleri kontrol etmek için execution plan’ı çalıştıralım. Bu işlemin sonucunda çıktı aşağıdaki gibi olacaktır.

Resimde de görüldüğü gibi, yeni oluşturulan resource’lar yeşil ile, update edilen resource’lar da sarı ile işaretlenmişdir. Gerekli kontroller yapıldıktan sonra deployment işlemine başlayabiliriz.

Resim-2

Deployment işlemi için “Apply” komutunu kullanarak konfigürasyonu Azure platformu üzerinde deploy edelim.

Resim-3

Deployment işlemi tamamlandığında şekilde işaretlediğim gibi yeni eklenen ve update edilen resource sayısınu komut çıktısında görebilirsiniz. Ayrıca yapılan konfigürasyon islemleride bu kısımda ayrıntılı olarak görünecektir.

Deployment işleminin ardından resource’lar kontrol edildiğinde eklediğimiz tagların update işlemi ile atandığını ve yeni eklenen subnetin virtual network üzerine eklendiğini görebilirsiniz.

Resim-4

Resim-5

Yaptığımız bu işlem basit bir konfigürasyon ekleme ve update etme işlemiydi. Daha komplex konfigürasyonlarda bu işlemler biraz daha kalabalık konfigürasyonlar içerebilir. Bu daha daha özenli kontrol mekanizmalarını gerektirir.

Bir sonraki bölümde değişkenler ile devam edeceğim.

Bu konuyla ilgili sorularınızı https://forum.mshowto.org linkini kullanarak ulaşacağınız forum sayfamızda sorabilirsiniz.

Referanslar

www.mshowto.org

https://www.terraform.io/

https://www.terraform.io/docs/providers/azurerm/index.html

TAGs: Terraform, , terraform nasıl kullanılır, , IAC, Compliance management, , Deploy Azure Resource with terraform, Deploy configuration with terraform, configuration as a code, , , , , terraform.exe, , ,

Yorum Yap

Yazar Hakkında

Sakarya doğumludur. İstanbul Üniversitesi’nde Matematik/Fen ve Teknoloji öğretmenliğini bitirmiştir. Yüksek lisansını Sakarya Üniversitesi Bilgisayar Mühendisliği’nde yapmıştır. Bilişim sektöründe çeşitli firmalarda sistem ve network sorumlusu olarak çalışmıştır. Bazı kurumlarda sistem ve network üzerine uzmanlık eğitimleri vermiştir. Şu anda Netaş şirketinde kurumsal danışman olarak görev yapmaktadır. Microsoft System Center ürünleri, Powershell ve Azure teknolojileri ile ilgilenmektedir. 2016 yılında Microsoft tarafından Cloud and Datacenter alanında MVP unvanını almıştır.

Yorum Yap