پرش به مطلب اصلی

استفاده از Terraform آروان‌کلاد

Terraform یک ابزار متن‌باز برای ایجاد و مدیریت زیرساخت ابری به‌ وسیله‌ی‌ مجموعه‌ای از کدهاست که روندی ساده برای استقرار محصول، بر بستر ابر فراهم می‌کند. امروزه راهکار پیشنهادی برای پیاده‌سازی زیرساخت، طراحی به‌شکل IaC یا مجموعه‌ای از کدهاست تا با کاهش دخالت انسان، امکان استقرار دقیق و سریع زیرساخت فراهم شود.

به کمک این ابزار، منابع ابری مورد نیاز شما در قالب فایل‌های Terraform تعریف می‌شوند. با استفاده از این فایل‌ها و دسترسی کافی، بدون نیاز به وارد شدن به پنل می‌توانید منابع و سرویس‌ها را روی محصولات ابری تست و پیاده‌سازی کنید.

برای استفاده از Terraform آروان‌کلاد، باید ابتدا ترافرم را نصب کرده و یک فایل Provider را تنظیم و پیکربندی کنید. در این راهنما به شیوه‌ی نصب و پیکربندی Terraform می‌پردازیم.

نصب Terraform

ابتدا اطمینان پیدا کنید که نسخه‌ی مناسبی از Terraform روی سیستم‌تان نصب شده باشد. حداقل نسخه‌ی مورد نیاز Terraform 1.0‍ یا بالاتر است.

راهنمای رسمی نصب Terraform به‌ شما در دریافت این نسخه‌ بر اساس سیستم‌عامل‌تان کمک می‌کند.

پیکربندی Provider

پس از نصب Terraform، برای پیکربندی Provider آروان‌کلاد لازم است یک فایل با پسوند tf. (برای نمونه main.tf) بسازید و تنظیمات مربوط به provider را در آن وارد کنید.

محتوای زیر را در فایل main.tf خود کپی کنید:

terraform {
  required_providers {
    arvancloud = {
      source  = "terraform.arvancloud.ir/arvancloud/arvancloud"
      # version = "x.y.z" #  optional
    }
  }
}

provider "arvancloud" {
  api_key = "your_api_key"
}

برای استفاده از Provider آروان‌کلاد باید یک ماشین یوزر بسازید و کلید دسترسی آن را دریافت کنید. راهنمای ساخت ماشین یوزر به شما در این مسیر کمک می‌کند.

همه‌ی عملیات در Terraform به‌وسیله‌ی ماشین یوزر انجام می‌شود. بنابراین، مطمین شوید که دسترسی‌های IAM مورد نیاز برای انجام عملیات به ماشین یوزر داده شده باشد. راهنمای مدیریت دسترسی‌ها در حساب کاربری آروان‌کلاد به شما در این مسیر کمک می‌کند.

  • بلوک terraform: در این بخش، provider مورد نیاز (arvancloud) و منبع آن مشخص می‌شود. شما می‌توانید نسخه‌ی خاصی از provider را نیز تعیین کنید. اگر نسخه‌ای مشخص نشود، آخرین نسخه به‌طور خودکار نصب خواهد شد.
  • بلوک provider: در این بخش، اطلاعات مربوط به احراز هویت، مانند کلید دسترسی (api_key)، برای اتصال به آروان‌کلاد وارد می‌شود.

پس از ذخیره‌ی فایل، دستور زیر را در همان مسیر اجرا کنید تا provider دانلود و نصب شود:

terraform init

شما می‌توانید نسخه‌های مختلف provider را از صفحه‌ی نسخه‌ها در گیت‌لب آروان مشاهده و انتخاب کنید.

ساخت منابع

برای ایجاد منابع، کافی است تعریف آن‌ها را در یکی از فایل‌های tf. (مثلن main.tf) اضافه کنید. نمونه کد زیر یک رکورد DNS از نوع A برای یک دامنه در CDN آروان کلاد ایجاد می‌کند:

resource "arvancloud_cdn_domain_dns_record" "a-example" {
  domain         = "cdn-terraform.ir"
  name           = "a-terraform"
  ttl            = 120
  cloud          = true
  upstream_https = "https"
  ip_filter_mode = {
    count      = "single"
    order      = "none"
    geo_filter = "none"
  }
  type = "a"
  value = {
    a = [
      {
        ip   = "1.1.1.1"
        port = 1001
      },
      {
        ip     = "1.1.1.2"
        weight = 101
      }
    ]
  }
}

پس از ذخیره فایل، از دستورهای زیر را اجرا کنید:

برای اجرای پیش‌نمایش:

terraform plan

برای اعمال تغییرات:

terraform apply

می‌توانید منابع را در همان main.tf یا در فایل‌های جداگانه (مانند dns.tf) تعریف کنید. Terraform همه‌ی فایل‌های tf. را در پوشه‌ی جاری به‌شکل یک واحد پیکربندی در نظر می‌گیرد.

دستورهای رایج Terraform

پس از راه‌اندازی اولیه، با استفاده از دستورهای زیر می‌توانید زیرساخت خود را مدیریت کنید:

  • terraform fmt: فایل‌های پیکربندی را بر اساس استانداردهای Terraform قالب‌بندی می‌کند.
  • terraform validate: صحت و اعتبار فایل‌های پیکربندی شما را بررسی می‌کند.
  • terraform plan: پیش‌نمایشی از تغییراتی که قرار است اعمال شود (مانند ایجاد، ویرایش یا حذف منابع)، ارایه می‌دهد.
  • terraform apply: تغییرات مشخص‌شده را روی زیرساخت اعمال می‌کند.
  • terraform destroy: تمام منابعی که توسط Terraform مدیریت می‌شوند را حذف می‌کند.

برای بررسی موارد استفاده و نمونه‌های بیش‌تر تنظیمات ترافرم آروان‌کلاد می‌توانید از نمونه‌ها و راهنمای استفاده در گیت‌لب آروان‌کلاد کمک بگیرید.