Terraform Nedir?
Terraform, altyapı (infrastructure) kaynaklarını kod olarak yönetmek ve otomatize etmek için kullanılan açık kaynaklı bir altyapı yönetim aracıdır. Terraform, kullanıcıların bulut sağlayıcıları (AWS, Azure, Google Cloud, vs.) veya yerel veri merkezleri gibi çeşitli altyapı ortamlarında kaynakları tanımlamalarına, dağıtmalarına ve yönetmelerine olanak tanır. Bu, tekrarlanabilir, ölçeklenebilir ve değiştirilebilir altyapıların oluşturulmasını ve sürdürülmesini kolaylaştırır.
Adım 1: Terraform Kurulumu
İlk olarak, Terraform’u resmi web sitesinden indirip yükleyin. İndirme ve kurulum adımları, farklı işletim sistemleri için belirtilmiştir.
Ben Linux Ubuntu üzerine kurulum yapacağım. Sırasıyla aşağıdaki kodları yürütün.
wget -O- https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
sudo apt update && sudo apt install terraform
Terraform’un düzgün kurulup kurulmadığını kontrol edin.
terraform version
Adım 2: AWS Kimlik Bilgileri
Terraform’un AWS ile etkileşimde bulunabilmesi için herhangi bir AWS hesabının Access Key ve Secret Key’ine ihtiyaç vardır. Bu bilgileri güvenli bir şekilde saklayın. AWS Management Console’dan bir IAM kullanıcısı oluşturun ve bu kullanıcıya Terraform’un erişebilmesi için gerekli izinleri ekleyin.
Adım 3: Terraform Konfigürasyon Dosyası Oluşturma
Terraform’un dosya uzantısı tf‘dir.
Yetkinizin olduğu bir dizin içinde vpc.tf adlı bir Terraform konfigürasyon dosyası oluşturun.
nano vpc.tf
Aşağıdaki yaml içerğini kendi altyapınıza göre düzenleyin.
provider "aws" { region = "us-east-1" # access_key = "access keyi girin" secret_key = "secret keyi girin." } resource "aws_vpc" "my_vpc" { cidr_block = "10.0.0.0/16" enable_dns_support = true enable_dns_hostnames = true tags = { Name = "SercanVPC" } }
Adım 4: Terraform İlk Başlatma
Konfigürasyon dosyanızın bulunduğu dizinde terminal veya komut istemcisinde aşağıdaki komutu çalıştırarak Terraform’u başlatın:
Terraform’u başlatın.
terraform init
Adım 5: Terraform Plan
Oluşturulan Terraform kodunun planını görmek için aşağıdaki komutu kullanın.
terraform plan
Adım 6: Terraform Planını Uygulama
Yapılan değişiklikleri uygulamak için aşağıdaki komutu kullanın.
terraform apply
Sizden apply etmek için onay isteyecek. “yes” yazıp devam edin.
AWS Console’da VPC servisini açtığınızda, VPC’nin sorunsuz bir şekilde oluşturulduğunu göreceksiniz.
Aynı dizin içinde terraform.tfstate adında bir dosya oluşturulduğunu göreceksiniz.
Bu tfstate dosyası; Terraform tarafından yönetilen altyapının durumunu içeren dosyadır. Bu dosya, altyapıdaki kaynakların durum bilgilerini saklar, değişiklikleri izler.