问题描述
我正在构建一个由 AWS ElasticSearch(包括 ElasticSearch 和 Kibana)、LogStash 和 FileBeat 组成的设置。我一直在关注 this tutorial,它解释了如何为 Amazon Elasticsearch Service 设置 Logstash 服务器并使用 IAM 进行身份验证。
我正在使用 Ubuntu 18.04 EC2 m4.large 实例来托管 LogStash 和 FileBeat。我已经在 VPC 中配置了我的所有资产。到目前为止,我已经配置了一个 AWS ES 域,一个 Ubuntu 18.04 EC2,然后在其中安装了 LogStash。现在,我忽略了 FileBeat,我只想将我的 LogStash 服务连接到 AWS ES 域。
根据教程,我有
- 创建了 IAM 访问策略
- 使用“ec2.amazonaws.com”作为可信实体创建角色 logstash-system-es
- 在我的 AWS ES 域仪表板中授权角色
- 已安装 LogStash 并按指定进行配置 (在这里,我在输出部分中输入了我正在使用的访问密钥及其 ID。但是,我不确定角色和访问密钥之间的关系)
- 启动 LogStash 并跟踪 logstash-plain.log 文件以查看输出
当我检查输出时,它出现 LogStash 无法连接到 ES 域。以下行开始无限出现。 (我已将 AWS ES 域名替换为 AWSESDOMAIN)。
尝试恢复与死 ES 实例的连接,但得到一个 错误。 {:url=>"https://vpc-AWSESDOMAIN.us-east-1.es.amazonaws.com:443/",:error_type=>LogStash::Outputs::AmazonElasticSearch::HttpClient::Pool::BadResponseCodeError,:error=>"在 URL 上联系 Elasticsearch 时得到响应代码 '403' 'https://vpc-AWSESDOMAIN.us-east-1.es.amazonaws.com:443/'"}
仅供参考,我在设置时使用细粒度访问控制配置了我的 AWS ES 域。
这里似乎有什么问题?是否与细粒度访问控制有关?安全组? IAM 问题?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)