加载中

MinIO 自托管存储库

MinIO 是一个流行的开源对象存储服务器,与 Amazon AWS S3 API 兼容。作为 S3 兼容服务,MinIO 支持在 Elastic Cloud Enterprise (ECE) 中用作快照存储库。

本指南将指导您如何将 MinIO 与 ECE 集成以存储您的 Elasticsearch 快照。

重要提示

避免直接在 ECE 主机上运行 MinIO。共享基础设施可能会导致资源争用(尤其是磁盘 I/O),并可能影响 Elastic 工作负载的性能和稳定性。它还会使升级、故障排除和可支持性变得复杂。

如果您在测试系统中评估 MinIO,请不要将 MinIO 容器放在与 ECE 代理相同的主机上,因为这两个服务使用相同的端口。

本节提供有关部署 MinIO 的指导和建议。它不包含安装步骤。由于 MinIO 是第三方产品,其部署、配置和维护不在 Elastic 支持的范围内。

有关安装说明,请参考官方 MinIO GitHub 存储库

MinIO 的性能和可靠性取决于其配置和底层基础设施。请考虑以下最佳实践

  • 对于生产环境,请以多节点多驱动器(Multi-Node Multi-Drive)配置部署 MinIO。
  • 在 ECE 安装中使用单个 MinIO 端点,以简化存储库配置。
  • 使用 TLS 保护对 MinIO 端点的访问。

部署后,请确保收集以下值

  • MinIO 访问密钥 (Access Key)
  • MinIO 秘密密钥 (Secret Key)
  • MinIO 端点 URL
提示

MinIO 可能会报告多个端点 URL。请确保选择可从在 ECE 分配器主机上运行的 Elasticsearch 容器访问的那一个。

使用 MinIO 快速入门指南容器部署指南 来启动一个简单的独立 MinIO 容器。在使用 dockerpodman 选项时,使用 -v 来映射持久化存储。

跨多个节点和驱动器设置 MinIO,以确保高可用性、性能和可扩展性,同时遵循 MinIO 文档 中的建议。

您可以使用 Docker Compose、Kubernetes 或您选择的其他编排工具。

安装 MinIO 后,您需要创建一个存储桶来存储部署的快照。使用 MinIO 浏览器或 S3 客户端应用程序创建一个 S3 存储桶来存储您的快照。

提示

不要忘记使存储桶名称符合 DNS 规范,例如不包含下划线或大写字母。有关更多详细信息,请阅读 存储桶限制

本节介绍在 ECE 中使用 MinIO 存储对部署进行定期快照所需的配置更改。所需的步骤包括

  • 在 ECE 级别配置存储库
  • 将其与您的部署相关联
  • 将特定的 YAML 设置应用到部署

在将 ECE 与 MinIO 集成之前,请确保从您的 MinIO 部署中获取以下详细信息

  • MinIO 访问密钥 (Access Key)
  • MinIO 秘密密钥 (Secret Key)
  • MinIO 端点 URL
  • S3 存储桶名称

您必须在 ECE 平台级别添加新存储库,然后才能将其用于您的 Elasticsearch 部署。

  1. 登录 Cloud UI.

  2. Platform 菜单中,选择 Repositories

  3. 选择 Add Repository

  4. Repository Type 下拉列表中,选择 Advanced

  5. Configuration 文本区域中,提供存储库 JSON。您必须指定 bucket、access_key、secret_key、endpoint 和 protocol。

    {
       "type": "s3",
        "settings": {
           "bucket": "ece-backup",
           "access_key": "<your MinIO AccessKey>",
           "secret_key": "<your MinIO SecretKey>",
           "endpoint": "<your MinIO endpoint URL>:9000",
           "path_style_access": "true",
           "protocol": "http"
        }
    }
    		
  6. 选择 Save 以提交您的配置。

在 ECE 平台级别创建 MinIO 存储库后,您可以通过以下两种方式将其与您的 Elasticsearch 部署相关联

选择存储库后,您还需要配置 Elasticsearch 用户设置 YAML 以指定端点和协议。例如

s3.client.default.endpoint: "<your MinIO endpoint>:9000"
s3.client.default.protocol: http
		

有关更多信息,请参考 Elasticsearch S3 插件详细信息

对于 7.x 版本的 Elasticsearch 集群,您必须将 S3 存储库插件添加到集群中。有关更多详细信息,请参考 管理 ECE 插件

注意

对于 8.0 及更高版本,Elasticsearch 对 AWS S3 存储库具有内置支持;无需任何存储库插件。

设置存储库并将其与集群关联后,集群应定期制作快照。您可以在 Cloud UI 的部署页面的 Elasticsearch > Snapshots 部分中查看此信息。

作为额外的验证步骤,您可以跨集群恢复快照

有关 Elasticsearch 快照和恢复的更多信息,请参考使用快照

有关将 MinIO 用作快照存储库时的性能、可靠性和故障排除的其他注意事项,请参考 将 MinIO 与 Elasticsearch 配合使用

© . This website operates independently and is not affiliated with or endorsed by Elasticsearch B.V. All brand names, logos, and trademarks are the property of their respective owners.