Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services AWS Elastic Beanstalk无法访问AWS MSK_Amazon Web Services_Apache Kafka_Aws Lambda_Amazon Elastic Beanstalk_Amazon Vpc - Fatal编程技术网

Amazon web services AWS Elastic Beanstalk无法访问AWS MSK

Amazon web services AWS Elastic Beanstalk无法访问AWS MSK,amazon-web-services,apache-kafka,aws-lambda,amazon-elastic-beanstalk,amazon-vpc,Amazon Web Services,Apache Kafka,Aws Lambda,Amazon Elastic Beanstalk,Amazon Vpc,我有一个AWS MSK集群在一个VPC内运行,有3个子网 当我创建我的Elastic Beanstalk(Java)环境时,它要求VPC,我在运行MSK集群的地方配置了相同的VPC。我还选择了Elastic Beanstalk网络配置中列出的所有三个子集。我没有分配公共IP,因为我不需要从internet访问Elastic Beanstalk实例 我还为我在安全配置下为Elastic Beanstalk环境选择的IAM实例配置文件分配了AWS MSK完全访问权限。为了信息的完整性,我选择了AWS

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

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

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

另一方面,当我将Lambda配置为访问MSK集群时,它明确要求我提供VPC和安全组。但在Elastic Beanstalk中,我看不到任何安全组的此类配置选项。我是不是忽略了什么?我的Lambda能够成功访问MSK群集


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

在AWS支持的帮助下,我解决了这个问题

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

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


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

是否可以编写一个关于如何实现所有这些目标的分步教程?我正试着做你做过的事,但是没有用nodejs。然而,我被困在AWS MSK producer部分,在那里我在向主题AWSKafkaTutorialTopic发送密钥为null的消息时遇到了这个错误。我真的很感激