Crear, cargar e implementar la aplicación - Guía de incorporación avanzada 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.

Crear, cargar e implementar la aplicación

En primer lugar, cree un paquete de WordPress aplicaciones y, a continuación, utilice el CodeDeploy CTs para crear e implementar la aplicación.

  1. Descargue WordPress, extraiga los archivos y cree un. directorio /scripts.

    Comando de Linux:

    wget https://github.com/WordPress/WordPress/archive/master.zip

    Windows: pégalo https://github.com/WordPress/WordPress/archive/master.zip en una ventana del navegador y descarga el archivo zip.

    Cree un directorio temporal en el que ensamblar el paquete.

    Linux:

    mkdir /tmp/WordPress

    Windows: cree un directorio WordPress «», utilizará la ruta del directorio más adelante.

  2. Extraiga la WordPress fuente al directorio WordPress «» y cree un. directorio /scripts.

    Linux:

    unzip master.zip -d /tmp/WordPress_Temp cp -paf /tmp/WordPress_Temp/WordPress-master/* /tmp/WordPress rm -rf /tmp/WordPress_Temp rm -f master cd /tmp/WordPress mkdir scripts

    Windows: vaya al directorio «WordPress» que creó y cree allí un directorio de «scripts».

    Si se encuentra en un entorno Windows, asegúrese de establecer el tipo de interrupción de los archivos de script en Unix (LF). En Notepad ++, esta opción se encuentra en la parte inferior derecha de la ventana.

  3. Cree el archivo CodeDeploy appspec.yml en el WordPress directorio (si va a copiar el ejemplo, compruebe la hendidura, cada espacio cuenta). IMPORTANTE: Asegúrese de que la ruta «fuente» sea correcta para copiar los WordPress archivos (en este caso, en su WordPress directorio) al destino esperado (/). var/www/html/WordPress En el ejemplo, el archivo appspec.yml está en el directorio con los WordPress archivos, por lo que solo se necesita «/». Además, aunque haya utilizado una AMI de RHEL para su grupo de Auto Scaling, deje la línea «os: linux» tal como está. Ejemplo de archivo appspec.yml:

    version: 0.0 os: linux files: - source: / destination: /var/www/html/WordPress hooks: BeforeInstall: - location: scripts/install_dependencies.sh timeout: 300 runas: root AfterInstall: - location: scripts/config_wordpress.sh timeout: 300 runas: root ApplicationStart: - location: scripts/start_server.sh timeout: 300 runas: root ApplicationStop: - location: scripts/stop_server.sh timeout: 300 runas: root
  4. Cree scripts de archivos bash en. WordPress directorio /scripts.

    En primer lugar, cree config_wordpress.sh con el siguiente contenido (si lo prefiere, puede editar el archivo wp-config.php directamente).

    nota

    DBNameSustitúyalo por el valor indicado en el RFC de HA Stack (por ejemplo,wordpress).

    DB_MasterUsernameSustitúyalo por el MasterUsername valor indicado en el RFC de HA Stack (por ejemplo,admin).

    DB_MasterUserPasswordSustitúyalo por el MasterUserPassword valor indicado en el RFC de HA Stack (por ejemplo,p4ssw0rd).

    DB_ENDPOINTSustitúyalo por el nombre DNS del punto final en los resultados de ejecución del RFC de la pila HA (por ejemplo,srt1cz23n45sfg.clgvd67uvydk.us-east-1.rds.amazonaws.com). Puede encontrarlo en la GetRfcoperación (CLI: get-rfc --rfc-id RFC_ID) o en la página de detalles del RFC de la consola AMS para el RFC de la pila de alta disponibilidad que envió anteriormente.

    #!/bin/bash chmod -R 755 /var/www/html/WordPress cp /var/www/html/WordPress/wp-config-sample.php /var/www/html/WordPress/wp-config.php cd /var/www/html/WordPress sed -i "s/database_name_here/DBName/g" wp-config.php sed -i "s/username_here/DB_MasterUsername/g" wp-config.php sed -i "s/password_here/DB_MasterUserPassword/g" wp-config.php sed -i "s/localhost/DB_ENDPOINT/g" wp-config.php
  5. En install_dependencies.sh el mismo directorio, cree con el siguiente contenido:

    #!/bin/bash yum install -y php yum install -y php-mysql yum install -y mysql service httpd restart
    nota

    HTTPS se instala como parte de los datos del usuario en el momento del lanzamiento para permitir que las comprobaciones de estado funcionen desde el principio.

  6. En el mismo directorio, cree start_server.sh con el siguiente contenido:

    • Para las instancias de Amazon Linux, usa lo siguiente:

      #!/bin/bash service httpd start
    • Para las instancias de RHEL, usa esto (los comandos adicionales son políticas que permiten que SELINUX las acepte): WordPress

      #!/bin/bash setsebool -P httpd_can_network_connect_db 1 setsebool -P httpd_can_network_connect 1 chcon -t httpd_sys_rw_content_t /var/www/html/WordPress/wp-content -R restorecon -Rv /var/www/html service httpd start
  7. En el mismo directorio, cree stop_server.sh con el siguiente contenido:

    #!/bin/bash service httpd stop
  8. Cree el paquete zip.

    Linux:

    $ cd /tmp/WordPress $ zip -r wordpress.zip .

    Windows: Ve al directorio WordPress «», selecciona todos los archivos y crea un archivo zip, asegúrate de llamarlo wordpress.zip.

  1. Cargue el paquete de aplicaciones en el bucket de S3

    El paquete debe estar en su lugar para poder seguir desplegando la pila.

    Tendrá acceso automáticamente a cualquier instancia de bucket de S3 que cree. Puede acceder a él a través de sus Bastions (consulte Acceso a las instancias) o a través de la consola S3 y cargar el CodeDeploy paquete con él drag-and-drop, o bien navegando hasta el archivo y seleccionándolo.

    También puede usar el siguiente comando en una ventana de shell; asegúrese de tener la ruta correcta al archivo zip:

    aws s3 cp wordpress/wordpress.zip s3://BUCKET_NAME/
  2. Implemente el paquete WordPress CodeDeploy de aplicaciones

    DESPLIEGUE DE CÓDIGO DE DATOS REQUERIDO: DESPLIEGUE DE APLICACIONES:

    • CodeDeployApplicationName: el nombre que le diste a la CodeDeploy aplicación.

    • CodeDeployGroupName: Dado que tanto la CodeDeploy aplicación como el grupo se crearon a partir del nombre que le diste a la CodeDeploy aplicación en el RFC de la pila HA, es el mismo nombre que el CodeDeployApplicationName.

    • S3Bucket: el nombre que le diste al depósito S3.

    • S3 BundleType y S3Key: forman parte del paquete de WordPress aplicaciones que implementó.

    • VpcId: El VPC correspondiente.

    1. En la página Crear RFC, seleccione la categoría Despliegue, la subcategoría Aplicaciones, el elemento CodeDeploy Aplicación y operación Despliegue en la lista de selección de RFC CT.

    2. Mantenga la opción básica predeterminada y establezca los valores como se muestra.

      nota

      Haga referencia a la CodeDeploy aplicación, el grupo de CodeDeploy implementación, el depósito de S3 y el paquete creados anteriormente.

      Subject: WP-CD-Deploy-RFC Description: DeployWordPress S3Bucket: BUCKET_NAME S3Key: wordpress.zip S3BundleType: zip CodeDeployApplicationName: WordPress CodeDeployDeploymentGroupName: WordPress CodeDeployIgnoreApplicationStopFailures: false RevisionType: S3 VpcId: VPC_ID Name: WP-CD-Deploy-Op TimeoutInMinutes: 60
    3. Haga clic en Enviar cuando haya terminado.