我在帐户A中运行的VPC中有一个Elasticsearch。
我想将日志从帐户B中的Firehose传递到帐户A中的Elasticsearch。
有可能吗?
当我尝试从AWS CLI创建交付流时,出现异常,
$: /usr/local/bin/aws firehose create-delivery-stream --cli-input-json file://input.json --profile devops
An error occurred (InvalidArgumentException) when calling the CreateDeliveryStream operation: Verify that the IAM role has access to the ElasticSearch domain.
当修改为账户B中的Elasticsearch时,相同的IAM角色和相同的input.json起作用。我在AWS账户之间启用了Transit网关连接,并且我可以从账户B中的EC2实例将telnet连接到账户A中的Elasticsearch
添加我完整的terraform代码(我在AWS CLI和Terraform中都遇到了相同的异常): https://gist.github.com/karthikeayan/a67e93b4937a7958716dfecaa6ff7767
答案 0 :(得分:0)
您似乎没有为创建流时使用的角色授予足够的权限(从CLI示例中提供,我猜它的角色名为“ devops”)。至少您将需要firehose: CreateDeliveryStream
。
我建议为您的角色添加以下权限:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"firehose:PutRecord",
"firehose:CreateDeliveryStream",
"firehose:UpdateDestination"
],
"Resource": "*"
}
]
}
答案 1 :(得分:0)
https://vuejs.org/v2/guide/mixins.html
我从AWS论坛获悉当前不支持此功能。