1. Anasayfa
  2. Teknoloji Bilgileri

Terraform Nedir? Terraform Nasıl Çalışır?

Terraform Nedir? Terraform Nasıl Çalışır?
Terraform Nedir?
0

Terraform Nedir: Terraform olayını duymuş olabilirsiniz ancak ne olduğundan tam olarak emin değilsiniz, değil mi? Korkmayın, sizin için araştırdık.

Bu makalenin sonunda Terraform’un ne demek olduğunu, neden yararlı olduğunu ve ne için kullanacağınızı anlayacaksınız.

Terraform Nedir?

Terraform, Hashicorp tarafından geliştirilen kod aracı şeklinde açık kaynaklı, CLI tabanlı bir altyapı sistemidir. Bu teknoloji buluttan ayrıdır ve tüm büyük bulut sağlayıcı hizmetlerinde çalışmaktadır: AWS, GCP ve Azure. Hashicorp’un Terraform ile ücretli sunulan çözümü Terraform Cloud ile aynı değildir.

Terraform, farklı hizmetlerle entegre olmak için “sağlayıcılar” kullanmaktadır. Terraform’un (genellikle bulut uygulamaları) merkezi kullanım durumları için birçok sağlayıcı zaten mevcuttur. Ayrıca, Stripe ve Auth0 gibi diğer popüler satıcıların Terraform’da yönetilmesine izin veren daha az bilinen sağlayıcılara da sahiptir.

Terraform Neden Kullanışlı

Terraform’un neden yararlı olduğunu anlamak için altyapı ilkelerini kod olarak anlamamız gerekir. Kod olarak altyapı, tek başına bu makalede ele alınamayacak kadar büyük bir konu. Öyleyse süper hızlı bir tur yapalım…

Altyapıya kod olarak anti-tez ile başlayalım: altyapınızı manuel olarak oluşturmak ve güncellemek. Altyapıyı manuel olarak oluşturulduğunda, bilgi bireylerin kafasına hapsolur ve gelecekteki güncellemeler korkutucu, tekrarlanamaz, zor ve belgelenmemiş olur.

Ancak kod olarak altyapının yardımcı olabileceği yer burasıdır. Mühendisler, altyapı yapılandırmalarını kodda depolayarak ve manuel olarak değişiklik yapmayarak, altyapı değişikliklerine kod incelemesi gibi süreçler uygulayabilir. Kod, dokümantasyon görevi görür ve bir değişiklik geçmişi olur.

Terraform, altyapının kod olarak uygulanmasına yardımcı olan bir araçtır. Bu nedenle Terraform’un faydaları bir şekilde eş anlamlıdır. Konfigürasyonları sürüm kontrolünde saklayabilir, değişiklikleri güvenli ve tekrarlanabilir bir şekilde uygulayabilirsiniz.

Terraform Nasıl Çalışır?

Terraform’un faydalarını tartıştık, peki gerçekte nasıl çalışıyor? Onunla çalışmak neye benziyor? Şimdi buna bakalım.

Terraform, kaynak yapılandırmalarını HCL’de (Terraform’un dili) yazarak çalıştırmaktadır. Bu kaynak blokları sağlayıcı aracılığıyla belirlenmektedir fakat hepsi aynı model ve yapıya uymaktadır.

Konfigürasyon yazıldığında, mühendis bir Terraform plan komutunu çalıştıracaktır. Bir Terraform planı, özünde, değişiklikler doğrudan uygulandığında yapılacak değişiklikleri gösteren bir kontroldür.

Mühendis değişikliklerden memnun kaldığında, değişiklikleri uygulayabilmek için bir Terraform uygulama komutu çalıştırabilir. Daha sonra temel sağlayıcıyı tetikleyerek ve altyapı kaynaklarını güncellemeye, oluşturmaya veya silmeye başlar.

Testisler Hakkında Bilinmesi Gereken 8 Tuhaf Gerçek

thumbnail
Önerilen Yazı
Testisler Hakkında Bilinmesi Gereken 8 Tuhaf Gerçek

Terraform’un Zorlukları

Buraya kadar Terraform’un ne olduğunu daha iyi anladınız. Ancak, Terraform’u kullanmanın zorluklarını da tartışmazsak, size resmin tamamını veremeyiz. Hadi şimdi bunu ele alalım.

1. Zorluk: Başarısız Komutları Yönetme

Bu teknoloji CLI tabanlıdır, yani Terraform’u çalıştırmak için kendi makinenizde veya sunucunuzda komutları yürütmeniz gerekir. Ancak komutları yönetmek zor olabilir, özellikle bir komut yürütme sırasında kısmen başarısız olursa, bu Terraform’u bilinmeyen bir duruma sokabilir, bu da hata ayıklama ve geri alma konusunda sıkıntı yaratabilir.

Buna karşılık, CloudFormation benzeri yönetilen hizmetler ortak yürütme sorununu yaşamaz. Peki neden? Çünkü CloudFormation komutları, barındırılan hizmetlerde çalıştırılır (makinenizde değil). Bu, barındırılan hizmetler üzerinde çalışarak, yönetilen hizmetlerin Terraform’un (CLI) garanti edemeyeceği kullanılabilirliği ve hata toleransını sağladığı anlamına gelir.

2. Zorluk: Durum Dosyalarını Kurmak

Terraform, bir durum dosyasını ile çalışır. Durum dosyası, sağlanan hizmetleri değiştiren herhangi bir komut yürütüldüğünde güncellenmektedir. Durum dosyası, Terraform’un bağımlılıkları anlamasına ve gerçek dünya altyapısını bağlamasına yardımcı olur.

Ancak durum dosyasını kurmak zor olabilmektedir. Durum dosyasını sürüm denetiminde depoladığınız takdirde, sırları ortaya çıkarma ve bir güvenlik zaafiyeti oluşturma riskiyle karşılaşabilirsiniz.

Bu Yazıya Tepkiniz Ne Oldu?
  • 1
    be_endim
    Beğendim
  • 0
    alk_l_yorum
    Alkışlıyorum
  • 0
    e_lendim
    Eğlendim
  • 0
    d_nceliyim
    Düşünceliyim
  • 0
    bay_ld_m
    Bayıldım

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir