Назад | Перейти на главную страницу

Эластичные перехватчики beanstalk не создаются при первом развертывании eb или в новых экземплярах EC2.

Что касается документов,

Представьте, что у меня есть .ebextension / 03_hooks.config, в котором есть

commands:
  create_app_deploy_post_dir:
    command: "mkdir -p /opt/elasticbeanstalk/hooks/appdeploy/post"
    ignoreErrors: true

files:
  "/opt/elasticbeanstalk/hooks/appdeploy/post/99-post-deploy-test.sh":
        mode: "000755"
        owner: root
        group: root
        content: |
          #!/usr/bin/env bash

          eventHelper.py --msg "Successfully executing post deployment hook." --severity INFO

Файл не создается и не выполняется во время самого первого развертывания, то есть когда экземпляр EC2 добавляется во время создания env или автоматического масштабирования. Новый экземпляр почти бесполезен и станет полезным только при следующем принудительном повторном развертывании приложения с помощью eb deploy или разверните zip из версий приложения.

Наблюдение

  1. Проверено, созданы ли файлы во вновь добавленном экземпляре EC2, но это не так.
  2. Команды, данные в commands директива также не выполняется, поскольку я проверил журналы eb.
  3. Это дает мне ощущение, что эти две директивы игнорируются при первом развертывании во вновь добавленном экземпляре.

Реальный вариант использования: у меня есть скрипты перехвата для написания и запуска / перезапуска nginx и uwsgi в appdeploy enack и post. Поэтому, если они не выполняются в новых экземплярах, до следующего развертывания будет периодически возвращаться 502.