centos minio网络配置要点
小樊
45
2025-11-23 19:48:06
CentOS 上部署 MinIO 的网络配置要点
一 基础网络与端口规划
- 为服务器配置静态 IP、子网掩码、网关、DNS,避免地址漂移导致访问异常。
- 常用端口:对象 API 默认 9000/TCP,控制台默认 9001/TCP;如自定义端口(例如将控制台改为 62222),需同步调整防火墙与客户端访问地址。
- 集群场景需保证所有节点间对 9000/9001 的互通,并按需开放或关闭 SELinux/防火墙策略。
- 建议仅在内网或受控网段开放访问,公网暴露需叠加反向代理、WAF、限流等措施。
二 防火墙与安全组放行
- firewalld(CentOS 常用):开放 API 与控制台端口,并持久化。示例:
- 放行 API 与控制台:
- sudo firewall-cmd --zone=public --add-port=9000/tcp --permanent
- sudo firewall-cmd --zone=public --add-port=9001/tcp --permanent
- 如自定义控制台端口(如 62222):
- sudo firewall-cmd --zone=public --add-port=62222/tcp --permanent
- 使配置生效:sudo firewall-cmd --reload
- 云上环境需同时在安全组放行对应端口(入方向)。
三 监听地址与控制台绑定
- 绑定地址:默认监听 0.0.0.0(所有接口)。生产环境建议按需绑定到内网或管理网接口,减少暴露面。
- 端口与地址分离:API 与控制台可分别指定 IP 与端口,便于将控制台置于管理网段。
- 常用启动示例:
- 仅改控制台端口:
- /usr/local/bin/minio server /data --address :9000 --console-address :9001
- 绑定特定 IP:
- /usr/local/bin/minio server /data --address 192.168.10.30:9000 --console-address 192.168.10.30:9001
- 自定义控制台端口(如 62222):
- /usr/local/bin/minio server /data --address :9000 --console-address :62222
- 通过 systemd 管理时,可将上述参数写入服务或环境文件(如 /etc/default/minio 的 MINIO_OPTS)。
四 集群网络配置
- 节点互通:所有节点需对 9000/9001 互通,建议使用主机名或固定内网 IP规划,避免 DHCP 变更。
- 启动方式:集群以“分布式”模式启动,将各节点的本地卷以 http://<节点IP>:9000/<卷名> 形式在 MINIO_VOLUMES 中声明,示例:
- MINIO_VOLUMES=“http://192.168.10.30:9000/minio1 http://192.168.10.31:9000/minio2 http://192.168.10.32:9000/minio3 http://192.168.10.33:9000/minio4”
- MINIO_OPTS=“–console-address :9001”
- 访问方式:控制台可通过任一节点 IP 的 9001 端口访问;客户端直连对象 API 的 9000 端口。
五 传输加密与高可用网络实践
- TLS/HTTPS:
- 自签名证书:生成后通过配置启用 HTTPS,证书与私钥路径在启动参数或环境变量中指定,重启服务生效。
- Let’s Encrypt:使用 certbot 获取证书,配置证书与私钥路径后启用 MINIO_SSL_ENABLED=true 等环境变量。
- 时间同步:集群节点需启用 NTP,建议各节点时间差不超过 3 秒,避免认证与一致性异常。
- 资源与内核:提升文件句柄限制(如 LimitNOFILE=65535),并确保网络与存储 I/O 能力匹配业务峰值。