多台虚机需要使用组成高可用模式,需要在openstack里配置一个虚ip对外提供服务。由于keepalived使用的是VRRP协议,所以还需要在配置高可用的虚机安全组放开VRRP协议的规则
环境
主节点: 172.23.6.200
备节点: 172.23.6.201
VIP: 172.23.6.2
创建虚IP
直接在控制台导航:管理员-系统-网络,点击虚机所在的网络名称,进入详情页面,然后点击创建端口按钮,在弹出的窗口,填入名称(eg: my_vip)。在该详情页可以看到该端口对应的固定ip,后面会用到该IP
虚拟机启用VIP
在控制节点执行:
有几台虚机,就重复几次执行 1、2 步骤
安全组允许VRRP协议
直接在控制台导航:项目-访问&安全,搜索虚机所在的安全组, 然后点击后面的管理规则按钮进入规则列表;点击添加规则按钮,弹出框里,在规则的下拉选里选择 其他协议, 然后再 端口 文本框输入 112, 最后点击添加按钮即可 # VRRP协议的端口号是112
配置keepalived
安装
|
|
配置
主节点:
cat /etc/keepalived/keepalived.conf
|
|
备节点
|
|
|
|
主备节点添加服务检测脚本
cat /etc/nginx/check_nginx_alive.sh
chmod +x /etc/nginx/check_nginx_alive.sh
主备节点启动服务
|
|
- 我们通过浏览器访问:172.23.6.2,显示的是:172.23.6.200 nginx-master, 主节点
- 把主节点的keepalived服务关闭:systemctl stop keepalived, 浏览器再访问172.23.6.2,显示的是:172.23.6.201 nginx-backup,切换到备节点
- 再把主节点的keepalived服务启动:systemctl start keepalived,浏览器再次访问:172.23.6.2,显示的是:172.23.6.200 nginx-master,已经切回到主节点