Sdílet prostřednictvím


Rychlý start: Vytvoření trezoru služby Azure Recovery Services pomocí Terraformu

V tomto rychlém startu se dozvíte, jak pomocí Terraformu vytvořit skupinu prostředků Azure, trezor služby Azure Recovery Services a zásady zálohování pro sdílení souborů v Azure. Služba Azure Site Recovery může vašim obchodním aplikacím pomoct zůstat online během plánovaných a neplánovaných výpadků. Site Recovery konkrétně používá replikaci, převzetí služeb při selhání a obnovení ke správě místních počítačů a virtuálních počítačů Azure během zotavení po havárii. Tyto metody Site Recovery můžou přispět ke strategii provozní kontinuity a zotavení po havárii.

Trezor služby Azure Recovery Services je entita úložiště v Azure, která obsahuje data, jako jsou zálohy a body obnovení, které můžou chránit a spravovat vaše data. Nejprve vytvoříte trezor a pak zásadu zálohování pro sdílení souborů, která určuje, kdy a jak často se mají zálohovat, plus doba uchovávání. Toto nastavení vám může pomoct zajistit, aby se vaše data zálohovala konzistentně a v případě potřeby je možné snadno obnovit.

Terraform umožňuje definici, náhled a nasazení cloudové infrastruktury. Pomocí Terraformu vytvoříte konfigurační soubory pomocí syntaxe HCL. Syntaxe seznamu HCL umožňuje zadat poskytovatele cloudu , například Azure, a prvky, které tvoří vaši cloudovou infrastrukturu. Po vytvoření konfiguračních souborů vytvoříte plán provádění , který vám umožní zobrazit náhled změn infrastruktury před jejich nasazením. Jakmile ověříte změny, použijete plán provádění k nasazení infrastruktury.

  • Vytvořte skupinu prostředků Azure s jedinečným názvem.
  • Definujte místní proměnné pro název a úroveň skladové položky.
  • Ve skupině prostředků vytvořte trezor služby Azure Recovery Services.
  • Vytvořte zásadu zálohování pro sdílení souborů ve skupině prostředků.
  • Výstupem jsou názvy trezoru služby Recovery Services a zásady zálohování pro sdílení souborů.

Požadavky

Implementace kódu Terraformu

Poznámka:

Vzorový kód pro tento článek se nachází v úložišti GitHubu Azure Terraformu. Můžete zobrazit soubor protokolu obsahující výsledky testu z aktuálních a předchozích verzí Terraformu.

Podívejte se na další články a ukázkový kód ukazující, jak používat Terraform ke správě prostředků Azure.

  1. Vytvořte adresář, ve kterém chcete otestovat a spustit ukázkový kód Terraformu a nastavit ho jako aktuální adresář.

  2. Vytvořte soubor s názvem main.tfa vložte následující kód:

    # Create Resource Group
    resource "random_pet" "rg_name" {
      prefix = var.resource_group_name_prefix
    }
    
    resource "azurerm_resource_group" "rg" {
      location = var.resource_group_location
      name     = random_pet.rg_name.id
    }
    
    locals {
      skuName = "RS0"
      skuTier = "Standard"
    }
    
    # Create Recovery Services Vault
    resource "azurerm_recovery_services_vault" "vault" {
      name                = var.vaultName
      location            = azurerm_resource_group.rg.location
      resource_group_name = azurerm_resource_group.rg.name
      sku                 = local.skuName
    }
    
    # Create Backup Policy for File Share
    resource "azurerm_backup_policy_file_share" "policy" {
      name                = "vaultstorageconfig"
      resource_group_name = azurerm_resource_group.rg.name
      recovery_vault_name = azurerm_recovery_services_vault.vault.name
    
      backup {
        frequency = "Daily"
        time      = "23:00"
      }
    
      retention_daily {
        count = 10
      }
    }
    
  3. Vytvořte soubor s názvem outputs.tfa vložte následující kód:

    output "recovery_services_vault_name" {
      value = azurerm_recovery_services_vault.vault.name
    }
    
    output "backup_policy_file_share_name" {
      value = azurerm_backup_policy_file_share.policy.name
    }
    
  4. Vytvořte soubor s názvem providers.tfa vložte následující kód:

    terraform {
      required_providers {
        azurerm = {
          source  = "hashicorp/azurerm"
          version = "~>3.0"
        }
        random = {
          source  = "hashicorp/random"
          version = "~>3.0"
        }
      }
    }
    
    provider "azurerm" {
      features {}
    }
    
  5. Vytvořte soubor s názvem variables.tfa vložte následující kód:

    variable "resource_group_location" {
      type        = string
      default     = "eastus"
      description = "Location of the resource group."
    }
    
    variable "resource_group_name_prefix" {
      type        = string
      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 "vaultName" {
      description = "Name of the Recovery Services Vault."
      type        = string
      default     = "examplevault"
    }
    

Inicializace Terraformu

Spusťte terraform init pro inicializaci nasazení Terraformu. Tento příkaz stáhne poskytovatele Azure potřebného ke správě prostředků Azure.

terraform init -upgrade

klíčové body:

  • Parametr -upgrade upgraduje potřebné moduly plug-in zprostředkovatele na nejnovější verzi, která splňuje omezení verzí konfigurace.

Vytvoření plánu provádění Terraformu

Spusťte terraform plan k vytvoření plánu provádění.

terraform plan -out main.tfplan

klíčové body:

  • Příkaz terraform plan vytvoří plán provádění, ale nespustí ho. Místo toho určuje, jaké akce jsou nezbytné k vytvoření konfigurace zadané v konfiguračních souborech. Tento model umožňuje ověřit, jestli plán provádění odpovídá vašim očekáváním, než provede jakékoli změny skutečných prostředků.
  • Volitelný -out parametr umožňuje zadat výstupní soubor pro plán. Použití parametru -out zajišťuje, že plán, který jste zkontrolovali, je přesně to, co se použije.

Použití plánu provádění Terraformu

Spusťte terraform apply pro aplikaci plánu provedení na vaši cloudovou infrastrukturu.

terraform apply main.tfplan

klíčové body:

  • terraform apply Ukázkový příkaz předpokládá, že jste dříve spustili terraform plan -out main.tfplan.
  • Pokud jste pro -out parametr zadali jiný název souboru, použijte stejný název souboru při volání terraform apply.
  • Pokud jste parametr nepoužíli -out , zavolejte terraform apply bez parametrů.

Ověření výsledků

  1. Získejte název skupiny prostředků Azure.

    resource_group_name=$(terraform output -raw resource_group_name)
    
  2. Získejte název trezoru služby Azure Recovery Services.

    recovery_services_vault_name=$(terraform output -recovery_services_vault_name)
    
  3. Získejte název sdílené složky zásad zálohování trezoru služby Azure Recovery Services.

    backup_policy_file_share_name=$(terraform output -backup_policy_file_share_name)
    
  4. Spuštěním zobrazíte az backup vault show trezor služby Azure Recovery Services.

    az backup vault show --name $recovery_services_vault_name --resource group $resource_group_name
    

Vyčištění prostředků

Pokud už prostředky vytvořené přes Terraform nepotřebujete, proveďte následující kroky:

  1. Spusťte terraform plan a zadejte příznak destroy.

    terraform plan -destroy -out main.destroy.tfplan
    

    klíčové body:

    • Příkaz terraform plan vytvoří plán provádění, ale nespustí ho. Místo toho určuje, jaké akce jsou nezbytné k vytvoření konfigurace zadané v konfiguračních souborech. Tento model umožňuje ověřit, jestli plán provádění odpovídá vašim očekáváním, než provede jakékoli změny skutečných prostředků.
    • Volitelný -out parametr umožňuje zadat výstupní soubor pro plán. Použití parametru -out zajišťuje, že plán, který jste zkontrolovali, je přesně to, co se použije.
  2. Spusťte terraform apply k aplikaci plánu provádění.

    terraform apply main.destroy.tfplan
    

Řešení potíží s Terraformem v Azure

Řešení běžných problémů při používání Terraformu v Azure

Další kroky