AWS Elastic Beanstalk无法访问AWS MSK

时间:2019-05-14 05:49:44

标签: amazon-web-services apache-kafka aws-lambda amazon-elastic-beanstalk amazon-vpc

我有一个在3个子网的VPC内运行的AWS MSK集群。

当我创建Elastic Beanstalk(Java)环境时,它要求提供VPC,并且在运行MSK集群的地方​​配置了同一VPC。我还选择了我的Elastic Beanstalk网络配置中列出的所有三个子集。我没有分配公共IP,因为我不需要从Internet访问Elastic Beanstalk实例。

我还向我在“安全性”配置下为我的Elastic Beanstalk环境选择的IAM实例配置文件分配了AWS MSK完全访问权限。仅出于信息完整性的考虑,我选择了AWSServiceRoleForElasticBeanstalk作为服务角色。

另一方面,当我将Lambda配置为访问MSK群集时,它向我询问VPC以及明确的安全组。但是在使用Elastic Beanstalk的情况下,我看不到安全组的任何此类配置选项。我在这里俯瞰什么吗?我的Lambda能够成功访问MSK群集。

我不明白为什么我的Elastic Beanstalk实例无法访问我的AWS MSK集群。我想念什么吗?

1 个答案:

答案 0 :(得分:1)

在AWS Support的帮助下,我能够解决此问题。

首先,您可以在“实例”配置卡下配置安全组。

但是,这让我有些困惑,因为VPC和子网位于“网络”配置卡下,该卡堆叠在“实例”配置卡之后。 “实例”下列出的安全组直接取决于“网络”下选择的VPC和子网。如果您在“网络”中更改选择,则还应更新/查看“实例”下的“安全组”选择。

因此,在我的情况下,首先在“网络”下选择我的目标VPC和相关子网,然后才可以在“实例”下看到我的目标安全组。