如何自动创建AWS EB实例到VPC的经典链接

时间:2018-08-29 00:36:57

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

我在EB上有一个经典应用程序,需要连接到VPC中的RDS。

通过进入EC2-实例-操作-ClassicLink-链接到VPC,我可以手动配置EB实例以允许经典链接到VPC。 一旦做到这一点,一切都会很好,但没有人工干预,它将不会自动链接新实例。

我知道我需要将EB应用程序移动到VPC中,但是我想知道是否可以将EB设置为EB中的新实例自动创建经典链接?

我本以为可以编辑config / yml文件来预配置新实例,但没有找到对此的引用。

有人知道这是否可行吗?

谢谢!

2 个答案:

答案 0 :(得分:0)

  

我想知道是否可以将EB设置为EB中的新实例自动创建经典链接

是-您可以使用attach-classic-link-vpc命令将EC2-Classic实例链接到启用了ClassicLink的VPC。请参阅EB-CLIPowerShellEC2API参考文档,以获取每种语言的指南。

如果您希望实例在创建后自动执行操作,我的建议是使用EC2API。通过metadata calls查询并获取实例ID和VPC ID。然后在EC2API调用中使用ID。

  

有人知道这是否可行吗?

检查EC2API attach-classic-link-vpc页面底部的example或另一个示例found at this site。稍后,您将授予权限,使其首先通过身份和访问管理运行此命令。

如果您需要classiclink启用VPC或执行其他常见的classiclink任务,可以在here中找到其他classiclink api调用。

试一下然后试一试。如果您遇到困难,请创建一个新问题,并提供准确的详细信息以及可以发布的尽可能多的配置/诊断信息,我们会尽力帮助您解决问题。

答案 1 :(得分:0)

我可以使用以下脚本来做到这一点(在EB环境变量中设置CLASSIC_LINK_GROUPS,以便可以更改每个环境使用的组)

# Enable ClassicLink on the new instance (so it can connect to VPC resources)
commands:
  "Link to VPC":
    command: >
      aws ec2 attach-classic-link-vpc
      --instance-id `wget -q -O - http://169.254.169.254/latest/meta-data/instance-id`
      --vpc-id vpc-XXX
      --groups `sudo /opt/elasticbeanstalk/bin/get-config environment -k CLASSIC_LINK_GROUPS`
      --region us-west-2

将其另存为00_classic_link.config文件夹中的.ebextensions