大家好,又见面了,我是你们的朋友全栈君。
背景:NeoKylin实现多主机分布式文件存储功能,多机对外访问使用一个IP 系统:Neokylin-Server-5.0_U4-x86_64-Release-B14-20190320。 环境:
虚拟机(节点)名称 | ip | 部署 |
|---|---|---|
n1 | 192.168.136.26 | Minio |
n2 | 192.168.136.27 | Minio |
n3 | 192.168.136.28 | Minio |
部署相关文件:
systemctl stop firewalld
systemctl disable firewalld修改3个节点名称为n1-n3
hostnamectl set-hostname <newhostname>修改3个节点hosts文件
vim /etc/hosts 结尾追加
192.168.136.26 n1
192.168.136.27 n2
192.168.136.28 n33个节点通过ntpdate时间同步,一般需要联网同步,这里使用时间服务器,192.168.136.1设置为提供ntp服务的win10服务器,同步代码入下:
ntp 192.168.136.1也可以通过联网时间同步:
ntpdate cn.pool.ntp.org生成数据存储目录
mkdir -p /minio/{
data1,data2}生成启动脚本目录
mkdir -p /opt/minio生成集群配置文件目录
mkdir -p /etc/minio编写集群启动脚本 (所有节点配置文件相同),这里将写好的run.sh放入目录/opt/minio/,这里设置用户名和登录密码为minioadmin,内容如下
#!/bin/bash
export MINIO_ACCESS_KEY=minioadmin
export MINIO_SECRET_KEY=minioadmin
/opt/minio/minio server --config-dir /etc/minio \
http://n{
1...3}/minio/data{
1...2}编写服务脚本(所有节点),这里将写好的minio.service放入目录/usr/lib/systemd/system/,使其成为服务,内容如下
[Unit]
Description=Minio service
Documentation=https://docs.minio.io/
[Service]
WorkingDirectory=/opt/minio/
ExecStart=/opt/minio/run.sh
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target将minio二进制文件上传到/opt/minio目录下
chmod +x /usr/lib/systemd/system/minio.service
chmod +x /opt/minio/minio
chmod +x /opt/minio/run.shsystemctl daemon-reload
systemctl start minio
systemctl enable minio
systemctl status minio.service至此可访问 http://192.168.136.26:9000/ http://192.168.136.27:9000/ http://192.168.136.28:9000/
使用keepalived,可设定对外提供一个固定浮动ip,在n1-n3出现宕机时实现高可用。 安装keepalived,3个节点通过rpm包安装keepalived,或yum安装
yum install keepalived将keepalived.conf文件放入/etc/keepalived/目录下
vrrp_instance VI_1 {
state MASTER
#这里是宿主机的网卡,可以通过ip a查看当前自己电脑上用的网卡名是哪个,我的是enp0s3
interface enp0s3
virtual_router_id 100
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
#这里是指定的一个宿主机上的虚拟ip,一定要和宿主机网卡在同一个网段,
#我的宿主机网卡ip是192.168.136.26,所以指定虚拟ip是100
192.168.136.100/24
}
}keepalived的配置文件的权限设置是644
chmod 644 keepalived.conf至此,可通过下地址访问minio http://192.168.136.100:9000/
参考文档: minio集群和单机部署.
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/169465.html原文链接:https://javaforall.cn