服务器池可帮助您快速轻松地扩展现有 MinIO 集群的容量。这篇博文重点介绍如何增加一个集群的容量,这与添加另一个集群并在多个集群之间复制相同数据不同。将服务器池添加到现有群集时,可以增加该群集的整体可用容量。如果设置了复制,则需要平均增长复制目标,以适应复制源的增长。
服务器池是 MinIO 中的一个重要概念,因为它们有助于快速扩展存储容量。我们建议将单池集群的大小调整为至少 2-3 年的存储容量跑道,如果您预计会大幅增长,则可能会更长。这样,可以避免添加不必要的服务器池,而是从一个简单的 MinIO 群集开始,该群集会随着时间的推移而增长。尽管服务器池比单个节点更易于使用,但它们仍然会增加一点管理开销。扩展后,应考虑通过停用较小的池将多个池合并为几个大型池。
在这篇文章中,我们将向您展示在扩展服务器池之前需要考虑的事项,如何创建初始池,然后如何通过添加新池来扩展它。
构建集群
设置服务器池以扩展群集时,需要满足某些先决条件,才能获得其他池的必要规范。
网络和防火墙:新池中的节点需要能够与群集中的所有现有节点进行双向通信。所有新节点都必须侦听与现有节点相同的端口。例如,如果使用端口“9000”,则新池也必须在“9000”上进行通信。我们还建议使用 Nginx 或 HAProxy 等负载均衡器来代理请求。配置路由算法,确保基于最少连接路由流量。
顺序主机名:MinIO 使用扩展表示法“{x…y}’ 表示一系列连续的主机名。因此,必须按顺序命名池中的新节点。如果现有节点具有以下主机名:
minio1.example.com
minio2.example.com
minio3.example.com
minio4.example.com
然后,新池应具有以下主机名:
minio5.example.com
minio6.example.com
minio7.example.com
minio8.example.com
请确保在启动新池之前为这些主机名创建 DNS 记录。
顺序驱动器:与主机名类似,驱动器也需要使用相同的扩展符号按顺序安装 {x…y} 。下面是一个 /etc/fstab 文件示例。
$ mkfs.xfs /dev/sdb -L DISK1
$ mkfs.xfs /dev/sdc -L DISK2
$ mkfs.xfs /dev/sdd -L DISK3
$ mkfs.xfs /dev/sde -L DISK4
$ nano /etc/fstab
#
LABEL=DISK1 /mnt/disk1 xfs defaults,noatime 0 2
LABEL=DISK2 /mnt/disk2 xfs default