Ücretsiz araç
Terraform’dan diyagrama
Terraform .tf dosyalarınızı ya da terraform show -json çıktısını yapıştırın, düzenlenebilir bir mimari diyagram elde edin: VPC’ler, alt ağlar ve kaynak grupları çerçeveye, kaynaklar karta, başvurular bağlantıya dönüşür. Denemek için hesap gerekmez.
Örnek çıktı
Nasıl çalışır
Terraform kodunuzu yapıştırın ya da bırakın
Tek bir .tf dosyası, aynı modülün birden çok dosyası ya da terraform show -json komutunun kayıtlı bir plan veya state için yazdırdığı JSON. terraform init gerekmez.
Mimariyi görün
Her kaynak, türüne göre bir kart olur: compute, veritabanı ya da kuyruk gibi. Ağlar, alt ağlar ve kaynak grupları, içlerine yerleşen kaynakların çevresinde çerçeve olur.
Archboard’da açın
Kartları yeniden düzenlemek, not eklemek, bağlantı paylaşmak ya da SVG ve PNG olarak dışa aktarmak için yeni bir diyagram olarak kaydedin. Kayıt için Google ya da GitHub hesabı yeterli.
Terraform kodundan neler çizilir
Diyagram, yapılandırmanızdaki şu blok ve argümanlardan oluşturulur:
resourcedataKaynaklar, tiplerine göre kart olarak. aws_lb_target_group_attachment gibi bağlayıcı kaynaklar bağlantıya dönüşür, aws_s3_bucket_versioning gibi ayar kaynakları bucket’ına katlanır; data kaynakları ise içlerine kaynak yerleşmedikçe atlanır.
depends_onBir kaynaktan diğerine her başvuru için bir bağlantı (aws_iam_role.app.arn gibi); dizelerin, heredoc’ların ve locals bloklarının içindeki başvurular da dahil. depends_on kesikli bir bağlantı ekler; iki kaynak zaten bir başvuruyla bağlıysa ya da hedef time_sleep gibi gösterilmeyen bir yardımcıysa eklemez.
vpc_idsubnet_idvpc_id ve subnet_id ile yerleşim: tek alt ağdaki kaynak o alt ağın içinde, bir VPC’nin birden çok alt ağına yayılan kaynak VPC çerçevesinde, Azure kaynakları da kendi kaynak gruplarında durur.
modulesourceHer module bloğu bir kart olarak. terraform-aws-modules/vpc/aws, eks ve rds gibi bilinen registry modülleri oluşturdukları ağ çerçevesine, kümeye ya da veritabanına dönüşür; VPC modülünün alt ağlarını kullanan kaynaklar da bu çerçevenin içine yerleşir.
resource_changesPlan JSON’unda her kaynak kartı, planın o kaynağa ne yapacağını gösterir: + oluştur, ~ güncelle, − sil ya da ± yeniden oluştur. Planın değiştirmediği kaynaklar işaret taşımaz; VPC ve alt ağ gibi çerçeveler ile bir karta katlanan ayar kaynakları da işaret taşımaz.
awsazurermgoogleAWS, Azure ve Google Cloud kaynakları; birden çok sağlayıcı kullanıyorsanız aynı diyagramda. Kendine ait kartı olmayan tipler, kaynak tipini gösteren genel kartlar olarak görünür.
Terraform plan görselleştirme
En eksiksiz diyagramı plan JSON’u verir: count ve for_each gerçek örnek sayılarına dönüşür, modüller kaynaklarına açılır ve kaynak kartları planlanan değişiklikleriyle işaretlenir. Bu iki komutu terraform plan’ı çalıştırdığınız yerde çalıştırın, ardından JSON’u yapıştırın:
Hiçbir şeyi uygulamadan bir plan oluşturur ve plan.out dosyasına kaydeder.
terraform plan -out plan.outKayıtlı planı JSON olarak yazdırır. Çıktıyı yapıştırın ya da plan.json dosyasına yönlendirip o dosyayı buraya bırakın.
terraform show -json plan.out
Terraform diyagramında neler yer almaz
- Değişken ve locals değerleri, .tfvars dosyaları, tags, user_data ve diğer öznitelik değerleri. Kartlar bucket ya da function_name gibi sabit adlarla, bunlar yoksa kodunuzdaki kaynak adıyla etiketlenir.
- .tf dosyalarında count ve for_each açılımı: yapılandırma değerlendirilmez; bu yüzden count = 3 olan kaynak ×3 işaretli tek bir kart olur, for_each kullanan kaynak da ×N işareti alır. Gerçek örnek sayıları için plan JSON’u yapıştırın.
- Uzak modüllerin içeriği: registry ve Git modülleri indirilmez. Bilinen modüllerden olmayan bir modül tek kart kalır; içindeki kaynakları plan JSON’u gösterir.
- Canlı bulut durumu, drift, maliyetler ya da çalışma anında hangi servisin hangisini çağırdığı. Diyagram trafiği değil, yapılandırmanızın kaynakları nasıl birbirine bağladığını gösterir.
Terraform diyagramları hakkında sorular
.tf dosyalarını mı, plan JSON’unu mu yapıştırmalıyım?
.tf dosyaları, kodunuzun yapısını görmenin en hızlı yoludur ve önce hiçbir şeyin çalışması gerekmez. Plan JSON’u daha eksiksizdir, çünkü Terraform onu zaten çözmüştür: sayılar gerçektir, modüller açılmıştır ve kaynak kartları planlanan değişikliklerini gösterir. Hızlı bir bakış için .tf, bir değişikliği incelerken plan JSON’u kullanın.
Birden çok .tf dosyasını aynı anda ekleyebilir miyim?
Evet. Birden çok .tf dosyasını ya da bütün bir modül klasörünü bırakın; Terraform’un bir dizindeki bütün .tf dosyalarını okuduğu gibi birlikte okunurlar. Dosyaları kutuya art arda da yapıştırabilirsiniz. Plan ya da state dosyası gibi JSON girdileri her seferinde tek dosya olarak okunur.
Hangi bulut sağlayıcıları destekleniyor?
AWS, Azure ve Google Cloud. Yaygın kaynak tipleri compute, fonksiyon, veritabanı, kuyruk, yük dengeleyici ya da DNS gibi kartlara eşlenir; ağlar, alt ağlar ve kaynak grupları çerçeve olur. Kubernetes ve Helm kaynakları genel kart olarak görünür; random, time ve null_resource gibi yardımcı sağlayıcılar gösterilmez.
Terraform state’ini görselleştirebilir miyim?
Evet. Mevcut state’iniz için terraform show -json çıktısını yapıştırın ya da ham bir terraform.tfstate dosyasını bırakın. Diyagram kaynak tiplerini, adlarını ve bağımlılıklarını gösterir; sensitive olarak işaretli bir ad, kodunuzdaki kaynak adına döner. .tfvars dosyası kabul edilmez, çünkü yalnızca değişken değerleri içerir.
Diyagramı Archboard’da açınca ne olur?
Bu sayfadaki önizleme kaydedilmez. “Archboard’da aç” dediğinizde gördüğünüz diyagram (kartlar, çerçeveler, adlar ve bağlantılar) çalışma alanınıza yeni bir diyagram olarak kaydedilir; orada yeniden düzenleyebilir, not ekleyebilir, paylaşabilir ya da dışa aktarabilirsiniz. Bir başlangıç noktasıdır: Terraform kodunuzda sonradan yaptığınız değişiklikler diyagramı güncellemez.
Terraform görselleştirici ücretsiz mi?
Evet. Terraform kodu yapıştırmak ve diyagramı görmek için hesap gerekmez. Archboard’da açmak için ücretsiz bir hesap yeterli.
Bir dakikada canvas açın
Google veya GitHub ile giriş yapın. Tek koltuk ücretsiz; ekip katılınca planı yükseltin.