Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

804
Views
AWS CloudFormation crear-apilar vs implementar

¿Puede alguien explicarme claramente la diferencia y la precedencia entre los comandos create-stack e deploy de AWS CLI Cloudformation ? Para mí, parece que hacen lo mismo y despliegan recursos.

¿Por qué cuando ejecuta el comando de implementación desde el cli, la pila de creación no tiene un conjunto de cambios ejecutable, mientras que la documentación dice:

Implementa la plantilla de AWS CloudFormation especificada creando y luego ejecutando un conjunto de cambios. El comando finaliza después de que AWS CloudFormation ejecuta el conjunto de cambios. Si desea ver el conjunto de cambios antes de que AWS CloudFormation lo ejecute, use la marca --no-execute-changeset.

over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

create-stack solo se puede usar cuando sabe que desea crear una nueva pila. Si desea actualizar una pila, debe usar un comando diferente, etc. Si está escribiendo (ug) archivos por lotes para ayudar a ejecutar su formación en la nube, esto puede ser un verdadero dolor de cabeza.

La deploy es una funcionalidad para aprovechar mejor los conjuntos de cambios: en lugar de tener que saber si existe una pila, simplemente puede ejecutar la implementación y la herramienta descubrirá lo que debe hacer. Con --no-execute-changeset , en realidad le proporcionará el comando necesario si decide que desea revisar los cambios antes de aplicarlos.

Parece que esto se introdujo en noviembre de 2016, probablemente en la época en que se lanzaron los conjuntos de cambios.

over 4 years ago · Santiago Trujillo Report

0

Supongo que la deploy es solo 'azúcar sintáctico' en torno a los métodos api CreateChangeSet , CreateStack y UpdateStack .

Tenga en cuenta que, aunque la deploy se encuentra en la CLI , no se encuentra en la referencia de la API .

Supongo que se prefiere deploy fuera de cualquier necesidad de revisar explícitamente un conjunto de cambios. Sin utilizar la deploy , es posible que necesite create-change-set luego decidir si desea crear o actualizar una pila. En este caso, la implementación es como una pila "upsert".


Dejé de ser perezoso y revisé el código, y sí, deploy es, en última instancia, una forma más agradable de usar la formación en la nube desde la CLI. La implementación está aquí y aquí . Tenga en cuenta que, a partir de hoy, la capacidad de controlar el comportamiento de reversión no existe para la deploy según este problema .

over 4 years ago · Santiago Trujillo Report

0

Tenga cuidado con un comportamiento extraño del comando de deploy cuando cambia el valor predeterminado del parámetro ( LatestAmi en mi caso).

 $ cat ec2.yaml AWSTemplateFormatVersion: "2010-09-09" Parameters: LatestAmi: Type: AWS::SSM::Parameter::Value<AWS::EC2::Image::Id> Default: /aws/service/canonical/ubuntu/server/20.04/stable/current/amd64/hvm/ebs-gp2/ami-id Resources: MyInstance: Type: AWS::EC2::Instance Properties: ImageId: !Ref LatestAmi InstanceType: t2.micro Tags: - Key: Name Value: cfn-deploy $ aws cloudformation deploy --template-file ec2.yaml --stack-name cfn-deploy Waiting for changeset to be created.. Waiting for stack create/update to complete Successfully created/updated stack - cfn-deploy $ cat ec2.yaml AWSTemplateFormatVersion: "2010-09-09" Parameters: LatestAmi: Type: AWS::SSM::Parameter::Value<AWS::EC2::Image::Id> Default: /aws/service/ami-amazon-linux-latest/amzn2-ami-hvm-x86_64-gp2 Resources: MyInstance: Type: AWS::EC2::Instance Properties: ImageId: !Ref LatestAmi InstanceType: t2.micro Tags: - Key: Name Value: cfn-deploy $ aws cloudformation deploy --template-file ec2.yaml --stack-name cfn-deploy Waiting for changeset to be created.. No changes to deploy. Stack cfn-deploy is up to date $ aws --version aws-cli/2.5.2 Python/3.9.11 Linux/5.15.0-23-generic exe/x86_64.ubuntu.22 prompt/off

Si usa el comando update-stack , la instancia se reemplaza con la AMI solicitada.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!