如何在 AWS EC2 上以分布式模式安装 MinIO

AWS 上部署了超过一百万个 MinIO 公有云实例中的大部分。这也是我们在 AWS Marketplace 上构建 托管应用程序 的原因之一,它只需点击几下即可部署。
将 MinIO 作为托管应用程序运行,不仅可以简化部署流程,还可以通过自动化和与其他 AWS 组件的透明集成来卸载操作。这是一种快速简便的方法,可以开始开发由 MinIO 支持的应用程序。
作为开发者,我们也知道开发者喜欢灵活地以自己的方式做事。本着 MinIO 的精神,我们希望您能够随心所欲地进行自定义,因此我们确保您拥有实现这一目标所需的一切。
如果您想了解如何在 AWS 上快速轻松地根据您的规格部署 MinIO,请继续阅读。
本指南介绍如何在 AWS EC2 上部署 MinIO。在本指南中,我们使用 EBS 卷设置了一个 16 TiB 的实例。
- 在 https://aws.amazon.com/console/ 创建 4 个 AWS 实例
- 首先登录您的账户:“登录控制台”
- 提供您的账户 ID、IAM 用户名和密码
- 点击“登录”
- 登录后,转到“EC2”链接
- 然后通过点击“启动实例”来启动实例

7. 选择 Amazon 机器镜像,也称为 AMI。在本例中,我们将使用来自顶部的 Amazon Linux AMI,并使用 x86 架构。

8. 然后,选择您要测试或使用的实例类型。请记住,随着您增加硬件容量,成本可能会变得非常高。您可以使用 AWS 计算器 来估算您将根据使用时间支付的价格。在本例中,我们将使用 c6i.metal 实例类型。

9. 然后点击“下一步:配置实例详细信息”,以便您可以选择要用于 MinIO 的机器数量。然后选择其中 4 个。
10. 选择 4 个后,点击“下一步:添加存储”,并添加 4 个额外的卷来运行 分布式模式下的 MinIO。需要注意几点。首先,请注意,因为我们使用的是 EBS 类型的存储,所以配置哪个设备字母实际上并不重要,只要稍后连续映射即可。大小由您决定,并取决于您的需求。寻找最佳的性价比,并设置您的配置。请记住,一旦实例终止,请删除或移除磁盘,以免产生额外费用。

完成此操作后,如果您对结果满意,则可以添加标签。这取决于您的组织以及您计划如何普遍使用 AWS。至少,使用一些标签可以更容易地查找和终止实例

11. 接下来,让我们配置安全组。这对于您通过 SSH 连接并允许通过 TCP 9000 端口访问 MinIO 进行管理非常重要。

12. 现在您可以查看并启动实例,最后一步是添加密钥对,以便您可以使用 .pem 文件轻松地通过 SSH 连接到您的主机。
13. 等待实例处于运行状态,以便您可以连接并配置每个主机以安装 MinIO。
14. 在等待期间,您可以使用 AWS CLI 自动检查状态。
15. 实例运行后,您现在可以继续通过 SSH 连接到每个主机。我们要做的第一件事是更改 /etc/hosts 文件以允许机器之间安全通信。
16. 并将以下内容添加到每个实例的 /etc/hosts 文件中
请注意,我们正在使用实例的私有 IP 地址。您需要使用您实例的 IP 地址替换。
17. 接下来,让我们创建用于映射设备的目录。同样,您必须为每个 AWS 实例执行此操作。
18. 现在我们进入最后阶段了。在每个节点上下载、安装并运行 Minio。
19. 安装 MinIO 客户端 (mc) 来管理集群。下载应用程序,将其设置为可执行文件并配置凭据。为了快速设置和验证,我们在与 MinIO 服务器相同的实例上运行 mc。您可以按照我们的示例操作,或在另一个实例上安装 mc,或者在您希望的任何位置安装,然后远程访问您的 MinIO 实例。
20. 设置别名,以便您可以更轻松地通过 mc 登录和管理 MinIO。
[root@ip-172-31-77-115 ec2-user]# ./mc alias set myminio http://localhost:9000 minioadmin minioadmin
mc: Configuration written to `/root/.mc/config.json`. Please update your access credentials.
mc: Successfully created `/root/.mc/share`.
mc: Initialized share uploads `/root/.mc/share/uploads.json` file.
mc: Initialized share downloads `/root/.mc/share/downloads.json` file.Added `myminio` successfully.
21. 最后,让我们使用我们的新功能 SpeedTest 来衡量 MinIO 的速度。这将运行一系列简短的自动化测试,以快速验证您的部署是否按预期执行。
在 AWS EC2 上部署 MinIO
感谢您阅读本教程。您现在已安装 MinIO 并验证了性能。现在,您可以使用 MinIO 控制台、mc 或 API 创建存储桶并 进一步配置您的部署。如果您有任何疑问,请发送邮件至 hello@min.io 或加入 Slack 社区。