blob: a00c21ac4ae0321cfbe66207da4477eea97d5ab8 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
|
---
- name: install keepalived xinet haproxy
apt: name={{ item }} state=present
with_items:
- keepalived
- xinetd
- haproxy
- name: generate ha service list
shell: echo {{ item }} >> /opt/service
with_items:
- keepalived
- xinetd
- haproxy
- name: install pexpect
pip: name=pexpect state=present
- name: activate ip_nonlocal_bind
sysctl: name=net.ipv4.ip_nonlocal_bind value=1
state=present reload=yes
- name: set net.ipv4.tcp_keepalive_intvl
sysctl: name=net.ipv4.tcp_keepalive_intvl value=1
state=present reload=yes
- name: set net.ipv4.tcp_keepalive_probes
sysctl: name=net.ipv4.tcp_keepalive_probes value=5
state=present reload=yes
- name: set net.ipv4.tcp_keepalive_time
sysctl: name=net.ipv4.tcp_keepalive_time value=5
state=present reload=yes
- name: update haproxy cfg
template: src=haproxy.cfg dest=/etc/haproxy/haproxy.cfg
notify: restart haproxy
- name: set haproxy enable flag
lineinfile: dest=/etc/default/haproxy state=present
regexp="ENABLED=*"
line="ENABLED=1"
notify: restart haproxy
- name: set haproxy log
lineinfile: dest=/etc/rsyslog.conf state=present
regexp="local0.* /var/log/haproxy.log"
line="local0.* /var/log/haproxy.log"
- name: set rsyslog udp module
lineinfile: dest=/etc/rsyslog.conf state=present
regexp="^#$ModLoad imudp"
line="$ModLoad imudp"
- name: set rsyslog udp port
lineinfile: dest=/etc/rsyslog.conf state=present
regexp="^#$UDPServerRun 514"
line="$UDPServerRun 514"
- name: copy galera_chk file
copy: src=galera_chk dest=/usr/local/bin/galera_chk mode=0777
- name: copy notify file
copy: src=notify.sh dest=/usr/local/bin/notify.sh mode=0777
- name: copy notify template file
template: src=failover.j2 dest=/usr/local/bin/failover.py mode=0777
- name: add network service
lineinfile: dest=/etc/services state=present
line="mysqlchk 9200/tcp"
insertafter="Local services"
notify: restart xinetd
- name: copy mysqlchk file
copy: src=mysqlchk dest=/etc/xinetd.d/mysqlchk mode=0777
notify: restart xinetd
- name: set keepalived start param
lineinfile: dest=/etc/default/keepalived state=present
regexp="^DAEMON_ARGS=*"
line="DAEMON_ARGS=\"-D -d -S 1\""
- name: set keepalived log
lineinfile: dest=/etc/rsyslog.conf state=present
regexp="local1.* /var/log/keepalived.log"
line="local1.* /var/log/keepalived.log"
- name: update keepalived info
template: src=keepalived.conf dest=/etc/keepalived/keepalived.conf
notify: restart keepalived
- name: restart rsyslog
shell: service rsyslog restart
|