在Openstack上部署compute节点上时,开启服务openstack-nova-compute.service无法启动的解决方法
作者:互联网
本文前一部分为本人解决问题的过程,但最终没有解决;无奈在网上找方法时,看到有网友评论说:修改controller上的guest账号密码,再重启openstack-nova-compute.service就可正常重启,结果一试,问题解决,感谢大神。
1. 在compute节点上开启服务openstack-nova-compute.service时,无法启动,命令一直卡着不动,如下:
2.查看日志,在/var/log/nova-compute.log中看到在controller上的5672端口不可达:
3. 在controller节点上放通防火墙5672端口:
[root@controller ~]# firewall-cmd --zone=public --add-port=5672/tcp --permanent //放通5672端口
Warning: ALREADY_ENABLED: 5672:tcp
success
[root@controller ~]# systemctl restart firewalld //重启防火墙
[root@controller ~]# firewall-cmd --zone=public --query-port=5672/tcp //查看5672端口是否放通
yes
4. 在compute节点上,重启libvirtd.service,openstack-nova-compute.service。发现libvirtd.service正常启动,openstack-nova-compute.service仍然无法启动。
[root@compute1 ~]# systemctl start libvirtd.service
[root@compute1 ~]# systemctl start openstack-nova-compute.service
Job for openstack-nova-compute.service failed because the control process exited with error code. See "systemctl status openstack-nova-compute.service" and "journalctl -xe" for details.
5. 查看journalctl -xe报错,仅仅只能看到服务启动失败,仍然没有有效信息。
6. 同时,查看compute节点上的nova-compute.log日志文件,发现身份验证机制AMQPLAIN拒绝登录。
7. 返回到controller节点,核查rabbitmq服务是否开启,5672端口是否打开,结果显示都是正常打开。
[root@controller ~]# ps -ef|grep rabbitmq
rabbitmq 1345 1 0 02:14 ? 00:00:25 /usr/lib64/erlang/erts-7.3.1.2/bin/beam -W w -A 64 -P 1048576 -t 5000000 -stbt db -K true -- -root /usr/lib64/erlang -progname erl -- -home /var/lib/rabbitmq -- -pa /usr/lib/rabbitmq/lib/rabbitmq_server-3.6.5/ebin -noshell -noinput -s rabbit boot -sname rabbit@controller -boot start_sasl -config /etc/rabbitmq/rabbitmq -kernel inet_default_connect_options [{nodelay,true}] -sasl errlog_type error -sasl sasl_error_logger false -rabbit error_logger {file,"/var/log/rabbitmq/rabbit@controller.log"} -rabbit sasl_error_logger {file,"/var/log/rabbitmq/rabbit@controller-sasl.log"} -rabbit enabled_plugins_file "/etc/rabbitmq/enabled_plugins" -rabbit plugins_dir "/usr/lib/rabbitmq/lib/rabbitmq_server-3.6.5/plugins" -rabbit plugins_expand_dir "/var/lib/rabbitmq/mnesia/rabbit@controller-plugins-expand" -os_mon start_cpu_sup false -os_mon start_disksup false -os_mon start_memsup false -mnesia dir "/var/lib/rabbitmq/mnesia/rabbit@controller" -kernel inet_dist_listen_min 25672 -kernel inet_dist_listen_max 25672
rabbitmq 2254 1345 0 02:14 ? 00:00:00 inet_gethost 4
rabbitmq 2255 2254 0 02:14 ? 00:00:00 inet_gethost 4
root 25827 15202 0 10:40 pts/3 00:00:00 grep --color=auto mq
You have mail in /var/spool/mail/root
[root@controller ~]# netstat -na|grep 5672
tcp 0 0 0.0.0.0:25672 0.0.0.0:* LISTEN
tcp6 0 0 :::5672 :::* LISTEN
8. 于是又看了下rabbitmq日志(/var/log/rabbitmq/rabbit\@controller.log-20190725),结果显示用户openstack拥有无效凭证,如下:
9. 心想重新给用户openstack赋予权限试下:
[root@controller rabbitmq]# rabbitmqctl list_users
Listing users ...
openstack []
guest [administrator]
[root@controller rabbitmq]# rabbitmqctl set_permissions -p / openstack '.*' '.*' '.*'
Setting permissions for user "openstack" in vhost "/" ...
[root@controller rabbitmq]# systemctl restart rabbitmq_server.service
10. 结果仍然提示相同的错误,于是在网上查看网友的解决方法,就看到一个网友说自己修改了用户guest的密码后,恢复正常;尝试后故障恢复。
[root@controller rabbitmq]# rabbitmqctl change_password guest shroot123
Changing password for user "guest" ...
[root@controller rabbitmq]# systemctl restart rabbit_server.service //修改完后重启会有以下报错,等会再重启就可以正常
Failed to restart rabbit_server.service: Unit not found.
[root@controller rabbitmq]# systemctl restart rabbitmq-server.service
[root@controller rabbitmq]# systemctl status rabbitmq-server.service
● rabbitmq-server.service - RabbitMQ broker
Loaded: loaded (/usr/lib/systemd/system/rabbitmq-server.service; enabled; vendor preset: disabl
Active: active (running) since Thu 2019-07-25 11:24:37 CST; 5s ago
Process: 31959 ExecStop=/usr/lib/rabbitmq/bin/rabbitmqctl stop (code=exited, status=0/SUCCESS)
Main PID: 32075 (beam)
Status: "Initialized"
CGroup: /system.slice/rabbitmq-server.service
├─32075 /usr/lib64/erlang/erts-7.3.1.2/bin/beam -W w -A 64 -P 1048576 -t 5000000 -stbt
├─32271 inet_gethost 4
└─32272 inet_gethost 4
Jul 25 11:24:35 controller systemd[1]: Starting RabbitMQ broker...
Jul 25 11:24:36 controller rabbitmq-server[32075]: RabbitMQ 3.6.5. Copyright (C) 2007-2016 Pivotal
Jul 25 11:24:36 controller rabbitmq-server[32075]: ## ## Licensed under the MPL. See http:/
Jul 25 11:24:36 controller rabbitmq-server[32075]: ## ##
Jul 25 11:24:36 controller rabbitmq-server[32075]: ########## Logs: /var/log/rabbitmq/rabbit@cont
Jul 25 11:24:36 controller rabbitmq-server[32075]: ###### ## /var/log/rabbitmq/rabbit@cont
Jul 25 11:24:36 controller rabbitmq-server[32075]: ##########
Jul 25 11:24:36 controller rabbitmq-server[32075]: Starting broker...
Jul 25 11:24:37 controller systemd[1]: Started RabbitMQ broker.
Jul 25 11:24:37 controller rabbitmq-server[32075]: completed with 0 plugins.
再返回compute节点重启openstack-nova-compute.service,正常。
[root@compute1 ~]# systemctl restart openstack-nova-compute.service
[root@compute1 ~]# systemctl status openstack-nova-compute.service
● openstack-nova-compute.service - OpenStack Nova Compute Server
Loaded: loaded (/usr/lib/systemd/system/openstack-nova-compute.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2019-07-25 12:18:40 CST; 6s ago
Main PID: 12552 (nova-compute)
Tasks: 22
CGroup: /system.slice/openstack-nova-compute.service
└─12552 /usr/bin/python2 /usr/bin/nova-compute
Jul 25 12:18:34 compute1 systemd[1]: Stopped OpenStack Nova Compute Server.
Jul 25 12:18:34 compute1 systemd[1]: Starting OpenStack Nova Compute Server...
Jul 25 12:18:40 compute1 systemd[1]: Started OpenStack Nova Compute Server.
Jul 25 12:18:40 compute1 nova-compute[12552]: /usr/lib/python2.7/site-packages/oslo_messaging/...
Jul 25 12:18:40 compute1 nova-compute[12552]: access_policy)
Hint: Some lines were ellipsized, use -l to show in full.
虽然问题解决了,但仍然一头雾水,不明原因,不过问题解决也挺开心,因此也将自己解决的这个过程分享出来,希望对大家有帮助,也希望有哪位网友分析出原因,请在评论区回复,谢谢。
标签:compute,service,上时,nova,controller,rabbitmq,openstack 来源: https://www.cnblogs.com/hardy46/p/11243540.html