14. 云平台服务器重启注意事项¶
目录
由于服务器重启,导致云平台服务异常。因此写一个简单的文档,供参考!
14.2. 异常服务重启¶
从上面的可以看到,nova服务、neutron服务异常,我们需要手动重启异常服务。
14.2.1. 重启neutron服务¶
首先在网络节点:
cd /usr/bin/; for i in neutron*; do service $i restart; done;
然后在控制节点:
cd /usr/bin/; for i in neutron*; do service $i restart; done;
然后检查状态:
看最后一张图,neutron服务状态正常了。
14.2.2. 重启nova服务¶
在控制节点
cd /usr/bin; for i in nova*; do service $i restart; done
然后在计算节点:
cd /usr/bin; for i in nova*; do service $i restart; done
检查服务:
可以看到,nova服务状态也正常了。
14.4. 脚本¶
另外,自己写了一个简单的脚本,检查OpenStack相关 核心组件的服务状态。该脚本基于Ubuntu部署的OpenStack!
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 | #! /usr/bin/env bash
error_log='/smbshare/os_status.log'
if [[ ! -e $error_log ]];then
touch $error_log
fi
source /root/openstackrc
set -ex
nova service-list
cinder service-list
neutron agent-list
set +ex
echo -e "\n" && sleep 2
# 检查glance 服务是否启动
# 后面睡眠两秒是保证结果在终端顺序输出,否则可能会交织在一起!
echo -e "\e[1;31m++ check glance service status \e[0m"
ps -ef | grep glance | grep -v grep
echo
netstat -pltn | grep 9292
echo -e "\n" && sleep 2
# 检查keystone 服务是否启动
echo -e "\e[1;31m++ check keystone service status \e[0m"
ps -ef | grep keystone | grep -v grep
echo
netstat -pltn | grep 5000
echo -e "\n" && sleep 2
#swift stat
cd /usr/bin
##ser=`for com in cinder glance nova keystone heat ceilometer neutron; do for i in $com-*; do [[ ! $i =~ "bak" ]] && service $i status; done; done 2>/dev/null | grep process | awk '{print $1}'`
#ser=`for com in cinder glance nova keystone neutron; do for i in $com-*; do [[ ! $i =~ "bak" ]] && service $i status; done; done 2>/dev/null | awk '{print $1}'`
#for i in $ser; do service $i status; done
echo -e "\e[1;31m++ check recognized binary service status \e[0m"
echo "" > $error_log
for com in nova cinder neutron glance keystone heat ceilometer;
do
#for i in $com*; do [[ ! $i =~ "bak" ]] && service $i status 2>/dev/null; done
for i in $com*; do [[ ! $i =~ "bak" ]] && service $i status 2>>$error_log; done
echo
done #2>/dev/null
#echo -e "\n" && sleep 2
echo && sleep 2
echo -e "\e[1;31m++ check rabbitmq-server status \e[0m"
set -ex
rabbitmqctl status
|