Terraform Kaynak Bağımlılığı (Resource Dependencies)

Terraform her ne kadar "declarative approach" ile çalışmakta ise yinede bazen kendisine kaynakları oluştururken bazı bağımlılıklara dikkat etmesi belirtilebilir, mesela bu dökümanları takip ettiğinizde adım adım bir sıkıntıyla karşılaşmayabilirsiniz veya tüm dosyaları oluşturup herşey mükemmel çalışacak diye düşündüğünüzde tam tersi olabilir. Bu makalede kaynaklar arası bağımlılık nasıl uygulanır onu göstereceğiz.

Üç adet aksiyondan bahsedeceğiz, routed network oluşturma , vApp oluşturma , oluşturulan routed organizasyon network'ünü vApp'a atama ve en sonunda vApp içerisine sanal sunucu provizyonlama.

Önce vApp oluşturma, bunun routed network oluştuktan sonra yapmak istiyoruz , tek yapmamız gereken depends_on meta tag'ını kullanmak.

İlgili vApp "dbvappserversgroup" mutlaka/önce DBRoutedServerNetwork provizyonlandıktan sonra oluşturulmalı.

resource "vcd_vapp" "dbvappserversgroup" {
  name     = "dbserversgroup"
  power_on = "true"

  depends_on = [
    vcd_network_routed_v2.DBRoutedServerNetwork,
  ]
}

İlgili DBServerNetwork routed network'ü mutlaka "dbvappserversgroup" olusuturulduktan sonra vApp'a eklenmeli

resource "vcd_vapp_org_network" "OrgDatabaseNetwork" {

  vapp_name = "dbserversgroup"

  org_network_name = "DBServerNetwork"

  depends_on = [
    vcd_vapp.dbvappserversgroup,
  ]

}

İlgili DB sanal sunucular mutlaka web ve db network'lerinin vApp'a eklenmesinden sonra oluşturulması gibi ....

depends_on = [
     vcd_vapp_org_network.OrgWebNetwork, vcd_vapp_org_network.OrgDatabaseNetwork,
  ]

 

Not : Örnek olarak verilen kod parçacıkları, değişkenler, UI üzerinde görülen isimler ve dosya isimleri çeşitli makalelerde değişiklik gösterebilir, tüm kod parçacıklarının son hali için github adresine bakabilirsiniz.

Geri bildirim

Bu makaleyle ilgili bir sorun bulursanız ve/veya hizmetlerimizden herhangi birini nasıl iyileştirebileceğimize dair bir fikriniz varsa, info@doruk.net adresine bir e-posta gönderin.

 

Bu cevap yeterince yardımcı oldu mu? 0 Bu dökümanı faydalı bulan kullanıcılar: (0 Oy)