Información general - AWS Guía prescriptiva

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Información general

Los proveedores de Terraform son complementos que permiten a Terraform interactuar con diferentes API. El AWS proveedor de Terraform es el complemento oficial para administrar la AWS infraestructura como código (IaC) con Terraform. Traduce la sintaxis de Terraform en llamadas a la AWS API para crear, leer, actualizar y eliminar recursos. AWS

El AWS proveedor se encarga de la autenticación, traduce la sintaxis de Terraform en llamadas a la AWS API y aprovisiona los recursos. AWS Utiliza un bloque de provider código de Terraform para configurar el complemento del proveedor que Terraform utiliza para interactuar con la API. AWS Puedes configurar varios bloques AWS de proveedores para administrar los recursos en diferentes Cuentas de AWS regiones.

A continuación, se muestra un ejemplo de configuración de Terraform que usa varios bloques de AWS proveedores con alias para administrar una base de datos de Amazon Relational Database Service (Amazon RDS) que tiene una réplica en una región y una cuenta diferentes. Los proveedores principal y secundario asumen diferentes funciones 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 }

En este ejemplo:

  • El primer provider bloque configura el AWS proveedor principal de la us-west-1 región con el alias. primary

  • El segundo provider bloque configura un AWS proveedor secundario en la us-east-1 región con el alias. replica Este proveedor se utiliza para crear una réplica de lectura de la base de datos principal en una región y una cuenta diferentes. El assume_role bloque se utiliza para asumir una función de IAM en la cuenta de réplica. role_arnEspecifica el nombre de recurso de Amazon (ARN) de la función de IAM que se va a asumir y session_name es un identificador único para la sesión de Terraform.

  • El aws_db_instance.primary recurso crea la base de datos principal de Amazon RDS mediante el primary proveedor de la us-west-1 región.

  • El aws_db_instance.read_replica recurso crea una réplica de lectura de la base de datos principal de la us-east-1 región mediante el replica proveedor. El replicate_source_db atributo hace referencia al ID de la primary base de datos.