Мне нужно развернуть один и тот же код PHP в 3 средах на AWS Elastic beanstalk. Эти среды будут сообщать разные имена приложений на новой реликвии.
Новый лицензионный ключ не может быть развернут в хранилище.
Пожалуйста, посоветуйте стратегии для достижения этой цели.
Для PHP в AWS Elastic Beanstalk вам необходимо выполнить следующие шаги:
В папке .ebextensions внутри вашего приложения Elastic BeanStalk
создайте новый файл с именем newrelic.config. Добавьте следующий контент в
файл:
packages:
yum:
newrelic-php5: []
rpm:
newrelic: INSERT_LINK_TO_AGENT
commands:
configure_new_relic:
command: newrelic-install install
env:
NR_INSTALL_SILENT: true
NR_INSTALL_KEY: INSERT_LICENSE_KEY
Если вы используете хранилище паролей, вы должны следовать их рекомендациям. Если это не так, вам, возможно, придется создать сценарий оболочки, чтобы заменить лицензионный ключ из безопасной корзины S3.
Положите свой лицензионный ключ в безопасное ведро S3. Затем используйте скрипт Bash, похожий на:
#!/bin/bash
password=$(aws ssm get-parameters --region us-east-1 --names MySecureLicenseKey --with-decryption --query Parameters[0].Value)
# code to replace INSERT_LICENSE_KEY - need to update the path to where you have it land
sed 's/INSERT_LICENSE_KEY/$password/g' /etc/newrelic/newrelic.config
Вдохновленный: https://aws.amazon.com/blogs/mt/use-parameter-store-to-securely-access-secrets-and-config-data-in-aws-codedeploy/
Других решений пока нет …