Pila de dos niveles de alta disponibilidad | Crear - Referencia avanzada de tipos de cambios de AMS

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.

Pila de dos niveles de alta disponibilidad | Crear

Crea una pila compuesta por un grupo de Auto Scaling, una instancia de base de datos de RDS y un balanceador de carga (ELB). Opcionalmente, permite el despliegue de aplicaciones CodeDeploy mediante la creación también de un grupo de CodeDeploy aplicaciones y despliegues, ambos con el nombre indicado. ApplicationName Se pueden configurar todos los parámetros de los recursos.

Clasificación completa: Despliegue | Pilas estándar | Pila de dos niveles de alta disponibilidad | Crear

Detalles del tipo de cambio

ID de tipo de cambio

ct-06mjngx5flwto

Versión actual

3.0

Duración prevista de la ejecución

60 minutos

Aprobación de AWS

Obligatorio

Aprobación del cliente

No obligatorio

Modo de ejecución

Automatizado

Información adicional

Cree pilas de dos niveles de alta disponibilidad

Cambio type details for creating a high availability two-tier stack with configurable parameters.

Cómo funciona:

  1. Vaya a la página Crear RFC: en el panel de navegación izquierdo de la consola AMS, haga clic RFCspara abrir la página de RFCs listas y, a continuación, haga clic en Crear RFC.

  2. Elija un tipo de cambio (CT) popular en la vista predeterminada de búsqueda de tipos de cambios o seleccione un CT en la vista Elegir por categoría.

    • Busque por tipo de cambio: puede hacer clic en un CT popular del área de creación rápida para abrir inmediatamente la página Ejecutar RFC. Tenga en cuenta que no puede elegir una versión antigua de CT con Quick Create.

      Para ordenar CTs, utilice el área Todos los tipos de cambios en la vista de tarjeta o tabla. En cualquiera de las vistas, seleccione una CT y, a continuación, haga clic en Crear RFC para abrir la página Ejecutar RFC. Si corresponde, aparece la opción Crear con una versión anterior junto al botón Crear RFC.

    • Elegir por categoría: seleccione una categoría, una subcategoría, un elemento y una operación, y se abrirá el cuadro de detalles del CT con la opción Crear con una versión anterior, si corresponde. Haga clic en Crear RFC para abrir la página Ejecutar RFC.

  3. En la página Ejecutar RFC, abra el área del nombre del CT para ver el cuadro de detalles del CT. Se requiere un asunto (lo rellena automáticamente si elige su CT en la vista Buscar tipos de cambios). Abra el área de configuración adicional para añadir información sobre la RFC.

    En el área de configuración de ejecución, utilice las listas desplegables disponibles o introduzca valores para los parámetros necesarios. Para configurar los parámetros de ejecución opcionales, abra el área de configuración adicional.

  4. Cuando haya terminado, haga clic en Ejecutar. Si no hay errores, aparecerá la página de la RFC creada correctamente con los detalles de la RFC enviada y el resultado inicial de la ejecución.

  5. Abra el área de parámetros de ejecución para ver las configuraciones que envió. Actualice la página para actualizar el estado de ejecución de la RFC. Si lo desea, cancele la RFC o cree una copia de la misma con las opciones de la parte superior de la página.

Cómo funciona:

  1. Utilice el método Template Create (crea dos archivos JSON, uno para los parámetros RFC y otro para los parámetros de ejecución) y ejecute el create-rfc comando con los dos archivos como entrada. Ambos métodos se describen aquí.

  2. Envíe el aws amscm submit-rfc --rfc-id ID comando RFC: con el ID de RFC devuelto.

    Supervise el comando RFC:. aws amscm get-rfc --rfc-id ID

Para comprobar la versión del tipo de cambio, utilice este comando:

aws amscm list-change-type-version-summaries --filter Attribute=ChangeTypeId,Value=CT_ID
nota

Puede utilizar cualquier CreateRfc parámetro con cualquier RFC, forme o no parte del esquema del tipo de cambio. Por ejemplo, para recibir notificaciones cuando cambie el estado de la RFC, añada esta línea --notification "{\"Email\": {\"EmailRecipients\" : [\"email@example.com\"]}}" a la parte de los parámetros de la RFC de la solicitud (no a los parámetros de ejecución). Para ver una lista de todos los CreateRfc parámetros, consulta la referencia de la API de administración de cambios de AMS.

CREACIÓN DE PLANTILLA:

  1. Envía los parámetros de ejecución del esquema JSON para este tipo de cambio a un archivo de tu carpeta actual; en este ejemplo, se llama Create2 tierStackParams .json.

    aws amscm get-change-type-version --change-type-id "ct-06mjngx5flwto" --query "ChangeTypeVersion.ExecutionInputSchema" --output text > Create2tierStackParams.json
  2. Modifique el esquema y reemplácelo según corresponda. variables

    { "Description": "HA two tier stack", "Name": "Two-Tier-Stack", "TimeoutInMinutes": 360, "VpcId": "VPC-ID", "AutoScalingGroup": { "AmiId": "AMI-ID", "SubnetIds": [ "Subnet-ID", "Subnet-ID" ] }, "Database": { "DBName": "DB_Name", "DBEngine": "postgres", "EngineVersion": "9.6.3", "LicenseModel": "postgresql-license", "MasterUsername": "masterusername", "SubnetIds": [ "Subnet-ID", "Subnet-ID" ] }, "LoadBalancer": { "SubnetIds": [ "Subnet-ID", "Subnet-ID" ] } }
  3. Envía la plantilla CreateRfc JSON a un archivo de tu carpeta actual; en el ejemplo, se llama Create2 tierStackRfc .json:

    aws amscm create-rfc --generate-cli-skeleton > Create2tierStackRfc.json
  4. Modifique la plantilla RFC según corresponda y guárdela. Restablezca las horas de inicio y finalización de una RFC programada o déjelas desactivadas para una RFC lo antes posible.

    { "ChangeTypeVersion": 3.0", "ChangeTypeId": "ct-06mjngx5flwto", "Title": "HA-2-Tier-RFC", "RequestedStartTime": "2019-04-28T22:45:00Z", "RequestedEndTime": "2019-04-28T22:45:00Z" }
  5. Cree el RFC especificando el archivo Create2 tierStackRfc .json y el archivo de parámetros de ejecución Create2 .json: tierStackParams

    aws amscm create-rfc --cli-input-json file://Create2tierStackRfc.json --execution-parameters file://Create2tierStackParams.json

    Recibirá el ID del nuevo RFC en la respuesta y podrá usarlo para enviar y monitorear el RFC. Hasta que la envíe, la RFC permanece en estado de edición y no se inicia.

nota

Se trata de un gran aprovisionamiento de recursos, especialmente si se añaden. UserData El nombre del recurso de Amazon (ARN) del balanceador de carga se encuentra en la página Load Balancer de la consola buscando con EC2 el ID de pila del balanceador de carga devuelto en el resultado de la ejecución de la RFC.

Parámetros de entrada de ejecución

Para obtener información detallada sobre los parámetros de entrada de la ejecución, consulteEsquema de cambio: escriba ct-06mjngx5flwto.

Ejemplo: Parámetros necesarios

{ "Description": "My stack", "TimeoutInMinutes": 60, "VpcId": "vpc-01234567890abcdef", "Name": "MyStack", "AutoScalingGroup": { "AmiId" : "ami-01234567890abcdef", "SubnetIds": ["subnet-01234567890abcdef", "subnet-01234567891abcdef"] }, "LoadBalancer": { "SubnetIds": ["subnet-01234567890abcdef", "subnet-01234567891abcdef"] }, "Database": { "DBName": "main", "DBEngine": "MySQL", "EngineVersion": "4.5.6", "LicenseModel": "general-public-license", "MasterUsername": "admin", "MasterUserPassword": "adminpass", "SubnetIds": ["subnet-01234567890abcdef", "subnet-01234567891abcdef"] } }

Ejemplo: todos los parámetros

{ "Description": "My stack", "VpcId": "vpc-12345678", "TimeoutInMinutes": 60, "Name": "MyStack", "Tags": [ { "Key": "Foo", "Value": "Bar" } ], "AutoScalingGroup": { "AmiId": "ami-12341234", "Cooldown": 120, "DesiredCapacity": 1, "EBSOptimized": false, "HealthCheckGracePeriod": 600, "IAMInstanceProfile": "foo", "InstanceDetailedMonitoring": true, "InstanceRootVolumeIops": 0, "InstanceRootVolumeName": "/dev/xvda", "InstanceRootVolumeSize": 30, "InstanceRootVolumeType": "gp2", "InstanceType": "m3.medium", "MaxInstances": 1, "MinInstances": 1, "ScaleDownPolicyCooldown": 300, "ScaleDownPolicyEvaluationPeriods": 4, "ScaleDownPolicyPeriod": 60, "ScaleDownPolicyScalingAdjustment": -1, "ScaleDownPolicyStatistic": "Average", "ScaleDownPolicyThreshold": 35, "ScaleMetricName": "CPUUtilization", "ScaleUpPolicyCooldown": 60, "ScaleUpPolicyEvaluationPeriods": 2, "ScaleUpPolicyPeriod": 60, "ScaleUpPolicyScalingAdjustment": 2, "ScaleUpPolicyStatistic": "Average", "ScaleUpPolicyThreshold": 75, "SubnetIds": ["subnet-a0b1c2d3", "subnet-e4f5g6h7"], "UserData": ["#!/bin/bash","echo hello"] }, "LoadBalancer": { "SubnetIds": ["subnet-a0b1c2d3", "subnet-a0b2c9d8"], "HealthCheckInterval": 10, "HealthCheckTarget": "HTTP:80/index.html", "HealthCheckTimeout": 10, "Public": false, "AccessCIDRRange": "1.2.3.4/0" }, "Database": { "AllocatedStorage": 100, "BackupRetentionPeriod": 7, "Backups": true, "DBEngine": "postgres", "DBName": "my_db", "EngineVersion": "9.5.2", "InstanceType": "db.m3.medium", "IOPS": 0, "LicenseModel": "postgresql-license", "MasterUsername": "myadminuser", "MasterUserPassword": "!#$%&')*+,-.0:;=>?AZ[\\^_`a{|~", "MultiAZ": false, "Port": 5432, "PreferredBackupWindow": "22:00-23:00", "PreferredMaintenanceWindow": "wed:03:32-wed:04:02", "StorageEncrypted": false, "StorageType": "gp2", "SubnetIds": ["subnet-a0b1c2d3", "subnet-a0b2c9d8"] }, "Application": { "ApplicationName": "MyApplication", "DeploymentConfigName": "CodeDeployDefault.OneAtATime" }, "EnforceIMDSv2": "optional" }