Esta es la guía para AWS CDK desarrolladores de la versión 2. La primera versión del CDK pasó a la etapa de mantenimiento el 1.° de junio de 2022 y no cuenta con soporte desde el 1.° de junio de 2023.
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.
Prepare un AWS entorno para las implementaciones de CDK mediante la implementación de la pila de arranque de CDK, denominadaCDKToolkit
, en el entorno. AWS
La pila bootstrap es una CloudFormation pila que aprovisiona un bucket de Amazon S3 y un repositorio de Amazon ECR en el AWS entorno. El AWS CDK CLI utiliza estos recursos para almacenar plantillas sintetizadas y activos relacionados durante la implementación.
Uso
$
cdk bootstrap
<arguments>
<options>
Argumentos
- AWS entorno
-
El AWS entorno de destino en el que se implementará la pila de arranque en el siguiente formato:
aws://<account-id>/<region>
.Ejemplo:
aws://123456789012/us-east-1
Este argumento se puede proporcionar varias veces en un solo comando para implementar la pila de arranque en varios entornos.
De forma predeterminada, el CDK CLI arrancará todos los entornos a los que se hace referencia en la aplicación CDK o determinará un entorno a partir de las fuentes predeterminadas. Puede ser un entorno especificado mediante la
--profile
opción, a partir de variables de entorno o de fuentes predeterminadas AWS CLI .
Opciones
Para obtener una lista de las opciones globales que funcionan con todos los CDK CLI comandos, consulteOpciones globales.
--bootstrap-bucket-name, --toolkit-bucket-name, -b
STRING
-
El nombre del bucket de Amazon S3 que utilizará la CDK CLI. Este depósito se creará y no debe existir actualmente.
Proporcione esta opción para anular el nombre predeterminado del bucket de Amazon S3.
Cuando utilice esta opción, es posible que deba personalizar la síntesis. Para obtener más información, consulte Personalice la síntesis de pilas de CDK.
Valor predeterminado: indefinido
--bootstrap-customer-key
BOOLEAN
-
Cree una clave maestra de cliente (CMK) para el bucket de arranque (se le cobrará, pero podrá personalizar los permisos, solo para el arranque moderno).
Esta opción no es compatible con
--bootstrap-kms-key-id
.Valor predeterminado: indefinido
--bootstrap-kms-key-id
STRING
-
El ID de la clave AWS KMS maestra que se utilizará para el SSE-KMS cifrado.
Proporcione esta opción para anular la AWS KMS clave predeterminada utilizada para cifrar el bucket de Amazon S3.
Esta opción no es compatible con
--bootstrap-customer-key
.Valor predeterminado: indefinido
--cloudformation-execution-policies
ARRAY
-
La política de IAM gestionada ARNs que debe estar asociada a la función de despliegue que asuma AWS CloudFormation durante el despliegue de sus pilas.
De forma predeterminada, las pilas se implementan con todos los permisos de administrador mediante la política
AdministratorAccess
.Puede proporcionar esta opción varias veces en un mismo comando. También puede incluir varios ARNs caracteres en una sola cadena, con las individuales ARNs separadas por comas. A continuación, se muestra un ejemplo:
$
cdk bootstrap --cloudformation-execution-policies
"arn:aws:iam::aws:policy/AWSLambda_FullAccess,arn:aws:iam::aws:policy/AWSCodeDeployFullAccess"
Para evitar errores en la implementación, asegúrese de que las políticas que especifique sean suficientes para cualquier implementación que vaya a realizar en el entorno que se arranca.
Esta opción solo se aplica al arranque moderno.
importante
La plantilla bootstrap moderna concede de forma efectiva los permisos implícitos
--cloudformation-execution-policies
a cualquier AWS cuenta de la--trust
lista. De forma predeterminada, esto extiende los permisos de lectura y escritura a cualquier recurso de la cuenta iniciada. Asegúrese de configurar la pila de inicio con políticas y cuentas de confianza con las que se sienta cómodo.Valor predeterminado:
[]
--custom-permissions-boundary, -cpb
STRING
-
Especifique el nombre del límite de permisos que se utilizará.
Esta opción no es compatible con
--example-permissions-boundary
.Valor predeterminado: indefinido
--example-permissions-boundary, -epb
BOOLEAN
-
Utilice el ejemplo de límite de permisos que proporciona AWS CDK.
Esta opción no es compatible con
--custom-permissions-boundary
.La política de límite de permisos que proporciona el CDK debe considerarse como un ejemplo. Edite el contenido y consulte la política de ejemplo si está probando la característica. Conviértala en una nueva política para las implementaciones reales, si aún no existe ninguna. Lo importante es evitar una desviación. Lo más probable es que se mantenga un límite de permisos y que tenga convenciones específicas, incluida la nomenclatura.
Para obtener más información sobre la configuración de los permisos, incluido el uso de los límites de los permisos, consulte la Guía para desarrolladores de seguridad y protección
. Valor predeterminado: indefinido
--execute
BOOLEAN
-
Configure si se ejecutará el conjunto de cambios.
Valor predeterminado:
true
--force, -f
BOOLEAN
-
Ejecute siempre el arranque, incluso si se degradara la versión de la plantilla de arranque.
Valor predeterminado:
false
--help, -h
BOOLEAN
-
Muestra la información de referencia del comando
cdk bootstrap
. --previous-parameters
BOOLEAN
-
Utilice los valores anteriores para los parámetros existentes.
Una vez implementada una plantilla de arranque con un conjunto de parámetros, debe configurar esta opción como
false
para cambiar cualquier parámetro en futuras implementaciones. Cuando esté establecida comofalse
, debe volver a suministrar todos los parámetros proporcionados anteriormente.Valor predeterminado:
true
--public-access-block-configuration
BOOLEAN
-
Bloquee la configuración de acceso público en el bucket de Amazon S3 creado y utilizado por la CDK CLI.
Valor predeterminado:
true
--qualifier
STRING
-
Valor de cadena de nueve dígitos que es único para cada pila de arranque. Este valor se agrega al ID físico de los recursos de la pila de arranque.
Si se proporciona un calificador, se evitan conflictos de nombres de recursos cuando se aprovisionan varias pilas de arranque en el mismo entorno.
Cuando cambia el calificador, la aplicación CDK debe pasar el valor modificado al sintetizador de pilas. Para obtener más información, consulte Personalice la síntesis de pilas de CDK.
Valor predeterminado:
hnb659fds
. Este valor no tiene importancia. --show-template
BOOLEAN
-
En lugar de ejecutar el arranque, imprima la plantilla de arranque actual en la salida estándar (
stdout
). A continuación, puede copiar y personalizar la plantilla según sea necesario.Valor predeterminado:
false
-
Etiquetas para agregar a la pila de arranque en el formato de
KEY=VALUE
.Valor predeterminado:
[]
--template
STRING
-
Use la plantilla del archivo proporcionado en lugar de la plantilla integrada.
--termination-protection
BOOLEAN
-
Active la protección de AWS CloudFormation terminación en la pila de bootstrap.
Cuando se establece como
true
, la protección de terminación está habilitada. Esto evita que se elimine accidentalmente la pila de arranque.Para obtener más información sobre la protección de terminación, consulte Cómo proteger una pila para que no se la elimine en la Guía del usuario de AWS CloudFormation .
Valor predeterminado: indefinido
--toolkit-stack-name
STRING
-
El nombre de la pila de arranque que se va a crear.
De forma predeterminada,
cdk bootstrap
despliega una pila con un nombreCDKToolkit
en el entorno especificado. AWS Utilice esta opción para proporcionar un nombre diferente a la pila de arranque.El CDK. CLI usa este valor para verificar la versión de la pila de bootstrap.
Valor predeterminado:
CDKToolkit
Obligatorio: sí
--trust
ARRAY
-
En él Cuenta de AWS IDs se debe confiar para realizar las implementaciones en este entorno.
Siempre se confiará en la cuenta que ejecute el arranque.
Esta opción requiere que también proporcione las
--cloudformation-execution-policies
.Puede proporcionar esta opción varias veces en un mismo comando.
Esta opción solo se aplica al arranque moderno.
Para agregar cuentas de confianza a una pila de arranque existente, debe especificar todas las cuentas en las que puede confiar, incluidas las que haya proporcionado anteriormente. Si solo proporciona cuentas nuevas en las que confiar, se eliminarán las cuentas de confianza anteriores.
A continuación, se muestra un ejemplo de confianza de dos cuentas:
$
cdk bootstrap
⏳ Bootstrapping environment aws://123456789012/us-west-2... Trusted accounts for deployment: 234567890123, 987654321098 Trusted accounts for lookup: (none) Execution policies: arn:aws:iam::aws:policy/AdministratorAccess CDKToolkit: creating CloudFormation changeset... ✅ Environment aws://123456789012/us-west-2 bootstrapped.aws://123456789012/us-west-2
--trust234567890123
--trust987654321098
--cloudformation-execution-policiesarn:aws:iam::aws:policy/AdministratorAccess
importante
La plantilla bootstrap moderna otorga de manera efectiva los permisos implícitos
--cloudformation-execution-policies
a cualquier AWS cuenta de la--trust
lista. De forma predeterminada, esto extiende los permisos de lectura y escritura a cualquier recurso de la cuenta iniciada. Asegúrese de configurar la pila de inicio con políticas y cuentas de confianza con las que se sienta cómodo.Valor predeterminado:
[]
--trust-for-lookup
ARRAY
-
Se debe confiar en ella para buscar valores en este entorno. Cuenta de AWS IDs
Use esta opción para dar permiso a las cuentas para sintetizar las pilas que se van a implementar en el entorno, sin darles permiso para implementar esas pilas directamente.
Puede proporcionar esta opción varias veces en un mismo comando.
Esta opción solo se aplica al arranque moderno.
Valor predeterminado:
[]
Ejemplos
Inicie el AWS entorno especificado en el perfil de producción
$
cdk bootstrap --profile prod
Implemente la pila de arranque en los entornos foo y bar
$
cdk bootstrap --app='node bin/main.js' foo bar
Exporte la plantilla de arranque para personalizarla
Si tiene requisitos específicos que la plantilla de arranque no cumple, puede personalizarla para que se adapte a sus necesidades.
Puede exportar la plantilla de arranque, modificarla e implementarla utilizando. AWS CloudFormation A continuación, se muestra un ejemplo de exportación de la plantilla existente:
$
cdk bootstrap --show-template > bootstrap-template.yaml
También puede indicarle al CDK CLI para usar una plantilla personalizada. A continuación, se muestra un ejemplo:
$
cdk bootstrap --template my-bootstrap-template.yaml
Ejecute el arranque con un límite de permisos. Luego, elimine ese límite de permisos
Para ejecutar el arranque con un límite de permisos personalizado, ejecutamos lo siguiente:
$
cdk bootstrap --custom-permissions-boundary my-permissions-boundary
Para eliminar el límite de permisos, ejecutamos lo siguiente:
$
cdk bootstrap --no-previous-parameters
Utilice un calificador para distinguir los recursos que se crean para un entorno de desarrollo
$
cdk bootstrap --qualifier dev2024