Mevcut Kaynakları İçe Aktarma
Mevcut bulut altyapısını Terraform durumunuza nasıl aktaracağınızı öğrenerek önceden oluşturulmuş kaynakları IaC yönetimi altına alın.
Mevcut Kaynakları İçe Aktarma, CoddyKit'te ücretsiz bir DevOps Bootcamp dersidir. Bu, 4 dersinin 3. 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.
Mevcut Altyapıyı Kod Olarak Altyapıya Aktarma
Bazen elle veya başka araçlar tarafından oluşturulmuş bulut kaynaklarınız olabilir. Terraform içe aktarma, bu mevcut kaynakları Terraform yönetimi altına almanızı sağlar.
Bu sayede Terraform, kaynakların durumunu izler ve gelecekteki değişiklikler yapılandırma dosyalarınız aracılığıyla uygulanabilir. Bu, "brownfield" bir ortamda Kod Olarak Altyapıyı (IaC) benimsemenin önemli bir adımıdır.
İçe Aktarma Gerektiğinde
İçe aktarma çeşitli durumlarda yararlıdır:
- Mevcut altyapıyı taşıma: Terraform dışında oluşturulmuş kaynakları IaC iş akışınıza dahil etmek.
- Terraform'u aşamalı olarak benimseme: Her şeyi yeniden oluşturmak yerine mevcut kaynaklarla başlamak.
- Durum kaybından kurtarma: Durum dosyanız kaybolursa Terraform'u kaynaklarla yeniden ilişkilendirmek (uzak durum kullanıldığında bu nadir görülür).
İçe Aktarma Komutunda Ustalaşma
terraform import komutunun temel yapısı oldukça basittir. Bu komut, Terraform'a bulut sağlayıcınızdaki mevcut bir kaynağı bulmasını ve yapılandırmanızdaki bir kaynak bloğuyla ilişkilendirerek durum dosyanıza eklemesini söyler.
İki temel bilgi gerekir: kaynağın Terraform adresi ve bulut sağlayıcısının bu kaynak için verdiği ID.
Kaynak Adresi Nedir?
Kaynak adresi, Terraform'un yapılandırmanız içindeki belirli bir kaynağı tanımlama biçimidir. resource_type.resource_name biçimini izler.
resource_type: Kaynağın türü (ör.aws_s3_bucket,azurerm_resource_group).resource_name: Terraform yapılandırmanızda kaynağa verdiğiniz yerel ad (ör.my_bucket,web_app).
Bu adresin .tf dosyalarınızda zaten mevcut olması gerekir.
Bulut ID'sini Bulma
Bir bulut sağlayıcısındaki (AWS, Azure veya GCP gibi) her kaynağın genellikle ID olarak adlandırılan benzersiz bir tanımlayıcısı vardır. Terraform'a içe aktarılacak mevcut kaynağın *hangisi* olduğunu belirtmek için bu ID'ye ihtiyacınız olacaktır.
Bu ID'yi bulut sağlayıcısının konsolunda, sağlayıcının CLI aracılığıyla veya API'si üzerinden bulabilirsiniz. Örneğin, bir AWS S3 klasörünün ID'si kendi adı iken bir EC2 örneğinin i-0abcdef1234567890 gibi bir örnek ID'si vardır.
İçe Aktarmadan Önce HCL'yi Tanımlama
Kritik Adım: terraform import komutunu çalıştırmadan önce Terraform yapılandırma dosyalarınızda (.tf dosyalarında) karşılık gelen bir kaynak bloğu tanımlamış olmanız gerekir.
Bu blok, Terraform'a ne tür bir kaynak beklemesi gerektiğini ve hangi özniteliklere sahip olması gerektiğini bildirir. Terraform, içe aktarma sırasında kaynağın şemasını anlamak için bu tanımı kullanır.
Bir S3 Klasörü İçin HCL
Diyelim ki my-existing-coddykit-bucket-123 adlı mevcut bir AWS S3 klasörünüz var. Önce main.tf dosyanızda bunun için bir kaynak bloğu tanımlayın:
resource "aws_s3_bucket" "my_imported_bucket" {
bucket = "my-existing-coddykit-bucket-123"
# Add other expected attributes if known
# e.g., acl = "private"
}S3 Klasörünü İçe Aktarma
Artık HCL tanımına sahip olduğunuza göre terraform import komutunu çalıştırabilirsiniz. my-existing-coddykit-bucket-123 ifadesini mevcut klasörünüzün gerçek adı/ID'siyle değiştirin.
Dizininizde daha önce terraform init komutunu çalıştırdığınızdan emin olun!
terraform import aws_s3_bucket.my_imported_bucket my-existing-coddykit-bucket-123Terraform Durumunu Denetleme
Başarılı bir içe aktarmanın ardından Terraform, kaynağı durum dosyanıza eklemiş olur. Bunu, Terraform'un içe aktarılan kaynağın özniteliklerini nasıl gördüğünü gösteren terraform state show komutuyla doğrulayabilirsiniz.
Ardından HCL'niz ile içe aktarılan kaynağın gerçek durumu arasında beklenmeyen farklar olmadığından emin olmak için terraform plan komutunu çalıştırmanız çok önemlidir.
terraform state show aws_s3_bucket.my_imported_bucketHızlı Kontrol: İçe Aktarma Sırası
Mevcut bir AWS EC2 örneğini Terraform'a aktarmak istiyorsunuz. terraform import komutunu çalıştırmadan *önce* aşağıdaki adımlardan hangisinin tamamlanmış olması GEREKİR?
Özet: Altyapıyı Terraform'a Kazandırma
Mevcut bulut kaynaklarını terraform import kullanarak Terraform yönetimi altına almayı öğrendiniz.
- Önce HCL'nizde kaynak bloğunu tanımlayın.
- Ardından bulut sağlayıcısının kaynak ID'sini belirleyin.
- Son olarak
terraform import ADDRESS IDkomutunu çalıştırın. - Farkları uzlaştırmak için her zaman
terraform plankomutuyla devam edin.
Bu güçlü komut, elle yönetilen altyapı ile tamamen IaC tabanlı bir ortam arasındaki boşluğu kapatmaya yardımcı olur.
Sıkça Sorulan Sorular
“Mevcut Kaynakları İçe Aktarma” dersi ücretsiz mi?
Evet — “Mevcut Kaynakları İçe Aktarma” 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.
“Mevcut Kaynakları İçe Aktarma” dersinde ne öğreneceğim?
Mevcut bulut altyapısını Terraform durumunuza nasıl aktaracağınızı öğrenerek önceden oluşturulmuş kaynakları IaC yönetimi altına alın. 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 3. dersidir.
“Mevcut Kaynakları İçe Aktarma” 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
- Uzak Durum Arka Uçları
- Durum Kilitleme ve Tutarlılık
- Mevcut Kaynakları İçe Aktarma
- moved ve removed ile Durumu Yeniden Düzenleme