0Pricing
DevOps Bootcamp · Ders

Terraform Yerleşik İşlevleri

Yapılandırmalarınızı geliştirmek için dize işleme, liste işleme, tür dönüştürme ve daha fazlasına yönelik Terraform'un çok çeşitli yerleşik işlevlerini keşfedin.

Terraform Yerleşik İşlevleri, CoddyKit'te ücretsiz bir DevOps Bootcamp dersidir. Bu, 4 dersinin 2. 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.

Dinamik Yapılandırmaların Kilidini Açın

Terraform'un yerleşik işlevleri, değerleri doğrudan yapılandırma dosyalarınız içinde işlemenize ve dönüştürmenize yardımcı olan küçük programlar gibidir.

Dinamik, yeniden kullanılabilir ve daha akıllı altyapı tanımları oluşturmanıza olanak tanırlar.

  • Verileri dönüştürün: Karakter dizelerini, sayıları veya listeleri değiştirin.
  • Değerleri hesaplayın: Hesaplamalar veya mantıksal denetimler gerçekleştirin.
  • Dinamik içerik oluşturun: Kaynak adlarını veya etiketlerini anında oluşturun.

Metin Dönüşümleri

Karakter dizisi işlevleri, metinleri değiştirmek için gereklidir. Temel işlevlerden ikisi olan upper() ve lower(), bir karakter dizisinin büyük-küçük harf kullanımını değiştirir.

Bu işlevler, adlandırma kurallarını standartlaştırmak veya belirli gereksinimleri karşılaştırmak için kullanışlıdır.

variable "region_code" {
  type    = string
  default = "us-east-1"
}

output "upper_region" {
  value = upper(var.region_code)
}

output "lower_example" {
  value = lower("AWS_REGION")
}

Karakter Dizelerini Birleştirme ve Bölme

join() işlevi, bir listede bulunan öğeleri belirtilen ayırıcıyı kullanarak tek bir karakter dizisinde birleştirir. Buna karşılık split(), bir karakter dizisini ayırıcıya göre alt karakter dizilerinden oluşan bir listeye böler.

Bunlar, verileri ayrıştırmak veya karmaşık adlar oluşturmak için güçlü işlevlerdir.

variable "tags_list" {
  type    = list(string)
  default = ["web", "frontend", "prod"]
}

output "joined_tags" {
  value = join(",", var.tags_list)
}

output "split_string" {
  value = split("-", "server-01-app")
}

Yapılandırmalarınızda Matematik

Sayısal işlevler, temel matematiksel işlemleri gerçekleştirmenize yardımcı olur. ceil() yukarı yuvarlar, floor() aşağı yuvarlar, min()/max() ise bir kümedeki en küçük ve en büyük değerleri bulur.

Kaynak sayılarını veya boyutlarını hesaplamak için çok kullanışlıdır.

variable "instance_ratio" {
  type    = number
  default = 3.7
}

output "rounded_up_instances" {
  value = ceil(var.instance_ratio)
}

output "rounded_down_instances" {
  value = floor(var.instance_ratio)
}

output "smallest_val" {
  value = min(10, 5, 12, 8)
}

Listelerle Çalışma

Listeler, öğelerin sıralı koleksiyonlarıdır. length() gibi işlevler bir listede kaç öğe bulunduğunu belirtir; element() ise sayısal dizinini kullanarak bir öğeyi getirir (dizin 0'dan başlar).

Yineleme yapmak veya belirli öğeleri seçmek için kullanışlıdır.

variable "zones" {
  type    = list(string)
  default = ["us-east-1a", "us-east-1b", "us-east-1c"]
}

output "num_zones" {
  value = length(var.zones)
}

output "first_zone" {
  value = element(var.zones, 0)
}

Anahtar-Değer Verilerini İşleme

Eşlemeler, verileri anahtar-değer çiftleri olarak depolar. lookup(), verilen bir anahtarın değerini getirir ve anahtar bulunamazsa isteğe bağlı bir varsayılan değer kullanabilir. merge() ise birden çok eşlemeyi tek bir eşlemede birleştirir.

Üst verileri veya kaynak etiketlerini yönetmek için idealdir.

variable "server_info" {
  type = map(string)
  default = {
    name = "backend-server"
    env  = "dev"
  }
}

variable "additional_info" {
  type = map(string)
  default = {
    owner = "team-a"
  }
}

output "server_name" {
  value = lookup(var.server_info, "name", "unknown")
}

output "merged_map" {
  value = merge(var.server_info, var.additional_info)
}

Veri Türlerini Değiştirme

Bazen bir kaynak bağımsız değişkeninin belirli bir veri türünde olması gerekir (örneğin sayı yerine dize). tostring() ve tonumber() gibi tür dönüştürme işlevleri bunu yapmanıza yardımcı olur.

Yapılandırmanızın farklı bölümleri arasındaki uyumluluğu sağlar.

variable "port_number" {
  type    = number
  default = 8080
}

output "port_as_string" {
  value = tostring(var.port_number)
}

output "string_to_number" {
  value = tonumber("123") + 7
}

İşlevleri Uygulama

Karmaşık veri dönüşümleri gerçekleştirmek için yerleşik işlevler birleştirilebilir veya iç içe kullanılabilir. Bu örnek, değişkenleri birleştirerek, değişkenlerden birini büyük harfe dönüştürerek ve türlerin doğru olmasını sağlayarak bir kaynak adı oluşturur.

variable "env" {
  type    = string
  default = "dev"
}

variable "service" {
  type    = string
  default = "app"
}

variable "instance_id" {
  type    = number
  default = 1
}

output "resource_name" {
  value = join("-", [
    upper(var.env),
    var.service,
    tostring(var.instance_id)
  ])
}

En İyi Uygulamalar

İşlevleri kullanırken anlaşılır ve sürdürülebilir bir yapı hedefleyin:

  • Okunabilir tutun: Kodu anlamayı zorlaştırıyorsa işlevleri gereğinden fazla iç içe kullanmayın.
  • Değişkenleri kullanın: Daha iyi okunabilirlik için karmaşık ara sonuçları yerel değişkenlerde saklayın.
  • terraform console ile test edin: Yapılandırmanıza eklemeden önce çıktısını görmek için işlevleri hızlıca deneyin.

İşlev Görevi

Terraform'un yerleşik işlevlerinin birlikte nasıl çalıştığını anlayıp anlamadığınızı test edelim.

İşlevlerde Ustalaştınız!

Terraform'un güçlü yerleşik işlevlerini keşfettiniz!

Yapılandırmalarınızı dinamik ve uyarlanabilir hâle getirmek için dize, sayısal, koleksiyon ve tür dönüştürme işlevlerini nasıl kullanacağınızı artık biliyorsunuz. Bu araçlar, verimli ve yeniden kullanılabilir Kod Olarak Altyapı yazmak için çok önemlidir.

Sıkça Sorulan Sorular

“Terraform Yerleşik İşlevleri” dersi ücretsiz mi?

Evet — “Terraform Yerleşik İşlevleri” 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.

“Terraform Yerleşik İşlevleri” dersinde ne öğreneceğim?

Yapılandırmalarınızı geliştirmek için dize işleme, liste işleme, tür dönüştürme ve daha fazlasına yönelik Terraform'un çok çeşitli yerleşik işlevlerini 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 2. dersidir.

“Terraform Yerleşik İşlevleri” 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. `for_each` ve `count` ile Döngüleri Kullanma
  2. Terraform Yerleşik İşlevleri
  3. Koşullu İfadeler ve Splat İfadeleri
  4. İç İçe Yapılandırma için Dinamik Bloklar
← DevOps Bootcamp Sayfasına Dön