环境说明:
$ cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
vip : 192 168 93 142
MASTER-harbor: 192.168.93.147
BACKUP-harbor: 192.168.93.148
1 . 安装keepalied
Keepalived 可以使用 yum 直接安装,在 master 服务器和 backup 服务器执行:
$ yum –y install keepalived
2.配置master服务器及backup服务器
$ ip a 确定master及backup网卡
master 网卡 ens32
backup 网卡 ens160
配置/etc/keepalived/keepalived.conf
master配置
$ vim
/etc/keepalived/keepalived.conf
vrrp_instance VI_1 {
# 指定 keepalived 的角色,MASTER 表示此主机是主服务器,BACKUP 表示此主机是备用服务器
state MASTER
# 指定网卡
interface ens32
# 虚拟路由标识,这个标识是一个数字,同一个vrrp实例使用唯一的标识。
# 即同一vrrp_instance下,MASTER和BACKUP必须是一致的
virtual_router_id 51
# 定义优先级,数字越大,优先级越高(0-255)。
# 在同一个vrrp_instance下,MASTER 的优先级必须大于 BACKUP 的优先级
priority 100
# 设定 MASTER 与 BACKUP 负载均衡器之间同步检查的时间间隔,单位是秒
advert_int 1
# 设置验证类型和密码
authentication {
#设置验证类型,主要有PASS和AH两种
auth_type PASS
#设置验证密码,在同一个vrrp_instance下,MASTER与BACKUP必须使用相同的密码才能正常通信
auth_pass 1111
}
#设置虚拟IP地址,可以设置多个虚拟IP地址,每行一个
virtual_ipaddress {
# 虚拟 IP
192.168.93.142 }
}
# 虚拟服务器端口配置
virtual_server 192.168.93.142 80 {
delay_loop 6
lb_algo rr
lb_kind NAT
persistence_timeout 50
protocol TCP
real_server 192.168.93.147 80 {
weight 1
}
}
back服务器配置:基本与master一直,主要改动部分
$ vim /etc/keepalived/keepalived.conf
vrrp_instance VI_1 {
# 指定 keepalived 的角色,BACKUP 表示此主机是备用服务器
state BACKUP
# 确认网卡的 ID
interface ens160
# 即同一vrrp_instance下,MASTER 和 BACKUP 必须是一致的
virtual_router_id 51
# 比 MASTER 小
priority 90
...
...
}
# 虚拟服务器端口配置
virtual_server 192.168.93.142 80 {
...
...
real_server 192.168.93.148 80 {
weight 1
}
}
基本配置完成,启动服务
$ systemctl start keepalived
$
systemctl enalbe keepalived
检查一下网卡是否上面有vip
192.168.93.142,停掉master的keepalived查看back服务器上vip是否漂移过去。
接下来就是主要验证一下harbor主从是否ok,因为harbor自身有复制功能,后面的验证方面都是基于配置了复制,如果没有配置可以参考加上。
现在vip在master上,用142代替147登录没有问题,后面就是测试一下能将镜像的tag修改成142的push和pull一下,停掉master切换到back测试一下,如果基本的访问、push、pull、login都没有问题基本就成功了。
后面的验证部分就不详细写了,配置好之后把常用功能都检测一遍,这块到没有什么难点。ps:是在公司服务器上很多验证截图就不发了,ip也是我虚构的,大致步骤的意思希望我说明白了