summaryrefslogtreecommitdiffstats
path: root/files/logging.sh
blob: 04616c410289ca2af03804dc99628d84a551e4b5 (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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
#!/bin/bash

if [ ! -e /home/stack/overcloudrc ]; then
	echo "/home/stack/overcloudrc not found."
	echo "exiting."
	exit
fi

source /home/stack/overcloudrc

echo "Configuring controllers for logging."
echo ""
echo "Configuring glance-api..."

for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do ssh $i sudo crudini --set /etc/glance/glance-api.conf DEFAULT use_syslog True; ssh $i sudo crudini --set /etc/glance/glance-api.conf DEFAULT syslog_log_facility LOG_LOCAL1 ; done

for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do echo -n "${i}: " ; echo -n "glance-api.conf use_syslog - " ; RESPONSE=$(ssh $i sudo crudini --get /etc/glance/glance-api.conf DEFAULT use_syslog) ; echo "$RESPONSE"; done
for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do echo -n "${i}: " ; echo -n "glance-api.conf syslog_log_facility - " ; RESPONSE=$(ssh $i sudo crudini --get /etc/glance/glance-api.conf DEFAULT syslog_log_facility) ; echo "$RESPONSE" ; done

echo ""
echo "Configuring glance-registry..."

for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do ssh $i sudo crudini --set /etc/glance/glance-registry.conf DEFAULT use_syslog True; ssh $i sudo crudini --set /etc/glance/glance-registry.conf DEFAULT syslog_log_facility LOG_LOCAL1 ; done

for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do echo -n "${i}: " ; echo -n "glance-registry.conf use_syslog - " ; RESPONSE=$(ssh $i sudo crudini --get /etc/glance/glance-registry.conf DEFAULT use_syslog) echo "$RESPONSE"; done
for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do echo -n "${i}: ";  echo -n "glance-registry.conf syslog_log_facility - " ; RESPONSE=$(ssh $i sudo crudini --get /etc/glance/glance-registry.conf DEFAULT syslog_log_facility); echo "$RESPONSE" ; done


echo ""
echo "Configuring ceilometer..."

for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do ssh $i sudo crudini --set /etc/ceilometer/ceilometer.conf DEFAULT use_syslog True; ssh $i sudo crudini --set /etc/ceilometer/ceilometer.conf DEFAULT syslog_log_facility LOG_LOCAL4 ; done

for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do echo -n "${i}: " ; echo -n "ceilometer.conf use_syslog - " ; RESPONSE=$(ssh $i sudo crudini --get /etc/ceilometer/ceilometer.conf DEFAULT use_syslog); echo "$RESPONSE"; done
for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do echo -n "${i}: " ; echo -n "ceilometer.conf syslog_log_facility - " ; RESPONSE=$(ssh $i sudo crudini --get /etc/ceilometer/ceilometer.conf DEFAULT syslog_log_facility ); echo "$RESPONSE" ; done

echo ""
echo "Configuring cinder..."

for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do ssh $i sudo crudini --set /etc/cinder/cinder.conf DEFAULT use_syslog True; ssh $i sudo crudini --set /etc/cinder/cinder.conf DEFAULT syslog_log_facility LOG_LOCAL2 ; done

for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do echo -n "${i}: " ; echo -n "cinder.conf use_syslog - " ; RESPONSE=$(ssh $i sudo crudini --get /etc/cinder/cinder.conf DEFAULT use_syslog); echo "$RESPONSE"; done
for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do echo -n "${i}: " ; echo -n "cinder.conf syslog_log_facility - " ; RESPONSE=$(ssh $i sudo crudini --get /etc/cinder/cinder.conf DEFAULT syslog_log_facility); echo "$RESPONSE" ; done

echo ""
echo "Configuring heat..."

for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do ssh $i sudo crudini --set /etc/heat/heat.conf DEFAULT use_syslog True; ssh $i sudo crudini --set /etc/heat/heat.conf DEFAULT syslog_log_facility LOG_LOCAL5 ; done

for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do echo -n "${i}: " ; echo -n "heat.conf use_syslog - " ; RESPONSE=$(ssh $i sudo crudini --get /etc/heat/heat.conf DEFAULT use_syslog); echo "$RESPONSE"; done
for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do echo -n "${i}: " ; echo -n "heat.conf syslog_log_facility - " ; RESPONSE=$(ssh $i sudo crudini --get /etc/heat/heat.conf DEFAULT syslog_log_facility); echo "$RESPONSE" ; done

echo ""
echo "Configuring keystone..."

for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do ssh $i sudo crudini --set /etc/keystone/keystone.conf DEFAULT use_syslog True; ssh $i sudo crudini --set /etc/keystone/keystone.conf DEFAULT syslog_log_facility LOG_LOCAL3 ; done

for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do echo -n "${i}: " ; echo -n "keystone.conf use_syslog - " ; RESPONSE=$(ssh $i sudo crudini --get /etc/keystone/keystone.conf DEFAULT use_syslog); echo "$RESPONSE"; done
for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do echo -n "${i}: " ; echo -n "keystone.conf syslog_log_facility - " ; RESPONSE=$(ssh $i sudo crudini --get /etc/keystone/keystone.conf DEFAULT syslog_log_facility); echo "$RESPONSE" ; done

echo ""
echo "Configuring neutron..."

for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do ssh $i sudo crudini --set /etc/neutron/neutron.conf DEFAULT use_syslog True; ssh $i sudo crudini --set /etc/neutron/neutron.conf DEFAULT syslog_log_facility LOG_LOCAL4 ; done

for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do echo -n "${i}: " ; echo -n "neutron.conf use_syslog - " ; RESPONSE=$(ssh $i sudo crudini --get /etc/neutron/neutron.conf DEFAULT use_syslog); echo "$RESPONSE"; done
for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do echo -n "${i}: " ; echo -n "neutron.conf syslog_log_facility - " ; RESPONSE=$(ssh $i sudo crudini --get /etc/neutron/neutron.conf DEFAULT syslog_log_facility); echo "$RESPONSE" ; done

echo ""
echo "Configuring nova..."

for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do ssh $i sudo crudini --set /etc/nova/nova.conf DEFAULT use_syslog True; ssh $i sudo crudini --set /etc/nova/nova.conf DEFAULT syslog_log_facility LOG_LOCAL0 ; done

for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do echo -n "${i}: " ; echo -n "nova.conf use_syslog - " ; RESPONSE=$(ssh $i sudo crudini --get /etc/nova/nova.conf DEFAULT use_syslog); echo "$RESPONSE"; done
for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do  echo -n "${i}: " ; echo -n "nova.conf syslog_log_facility - " ; RESPONSE=$(ssh $i sudo crudini --get /etc/nova/nova.conf DEFAULT syslog_log_facility); echo "$RESPONSE" ; done

echo ""
echo "Setting up /etc/rsyslog.d/client.conf on controllers..."

for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do echo $i ; cat client.conf | ssh heat-admin@$i "sudo sh -c 'cat > /etc/rsyslog.d/client.conf'" ; ssh heat-admin@$i 'sudo sed -i s/PORTNUM/50005/g /etc/rsyslog.d/client.conf'; done

echo ""
echo "Configuring compute nodes for logging"
echo ""
echo "Configuring nova..."

for i in $( nova hypervisor-list | awk '/localdomain/ {print $4}' | sed s/.localdomain// | sort -V) ; do ssh $i sudo crudini --set /etc/nova/nova.conf DEFAULT use_syslog True ; ssh $i sudo crudini --set /etc/nova/nova.conf DEFAULT syslog_log_facility LOG_LOCAL0 ; done

for i in $( nova hypervisor-list | awk '/localdomain/ {print $4}' | sed s/.localdomain// | sort -V) ; do echo -n "${i}: " ; echo -n "nova.conf use_syslog - " ; RESPONSE=$(ssh $i sudo crudini --get /etc/nova/nova.conf DEFAULT use_syslog); echo "$RESPONSE"; done
for i in $( nova hypervisor-list | awk '/localdomain/ {print $4}' | sed s/.localdomain// | sort -V) ; do  echo -n "${i}: " ; echo -n "nova.conf syslog_log_facility - " ; RESPONSE=$(ssh $i sudo crudini --get /etc/nova/nova.conf DEFAULT syslog_log_facility); echo "$RESPONSE" ; done

echo "Setting up /etc/rsyslog.d/client.conf on compute nodes..."


for i in $( nova hypervisor-list | awk '/localdomain/ {print $4}' | sed s/.localdomain// | sort -V) ; do echo $i ; cat client.conf | ssh heat-admin@$i "sudo sh -c 'cat > /etc/rsyslog.d/client.conf'" ; ssh heat-admin@$i 'sudo sed -i s/PORTNUM/50004/g /etc/rsyslog.d/client.conf'; done

echo ""
echo "Configuring local node of logging..."
echo ""
echo "Configuring glance-api..."

sudo crudini --set /etc/glance/glance-api.conf DEFAULT use_syslog True; sudo crudini --set /etc/glance/glance-api.conf DEFAULT syslog_log_facility LOG_LOCAL1

echo -n "glance-api.conf use_syslog: " ; RESPONSE=$(sudo crudini --get /etc/glance/glance-api.conf DEFAULT use_syslog) ; echo "$RESPONSE"
echo -n "glance-api.conf syslog_log_facility: " ; RESPONSE=$(sudo crudini --get /etc/glance/glance-api.conf DEFAULT syslog_log_facility); echo "$RESPONSE"

echo ""
echo "Configuring glance-registry..."

sudo crudini --set /etc/glance/glance-registry.conf DEFAULT use_syslog True; sudo crudini --set /etc/glance/glance-registry.conf DEFAULT syslog_log_facility LOG_LOCAL1

echo -n "glance-registry.conf use_syslog: " ; RESPONSE=$(sudo crudini --get /etc/glance/glance-registry.conf DEFAULT use_syslog); echo "$RESPONSE"
echo -n "glance-registry.conf syslog_log_facility: " ; RESPONSE=$(sudo crudini --get /etc/glance/glance-registry.conf DEFAULT syslog_log_facility); echo "$RESPONSE"

echo ""
echo "Configuring ceilometer..."

sudo crudini --set /etc/ceilometer/ceilometer.conf DEFAULT use_syslog True; sudo crudini --set /etc/ceilometer/ceilometer.conf DEFAULT syslog_log_facility LOG_LOCAL4

echo -n "ceilometer.conf use_syslog: " ; RESPONSE=$(sudo crudini --get /etc/ceilometer/ceilometer.conf DEFAULT use_syslog); echo "$RESPONSE"
echo -n "ceilometer.conf syslog_log_facility: " ; RESPONSE=$(sudo crudini --get /etc/ceilometer/ceilometer.conf DEFAULT syslog_log_facility); echo "$RESPONSE"

echo ""
echo "Configuring heat..."

sudo crudini --set /etc/heat/heat.conf DEFAULT use_syslog True; sudo crudini --set /etc/heat/heat.conf DEFAULT syslog_log_facility LOG_LOCAL5

echo -n "heat.conf use_syslog: " ; RESPONSE=$(sudo crudini --get /etc/heat/heat.conf DEFAULT use_syslog); echo "$RESPONSE"
echo -n "heat.conf syslog_log_facility: " ; RESPONSE=$(sudo crudini --get /etc/heat/heat.conf DEFAULT syslog_log_facility); echo "$RESPONSE"

echo ""
echo "Configuring keystone..."

sudo crudini --set /etc/keystone/keystone.conf DEFAULT use_syslog True; sudo crudini --set /etc/keystone/keystone.conf DEFAULT syslog_log_facility LOG_LOCAL3

echo -n "keystone.conf use_syslog: " ; RESPONSE=$(sudo crudini --get /etc/keystone/keystone.conf DEFAULT use_syslog); echo "$RESPONSE"
echo -n "keystone.conf syslog_log_facility: " ; RESPONSE=$(sudo crudini --get /etc/keystone/keystone.conf DEFAULT syslog_log_facility); echo "$RESPONSE"

echo ""
echo "Configuring neutron..."

sudo crudini --set /etc/neutron/neutron.conf DEFAULT use_syslog True; sudo crudini --set /etc/neutron/neutron.conf DEFAULT syslog_log_facility LOG_LOCAL4

echo -n "neutron.conf use_syslog: " ; RESPONSE=$(sudo crudini --get /etc/neutron/neutron.conf DEFAULT use_syslog); echo "$RESPONSE"
echo -n "neutron.conf syslog_log_facility: " ; RESPONSE=$(sudo crudini --get /etc/neutron/neutron.conf DEFAULT syslog_log_facility); echo "$RESPONSE"

echo ""
echo "Configuring nova..."

sudo crudini --set /etc/nova/nova.conf DEFAULT use_syslog True; sudo crudini --set /etc/nova/nova.conf DEFAULT syslog_log_facility LOG_LOCAL0

echo -n "nova.conf use_syslog: " ; RESPONSE=$(sudo crudini --get /etc/nova/nova.conf DEFAULT use_syslog); echo "$RESPONSE"
echo -n "nova.conf syslog_log_facility: " ; RESPONSE=$(sudo crudini --get /etc/nova/nova.conf DEFAULT syslog_log_facility); echo "$RESPONSE"

echo ""
echo "Setting up /etc/rsyslog.d/client.conf on localhost..."

sudo cp client.conf /etc/rsyslog.d/client.conf
sudo sed -i s/PORTNUM/50001/g /etc/rsyslog.d/client.conf
sudo chown root:root /etc/rsyslog.d/client.conf
sudo chmod 644 /etc/rsyslog.d/client.conf

echo "Restarting services on localhost..."

sudo systemctl | awk '/openstack/ {print $1}' | xargs -n1 sudo systemctl restart 
sudo systemctl restart rsyslog

echo "Checking that services on localhost are active:"

sleep 1
sudo systemctl | awk '/openstack/ {print $1}' | xargs -n1 sudo systemctl status | grep "Active:"

sleep 1
sudo systemctl status rsyslog

echo "Restarting services on compute nodes..."

for i in $( nova hypervisor-list | awk '/localdomain/ {print $4}' | sed s/.localdomain// | sort -V) ; do echo "restarting openstack-nova-compute on $i" ; ssh $i sudo systemctl restart openstack-nova-compute ; done
for i in $( nova hypervisor-list | awk '/localdomain/ {print $4}' | sed s/.localdomain// | sort -V) ; do echo "restarting rsyslog on $i" ; ssh $i sudo systemctl restart rsyslog ; done

echo "Checking that services on compute nodes are active:"

for i in $( nova hypervisor-list | awk '/localdomain/ {print $4}' | sed s/.localdomain// | sort -V) ; do echo -n "$i : " ; ssh $i sudo systemctl status rsyslog | grep Active: ; done

echo "Restarting services on controllers..."
 ssh $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | head -n 1) sudo pcs resource restart haproxy-clone
for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}') ; do ssh $i sudo systemctl restart rsyslog ; done

echo "Checking that services on control nodes are active:"

ssh heat-admin@$(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | head -n 1) sudo pcs status | egrep -i 'stop|start'

for i in $(nova host-list | awk '/consoleauth/ {split($2,a,"."); print a[1]}' | sort -V) ; do echo -n "$i : " ; ssh $i sudo systemctl status rsyslog | grep Active: ; done