【问题标题】:How to customize EC2 instance in Elastic Beanstalk Environment如何在 Elastic Beanstalk 环境中自定义 EC2 实例
【发布时间】:2020-10-23 13:31:07
【问题描述】:

我有一个可用的 Elastic Beanstalk 环境 (PHP 7.3)。

The ec2 uses Amazon linux2.
I now have to run some userdata ( yum install ... , curl ...) on these ec2 before they start. 
Is this possible ?
I wish userdata was included in Launch configuration. 

任何人都可以在这里提供一些指导。 仅供参考,我正在使用 cloudformation。

谢谢!

【问题讨论】:

    标签: amazon-web-services amazon-ec2 amazon-elastic-beanstalk


    【解决方案1】:

    无法直接修改 EB 在其实例上使用的 UserData,因为 UserData 是由 EB 服务根据您的设置构建的。您可以访问和查看它,但不能从CloudFormation 级别进行修改。

    根据您的确切需求,很少有选项可以满足您的目的:

    1. .ebextensions 中的用户 Resources 部分将 CloudFormation 代码添加到 EB 正在生成的模板中。

    2. 创建 custom AMI 以代替 EB 提供的那些。这样您就可以设置它们并根据您的要求进行微调。

    3. 使用.ebextensionsplatform hooks 安装您需要的额外软件或curl 网络服务。

    希望这会有所帮助。

    【讨论】:

    • 这有帮助。自定义 AMI 路由是最简单的,但会创建自己修补操作系统的额外工作。这可能不是很可扩展。但是,我认为添加资源部分可能符合我的目的。我有点困惑,希望得到一些指导。这将是我的步骤—— 1. 在 CF 模板中添加一个资源部分:但是我在这里提到的是哪个资源。理想情况下,它应该是启动配置?你有样本文件吗?谢谢
    • @Judi EB 已经设置了 LC。我不确定你可以直接修改它。您可以添加资源,例如AWS::AutoScaling::LifecycleHook,如here 所示。但是,如果您只想运行 yumcurl,那么使用 .ebextensions 有什么问题?
    • 谢谢,我会尝试两种方法,但看起来 .ebextensions 应该最适合我的情况。
    • @Judi 没问题 :-)。让我知道它会如何进行。如果我的回答有帮助,我们将不胜感激。
    猜你喜欢
    • 2011-12-24
    • 2018-09-24
    • 2017-12-16
    • 2014-04-12
    • 2014-12-08
    • 2012-09-24
    • 2012-12-13
    • 2020-12-10
    • 2017-06-16
    相关资源
    最近更新 更多