Başlarken: Terraform kullanarak Azure kaynak grubu oluşturma

Terraform, bulut altyapısının tanımını, önizlemesini ve dağıtımını sağlar. Terraform kullanarak HCL söz dizimi kullanarak yapılandırma dosyaları oluşturabilirsiniz. HCL söz dizimi, Azure gibi bulut sağlayıcısını ve bulut altyapınızı sağlayan öğeleri belirtmenize olanak sağlar. Yapılandırma dosyalarınızı oluşturduk sonra, altyapı değişikliklerinizi dağıtıldıktan önce önizlemenize olanak sağlayan bir yürütme planı oluşturun. Değişiklikleri doğrularken, altyapıyı dağıtmak için yürütme planını uygulayabilirsiniz.

Bu makalede Terraform kullanarak Bir Azure kaynak grubu oluşturma açıklanmıştır.

Bu makalede şunları öğreneceksiniz:

  • Diğer Azure kaynaklarını tutmak için bir Azure kaynak grubu oluşturma
  • Kaynak grubunun (Azure CLI ve Azure PowerShell kullanarak) oluşturulanı doğrulayın
  • Kaynak grubunu kullanmayı bitirdikten sonra silin

1. Ortamınızı yapılandırma

  • Azure aboneliği: Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.

2. Terraform kodunu uygulama

  1. Örnek Terraform kodunu test etmek ve bunu geçerli dizin yapmak için bir dizin oluşturun.

  2. adlı bir dosya main.tf oluşturun ve aşağıdaki kodu girin:

    terraform {
    
      required_version = ">=0.12"
      
      required_providers {
        azurerm = {
          source = "hashicorp/azurerm"
          version = "~>2.0"
        }
      }
    }
    
    provider "azurerm" {
      features {}
    }
    
    resource "random_pet" "rg-name" {
      prefix    = var.resource_group_name_prefix
    }
    
    resource "azurerm_resource_group" "rg" {
      name      = random_pet.rg-name.id
      location  = var.resource_group_location
    }
    
  3. Proje değişkenlerini variables.tf içeren adlı bir dosya oluşturun ve aşağıdaki kodu girin:

    variable "resource_group_name_prefix" {
      default       = "rg"
      description   = "Prefix of the resource group name that's combined with a random ID so name is unique in your Azure subscription."
    }
    
    variable "resource_group_location" {
      default = "eastus"
      description   = "Location of the resource group."
    }
    

3. Terraform'ü başlatma

Terraform dağıtımını başlatmak için terraform init'i çalıştırın.

terraform init

Önemli noktalar:

  • Bu komut, bir Azure kaynak grubu oluşturmak için gereken Azure modüllerini indirir.

4. Terraform yürütme planı oluşturma

Terraform planını çalıştırarak bir yürütme planı oluşturun.

terraform plan -out main.tfplan

Önemli noktalar:

  • Komut terraform plan bir yürütme planı oluşturur ancak yürütmez. Bunun yerine, yapılandırma dosyalarında belirtilen yapılandırmayı oluşturmak için hangi eylemlerin gerekli olduğunu belirler. Bu düzen, gerçek kaynaklarda değişiklik yapmadan önce yürütme planının beklentilerinize uygun olup olmadığını doğrulamanıza olanak sağlar.
  • İsteğe -out bağlı parametresi, plan için bir çıkış dosyası belirtmenize olanak sağlar. parametresini -out kullanmak, gözden geçiren planın tam olarak uygulandığını garantiler.
  • Yürütme planlarını ve güvenliği kalıcı hale uygulama hakkında daha fazla bilgi için güvenlik uyarısı bölümüne bakın.

5. Terraform yürütme planı uygulama

Yürütme planını bulut altyapınıza uygulamak için terraform apply'i çalıştırın.

terraform apply main.tfplan

Önemli noktalar:

  • Yukarıdaki terraform apply komut daha önce komutunun olduğunu varsayıyor. terraform plan -out main.tfplan
  • parametresi için farklı bir dosya adı -out belirttiyebilirsiniz, çağrısında aynı dosya adını terraform apply kullanın.
  • parametresini -out kullanmadıysanız herhangi bir parametre terraform apply olmadan çağrısı yapmanız gerekir.

6. Sonuçları doğrulama

Kaynak grubunu görüntülemek için az group show çalıştırın.

az group show --name <resource_group_name>

7. Kaynakları temizleme

Terraform aracılığıyla oluşturulan kaynaklara artık ihtiyacınız kalmadan aşağıdaki adımları uygulayın:

  1. Terraform planını çalıştırın ve bayrağını belirtin.

    terraform plan -destroy -out main.destroy.tfplan
    

    Önemli noktalar:

    • Komut terraform plan bir yürütme planı oluşturur ancak yürütmez. Bunun yerine, yapılandırma dosyalarında belirtilen yapılandırmayı oluşturmak için hangi eylemlerin gerekli olduğunu belirler. Bu düzen, gerçek kaynaklarda değişiklik yapmadan önce yürütme planının beklentilerinize uygun olup olmadığını doğrulamanıza olanak sağlar.
    • İsteğe -out bağlı parametresi, plan için bir çıkış dosyası belirtmenize olanak sağlar. parametresini -out kullanmak, gözden geçiren planın tam olarak uygulandığını garantiler.
    • Yürütme planlarını ve güvenliği kalıcı hale uygulama hakkında daha fazla bilgi için güvenlik uyarısı bölümüne bakın.
  2. Yürütme planını uygulamak için terraform apply'i çalıştırın.

    terraform apply main.destroy.tfplan
    

Azure'da Terraform sorunlarını giderme

Azure'da Terraform kullanırken karşılaşılan yaygın sorunları giderme

Sonraki adımlar