将数据从AWS Elasticsearch移动到S3



我有一个应用程序向AWS OpenSearch(早期的Elasticsearch)集群发送日志。我想将旧日志移动到S3以节省成本,并且仍然能够(偶尔)读取日志。

我能想到的一种方法是编写一个cron作业,读取旧索引,将它们(以文本格式)写入s3并删除索引。这也需要保持按日索引。有没有更有效/更好的方法?

弹力转储工具

# Export ES data to S3 (using s3urls)
elasticdump 
--s3AccessKeyId "${access_key_id}" 
--s3SecretAccessKey "${access_key_secret}" 
--input=http://production.es.com:9200/my_index 
--output "s3://${bucket_name}/${file_name}.json"

您可以使用手动快照方法将索引备份到s3: https://docs.aws.amazon.com/opensearch-service/latest/developerguide/managedomains-snapshots.html

在第一个链接结束时建议的另一个选项是在lambda中使用一个名为Curator的工具来处理索引旋转:https://docs.aws.amazon.com/opensearch-service/latest/developerguide/curator.html

根据你的用例,UltraWarm可能是最好的方法,如果你希望这些日志可以在以后搜索而不需要手动恢复,如果你使用我列出的前两个选项,这将是必需的:https://aws.amazon.com/blogs/aws/general-availability-of-ultrawarm-for-amazon-elasticsearch-service/

最新更新