Bu makalede, Terraform kullanarak bir Azure AI hizmetleri hesabı oluşturmak için Terraform’un nasıl kullanılacağı gösterilmektedir.

Azure Yapay Zeka hizmetleri, geliştiricilerin doğrudan yapay zeka veya veri bilimi becerilerine veya bilgisine sahip olmadan uygulamalara bilişsel zeka eklemesine yardımcı olan bulut tabanlı yapay zeka (AI) hizmetleridir. Bunlar, popüler geliştirme dillerinde REST API’leri ve istemci kitaplığı SDK’ları aracılığıyla kullanılabilir. Azure Yapay Zeka hizmetleri, geliştiricilerin görebilen, duyabilen, konuşabilen ve analiz edebilen bilişsel çözümlerle uygulamalarına kolayca bilişsel özellikler eklemesine olanak tanır.

Terraform, bulut altyapısının tanımlanmasını, önizlemesini ve dağıtımını sağlar. Terraform’u kullanarak HCL söz dizimini kullanarak yapılandırma dosyaları oluşturursunuz. HCL söz dizimi, Azure gibi bulut sağlayıcısını ve bulut altyapınızı oluşturan öğeleri belirtmenize olanak tanır. Yapılandırma dosyalarınızı oluşturduktan sonra, altyapı değişikliklerinizi dağıtılmadan önce önizlemenize olanak tanıyan bir yürütme planı oluşturursunuz. Değişiklikleri doğruladıktan sonra, altyapıyı dağıtmak için yürütme planını uygularsınız.

Bu makalede şunların nasıl yapıldığını öğreneceksiniz:

Önkoşullar

Terraform kodunu uygulama

 Not

Bu makalenin örnek kodu Azure Terraform GitHub deposunda bulunur. Terraform’un mevcut ve önceki sürümlerinden test sonuçlarını içeren günlük dosyasını görüntüleyebilirsiniz.

Azure kaynaklarını yönetmek için Terraform’un nasıl kullanılacağını gösteren diğer makalelere ve örnek koda bakın

  1. Örnek Terraform kodunu test etmek ve çalıştırmak için bir dizin oluşturun ve bunu geçerli dizin yapın.
  2. adlı bir dosya oluşturun ve aşağıdaki kodu ekleyin:main.tf

Terraform (Terraform)Kopya etmek

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

}

resource “random_string” “azurerm_cognitive_account_name” {

length = 13

lower = true

numeric = false

special = false

upper = false

}

resource “azurerm_cognitive_account” “cognitive_service” {

name = “CognitiveService-${random_string.azurerm_cognitive_account_name.result}”

location = azurerm_resource_group.rg.location

resource_group_name = azurerm_resource_group.rg.name

sku_name = var.sku

kind = “CognitiveServices”

}

  1. Create a file named and insert the following code:outputs.tf

TerraformCopy

output “resource_group_name” {

value = azurerm_resource_group.rg.name

}

output “azurerm_cognitive_account_name” {

value = azurerm_cognitive_account.cognitive_service.name

}

  1. Create a file named and insert the following code:providers.tf

TerraformCopy

terraform {

required_version = “>=1.0”

required_providers {

azurerm = {

source = “hashicorp/azurerm”

version = “~>3.0”

}

random = {

source = “hashicorp/random”

version = “~>3.0”

}

}

}

provider “azurerm” {

features {}

}

  1. Create a file named and insert the following code:variables.tf

TerraformCopy

variable “resource_group_location” {

type = string

description = “Location for all resources.”

default = “eastus”

}

variable “resource_group_name_prefix” {

type = string

description = “Prefix of the resource group name that’s combined with a random ID so name is unique in your Azure subscription.”

default = “rg”

}

variable “sku” {

type = string

description = “The sku name of the Azure Analysis Services server to create. Choose from: B1, B2, D1, S0, S1, S2, S3, S4, S8, S9. Some skus are region specific. See https://docs.microsoft.com/en-us/azure/analysis-services/analysis-services-overview#availability-by-region”

default = “S0”

}

Initialize Terraform

Run terraform init to initialize the Terraform deployment. This command downloads the Azure provider required to manage your Azure resources.

ConsoleCopy

terraform init -upgrade

Key points:

  • The parameter upgrades the necessary provider plugins to the newest version that complies with the configuration’s version constraints.-upgrade

Create a Terraform execution plan

Run terraform plan to create an execution plan.

ConsoleCopy

terraform plan -out main.tfplan

Key points:

  • The command creates an execution plan, but doesn’t execute it. Instead, it determines what actions are necessary to create the configuration specified in your configuration files. This pattern allows you to verify whether the execution plan matches your expectations before making any changes to actual resources.terraform plan
  • The optional parameter allows you to specify an output file for the plan. Using the parameter ensures that the plan you reviewed is exactly what is applied.-out-out
  • To read more about persisting execution plans and security, see the security warning section.

Apply a Terraform execution plan

Run terraform apply to apply the execution plan to your cloud infrastructure.

ConsoleCopy

terraform apply main.tfplan

Key points:

  • The example command assumes you previously ran .terraform applyterraform plan -out main.tfplan
  • If you specified a different filename for the parameter, use that same filename in the call to .-outterraform apply
  • If you didn’t use the parameter, call without any parameters.-outterraform apply

Verify the results

  1. Get the Azure resource name in which the Azure AI services account was created.

ConsoleCopy

resource_group_name=$(terraform output -raw resource_group_name)

  1. Get the Azure AI services account name.

ConsoleCopy

azurerm_cognitive_account_name=$(terraform output -raw azurerm_cognitive_account_name)

  1. Run az cognitiveservices account show to show the Azure AI services account you created in this article.

Azure CLICopy

az cognitiveservices account show –name $azurerm_cognitive_account_name \

–resource-group $resource_group_name

Clean up resources

When you no longer need the resources created via Terraform, do the following steps:

  1. Run terraform plan and specify the flag.destroy

KonsolKopya etmek

terraform plan -destroy -out main.destroy.tfplan

Önemli noktalar:

    • Komut bir yürütme planı oluşturur, ancak yürütmez. Bunun yerine, yapılandırma dosyalarınızda belirtilen yapılandırmayı oluşturmak için hangi eylemlerin gerekli olduğunu belirler. Bu düzen, gerçek kaynaklarda herhangi bir değişiklik yapmadan önce yürütme planının beklentilerinize uyup uymadığını doğrulamanıza olanak tanır.terraform plan
    • İsteğe bağlı parametre, plan için bir çıkış dosyası belirtmenize olanak tanır. Parametreyi kullanmak, gözden geçirdiğiniz planın tam olarak uygulandığı plan olmasını sağlar.-out-out
    • Kalıcı yürütme planları ve güvenlik hakkında daha fazla bilgi edinmek için güvenlik uyarısı bölümüne bakın.
  1. Yürütme planını uygulamak için terraform apply komutunu çalıştırın.

KonsolKopya etmek

terraform apply main.destroy.tfplan

 

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Fill out this field
Fill out this field
Lütfen geçerli bir e-posta adresi girin.
You need to agree with the terms to proceed

Menü