Sobes.tech
Junior

Terraform-da hesab nədir və onu nə qədər tez-tez istifadə edirsiniz?

sobes.tech Süni İntellekt

AI-dan cavab

Terraform-də hesab (tez-tez "backend konfiqurasiyası" adlanır) terraform.tfstate faylının harada saxlanacağını müəyyən edir. Bu fayl çox vacibdir, çünki yerləşdirilmiş infrastrukturanın hazırkı vəziyyəti haqqında məlumatlar ehtiva edir.

İstifadə tezliyi:

  • Həmişə komanda ilə işləyərkən və ya bulud mühitində yerləşdirmə zamanı. Yerli fayl sistemində vəziyyətin saxlanması (local backend) yalnız təcrübələr və çox sadə yerli layihələr üçün istifadə olunur.
  • Hər Terraform ilə infrastruktur yerləşdirməsi vəziyyətin saxlanması üçün backendin konfiqurasiyasını tələb edir.

İstifadə etdiyim əsas backend növləri:

  • S3 (AWS): AWS üçün ən yaygın olanı.
    terraform {
      backend "s3" {
        bucket         = "my-terraform-state-bucket"
        key            = "path/to/my/state.tfstate"
        region         = "us-east-1"
        # Əlavə seçimlər, məsələn, şifrələmə və ya kilidləmə
        encrypt        = true
        dynamodb_table = "my-state-lock-table" # Eyni zamanda girişin qarşısını almaq üçün
      }
    }
    
  • azurerm (Azure Storage Account): Azure üçün.
    terraform {
      backend "azurerm" {
        resource_group_name  = "my-terraform-rg"
        storage_account_name = "mystorageaccount"
        container_name       = "tfstate"
        key                  = "path/to/my/state.tfstate"
      }
    }
    
  • gcs (Google Cloud Storage): GCP üçün.
    terraform {
      backend "gcs" {
        bucket = "my-terraform-state-bucket"
        prefix = "path/to/state" # Fayl my-terraform-state-bucket/path/to/state/terraform.tfstate olacaq
      }
    }
    

Backend seçimi bulud təminatçısından və əməkdaşlıq, vəziyyətin kilidlənməsi və təhlükəsizlik tələblərindən asılıdır. Terraform hesabının (backend) vəzifəsi etibarlı, mərkəzləşdirilmiş vəziyyət saxlamağı təmin etmək, bütün komanda üzvləri üçün əlçatan və eyni zamanda dəyişikliklərə qarşı qorumaqdır.