Visão geral - AWS Orientação prescritiva

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Visão geral

Os provedores do Terraform são plug-ins que permitem que o Terraform interaja com diferentes APIs. O Terraform AWS Provider é o plugin oficial para gerenciar AWS infraestrutura como código (IaC) com o Terraform. Ele traduz a sintaxe do Terraform em chamadas de AWS API para criar, ler, atualizar e excluir recursos. AWS

O AWS provedor lida com a autenticação, traduz a sintaxe do Terraform em chamadas de AWS API e fornece recursos em. AWS Você usa um bloco de provider código do Terraform para configurar o plug-in do provedor que o Terraform usa para interagir com a AWS API. Você pode configurar vários blocos de AWS provedores para gerenciar recursos em diferentes Contas da AWS regiões.

Aqui está um exemplo de configuração do Terraform que usa vários blocos de AWS provedores com aliases para gerenciar um banco de dados do Amazon Relational Database Service (Amazon RDS) que tem uma réplica em uma região e conta diferentes. Os provedores primários e secundários assumem funções diferentes AWS Identity and Access Management (IAM):

# Configure the primary AWS Provider provider "aws" { region = "us-west-1" alias = "primary" } # Configure a secondary AWS Provider for the replica Region and account provider "aws" { region = "us-east-1" alias = "replica" assume_role { role_arn = "arn:aws:iam::<replica-account-id>:role/<role-name>" session_name = "terraform-session" } } # Primary Amazon RDS database resource "aws_db_instance" "primary" { provider = aws.primary # ... RDS instance configuration } # Read replica in a different Region and account resource "aws_db_instance" "read_replica" { provider = aws.replica # ... RDS read replica configuration replicate_source_db = aws_db_instance.primary.id }

Neste exemplo:

  • O primeiro provider bloco configura o AWS provedor principal na us-west-1 região com o primary alias.

  • O segundo provider bloco configura um AWS provedor secundário na us-east-1 região com o replica alias. Esse provedor é usado para criar uma réplica de leitura do banco de dados principal em uma região e conta diferentes. O assume_role bloco é usado para assumir uma função do IAM na conta de réplica. O role_arn especifica o Amazon Resource Name (ARN) da função do IAM a ser assumida session_name e é um identificador exclusivo para a sessão do Terraform.

  • O aws_db_instance.primary recurso cria o banco de dados primário do Amazon RDS usando o primary provedor na us-west-1 região.

  • O aws_db_instance.read_replica recurso cria uma réplica de leitura do banco de dados principal na us-east-1 região usando o replica provedor. O replicate_source_db atributo faz referência ao ID do primary banco de dados.