统一划分集群keepalive virtual_route_id, 设备管理HA集群使用54.
This commit is contained in:
@@ -38,11 +38,13 @@ ha_master:
|
||||
instance_state: MASTER
|
||||
ethname: eth0
|
||||
virtual_ip: "192.168.44.58"
|
||||
oam_virtual_router_id: 54
|
||||
|
||||
ha_backup:
|
||||
instance_state: BACKUP
|
||||
ethname: eth0
|
||||
virtual_ip: "192.168.44.58"
|
||||
oam_virtual_router_id: 54
|
||||
|
||||
java_version: jdk1.8.0_73
|
||||
bifang_api_ip: "192.168.43.5"
|
||||
|
||||
43
roles/ha_backup/tasks/main.yml
Normal file
43
roles/ha_backup/tasks/main.yml
Normal file
@@ -0,0 +1,43 @@
|
||||
- name: "copy keepalived rpm to destination server"
|
||||
copy:
|
||||
src: "{{ role_path }}/files/"
|
||||
dest: /tmp
|
||||
mode: 0755
|
||||
|
||||
- name: "install keepalived"
|
||||
yum:
|
||||
name:
|
||||
- /tmp/keepalived-1.3.5-16.el7.x86_64.rpm
|
||||
state: present
|
||||
|
||||
- name: "install ipvsadm"
|
||||
yum:
|
||||
name:
|
||||
- /tmp/ipvsadm-1.27-8.el7.x86_64.rpm
|
||||
state: present
|
||||
|
||||
- name: "Template check_service_health.sh.j2"
|
||||
template:
|
||||
src: "{{ role_path }}/templates/check_service_health.sh.j2"
|
||||
dest: /etc/keepalived/check_service_health.sh
|
||||
tags: template
|
||||
|
||||
- name: "Template keepalived_backup.conf.j2"
|
||||
template:
|
||||
src: "{{ role_path }}/templates/keepalived_backup.conf.j2"
|
||||
dest: /etc/keepalived/keepalived.conf
|
||||
tags: template
|
||||
|
||||
- name: Template the keepalived.service.j2
|
||||
template:
|
||||
src: "{{ role_path }}/files/keepalived.service.j2"
|
||||
dest: "/usr/lib/systemd/system/keepalived.service"
|
||||
tags: template
|
||||
|
||||
- name: "Start keepalived"
|
||||
systemd:
|
||||
name: keepalived.service
|
||||
enabled: yes
|
||||
state: restarted
|
||||
enabled: yes
|
||||
|
||||
@@ -1,22 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
#running:0, stop:3
|
||||
STATE=$(systemctl status oam_cluster.service)
|
||||
|
||||
if [ $STATE -ne 0 ]
|
||||
then
|
||||
systemctl restart oam_cluster
|
||||
sleep 10
|
||||
STATE=$(systemctl status oam_cluster.service)
|
||||
if [ $STATE -ne 0 ]
|
||||
then
|
||||
killall keepalived
|
||||
exit 1
|
||||
else
|
||||
exit 0
|
||||
fi
|
||||
else
|
||||
exit 0
|
||||
fi
|
||||
|
||||
#todo ,check consul_cluster, check influxdb
|
||||
@@ -1,50 +1,38 @@
|
||||
! Configuration File for keepalived
|
||||
|
||||
global_defs {
|
||||
router_id LVSTEST2
|
||||
router_id OAMHA
|
||||
}
|
||||
|
||||
#监控服务httpd, mysql等
|
||||
vrrp_script chk_http_service {
|
||||
script "/etc/keepalived/chk_http_service.sh"
|
||||
vrrp_script check_service_health {
|
||||
script "/etc/keepalived/check_service_health.sh"
|
||||
#每2s检查一次
|
||||
interval 3
|
||||
#每次检查-20
|
||||
#每次检查-10
|
||||
weight -10
|
||||
fail 3
|
||||
#失败次数,如果请求失败2次就认为此节点资源发生故障将进行切换
|
||||
fail 3
|
||||
#失败次数,如果请求失败2次就认为此节点资源发生故障将进行切换
|
||||
|
||||
rise 1
|
||||
#监测成功就立即成功,如果请求一次成功就默认此节点资源恢复正常
|
||||
rise 1
|
||||
#监测成功就立即成功,如果请求一次成功就默认此节点资源恢复正常
|
||||
}
|
||||
|
||||
vrrp_instance VI_1 {
|
||||
state BACKUP
|
||||
interface eth0
|
||||
virtual_router_id 51
|
||||
state {{ ha_backup.instance_state }}
|
||||
interface {{ ha_backup.ethname }}
|
||||
virtual_router_id {{ ha_backup.oam_virtual_router_id }}
|
||||
priority 10
|
||||
advert_int 1
|
||||
authentication {
|
||||
auth_type PASS
|
||||
auth_pass 1111
|
||||
auth_pass oamha
|
||||
}
|
||||
virtual_ipaddress {
|
||||
192.168.44.244
|
||||
{{ ha_backup.virtual_ip }}
|
||||
}
|
||||
#触发的脚本
|
||||
track_script {
|
||||
chk_http_service #检测脚本,上面配置的
|
||||
check_service_health #检测脚本,上面配置的
|
||||
}
|
||||
}
|
||||
|
||||
virtual_server 192.168.44.244 80 {
|
||||
delay_loop 6
|
||||
lb_algo rr
|
||||
lb_kind NAT
|
||||
persistence_timeout 50
|
||||
protocol TCP
|
||||
|
||||
#real_server 127.0.0.1 80 {
|
||||
# weight 1
|
||||
#}
|
||||
}
|
||||
|
||||
@@ -1,46 +0,0 @@
|
||||
! Configuration File for keepalived
|
||||
|
||||
global_defs {
|
||||
router_id LVSTEST1
|
||||
}
|
||||
|
||||
#监控服务httpd, mysql等
|
||||
vrrp_script chk_http_service {
|
||||
script "/etc/keepalived/chk_http_service.sh"
|
||||
#每2s检查一次
|
||||
interval 3
|
||||
#每次检查-20
|
||||
weight -10
|
||||
fail 3
|
||||
#失败次数,如果请求失败2次就认为此节点资源发生故障将进行切换
|
||||
|
||||
rise 1
|
||||
#监测成功就立即成功,如果请求一次成功就默认此节点资源恢复正常
|
||||
}
|
||||
|
||||
vrrp_instance VI_1 {
|
||||
state MASTER
|
||||
interface eth0
|
||||
virtual_router_id 51
|
||||
priority 100
|
||||
advert_int 1
|
||||
authentication {
|
||||
auth_type PASS
|
||||
auth_pass 1111
|
||||
}
|
||||
virtual_ipaddress {
|
||||
192.168.44.244
|
||||
}
|
||||
#触发的脚本
|
||||
track_script {
|
||||
chk_http_service #检测脚本,上面配置的
|
||||
}
|
||||
}
|
||||
|
||||
virtual_server 192.168.44.244 80 {
|
||||
delay_loop 6
|
||||
lb_algo rr
|
||||
lb_kind NAT
|
||||
persistence_timeout 50
|
||||
protocol TCP
|
||||
}
|
||||
@@ -1,50 +0,0 @@
|
||||
! Configuration File for keepalived
|
||||
|
||||
global_defs {
|
||||
router_id LVSTEST2
|
||||
}
|
||||
|
||||
#监控服务httpd, mysql等
|
||||
vrrp_script chk_http_service {
|
||||
script "/etc/keepalived/chk_http_service.sh"
|
||||
#每2s检查一次
|
||||
interval 3
|
||||
#每次检查-20
|
||||
weight -10
|
||||
fail 3
|
||||
#失败次数,如果请求失败2次就认为此节点资源发生故障将进行切换
|
||||
|
||||
rise 1
|
||||
#监测成功就立即成功,如果请求一次成功就默认此节点资源恢复正常
|
||||
}
|
||||
|
||||
vrrp_instance VI_1 {
|
||||
state BACKUP
|
||||
interface eth0
|
||||
virtual_router_id 51
|
||||
priority 10
|
||||
advert_int 1
|
||||
authentication {
|
||||
auth_type PASS
|
||||
auth_pass 1111
|
||||
}
|
||||
virtual_ipaddress {
|
||||
192.168.44.244
|
||||
}
|
||||
#触发的脚本
|
||||
track_script {
|
||||
chk_http_service #检测脚本,上面配置的
|
||||
}
|
||||
}
|
||||
|
||||
virtual_server 192.168.44.244 80 {
|
||||
delay_loop 6
|
||||
lb_algo rr
|
||||
lb_kind NAT
|
||||
persistence_timeout 50
|
||||
protocol TCP
|
||||
|
||||
#real_server 127.0.0.1 80 {
|
||||
# weight 1
|
||||
#}
|
||||
}
|
||||
@@ -21,7 +21,7 @@ vrrp_script check_service_health {
|
||||
vrrp_instance VI_1 {
|
||||
state {{ ha_master.instance_state }}
|
||||
interface {{ ha_master.ethname }}
|
||||
virtual_router_id 51
|
||||
virtual_router_id {{ ha_master.oam_virtual_router_id }}
|
||||
priority 100
|
||||
advert_int 1
|
||||
authentication {
|
||||
|
||||
Reference in New Issue
Block a user