我试图将数据从amazon kinesis data firehose发送到amazon elasticsearch服务,但它记录了一个错误 503 Service Unavailable
. 但是,我可以到达elasticsearch端点( https://vpc-XXX.<region>.es.amazonaws.com
)并对其进行查询。我还讨论了如何在amazon elasticsearch服务中防止HTTP503服务不可用错误?可以确认我的设置有足够的资源。
下面是我在保存失败日志的s3备份桶中遇到的错误:
{
"attemptsMade": 8,
"arrivalTimestamp": 1599748282943,
"errorCode": "ES.ServiceException",
"errorMessage": "Error received from Elasticsearch cluster. <html><body><h1>503 Service Unavailable</h1>\nNo server is available to handle this request.\n</body></html>",
"attemptEndingTimestamp": 1599748643460,
"rawData": "eyJ0aWNrZXJfc3ltYm9sIjoiQUxZIiwic2VjdG9yIjoiRU5FUkdZIiwiY2hhbmdlIjotNi4zNSwicHJpY2UiOjg4LjgzfQ==",
"subsequenceNumber": 0,
"esDocumentId": "49610662085822146490768158474738345331794592496281976834.0",
"esIndexName": "prometheus-2020-09",
"esTypeName": ""
},
有人知道如何解决这个问题并将数据编入elasticsearch吗?
1条答案
按热度按时间lndjwyie1#
原来,我的问题是选择了错误的安全组。
我使用的是同一个安全组(我将其命名为
elasticsearch-${domain_name}
)连接到elasticsearch示例(该示例允许tcp从firehose_es
安全组)。我应该选择firehose_es
而不是安全组。根据评论中的要求,这里是
firehose_es
销售代表。我在问这个问题之前解决的另一件事(这可能是你们中的一些人提出这个问题的原因)是使用正确的角色并将正确的策略附加到角色上。这是我的角色(作为地形配置)
在再次阅读了《控制访问amazon kinesis数据firehose》一文之后,我终于明白了自己的错误所在。