[原][openstack-pike][compute node][issue-1]openstack-nova-compute.service holdoff time over, scheduli...

在安装pike  compute node节点的时候遇到启动nova-compute失败,问题如下(注意红色字体):

[root@compute1 nova]# 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.
[root@compute1 nova]# 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: activating (start) since Tue 2018-09-04 09:37:58 CST; 2s ago
 Main PID: 3431 (nova-compute)
    Tasks: 1
   CGroup: /system.slice/openstack-nova-compute.service
           └─3431 /usr/bin/python2 /usr/bin/nova-compute

Sep 04 09:37:58 compute1 systemd[1]: openstack-nova-compute.service holdoff time over, scheduling restart.
Sep 04 09:37:58 compute1 systemd[1]: Starting OpenStack Nova Compute Server...
[root@compute1 nova]# date
Tue Sep  4 09:38:14 CST 2018
[root@compute1 nova]# journalctl -xe
Sep 04 09:38:59 compute1 avahi-daemon[692]: Withdrawing workstation service for lo.
Sep 04 09:38:59 compute1 avahi-daemon[692]: Withdrawing workstation service for virbr0-nic.
Sep 04 09:38:59 compute1 avahi-daemon[692]: Withdrawing address record for 192.168.122.1 on virbr0.
Sep 04 09:38:59 compute1 avahi-daemon[692]: Withdrawing workstation service for virbr0.
Sep 04 09:38:59 compute1 avahi-daemon[692]: Withdrawing address record for fe80::fc81:46e3:49a7:d1da on ens35.
Sep 04 09:38:59 compute1 avahi-daemon[692]: Withdrawing address record for fe80::8fb9:3258:5058:d538 on ens35.
Sep 04 09:38:59 compute1 avahi-daemon[692]: Withdrawing address record for 192.168.70.73 on ens35.
Sep 04 09:38:59 compute1 avahi-daemon[692]: Withdrawing workstation service for ens35.
Sep 04 09:38:59 compute1 avahi-daemon[692]: Withdrawing address record for fe80::fe24:180a:91a7:8bdf on ens34.
Sep 04 09:38:59 compute1 avahi-daemon[692]: Host name conflict, retrying with compute1-60
Sep 04 09:38:59 compute1 avahi-daemon[692]: Registering new address record for 192.168.122.1 on virbr0.IPv4.
Sep 04 09:38:59 compute1 avahi-daemon[692]: Registering new address record for fe80::fc81:46e3:49a7:d1da on ens35.*.
Sep 04 09:38:59 compute1 avahi-daemon[692]: Registering new address record for fe80::8fb9:3258:5058:d538 on ens35.*.
Sep 04 09:38:59 compute1 avahi-daemon[692]: Registering new address record for 192.168.70.73 on ens35.IPv4.
Sep 04 09:38:59 compute1 avahi-daemon[692]: Registering new address record for fe80::fe24:180a:91a7:8bdf on ens34.*.
Sep 04 09:38:59 compute1 avahi-daemon[692]: Registering new address record for fe80::1041:9aae:6318:6a4a on ens34.*.
Sep 04 09:38:59 compute1 avahi-daemon[692]: Registering new address record for 10.50.70.73 on ens34.IPv4.
Sep 04 09:38:59 compute1 avahi-daemon[692]: Registering new address record for 192.168.184.135 on ens33.IPv4.
Sep 04 09:38:59 compute1 avahi-daemon[692]: Registering HINFO record with values 'X86_64'/'LINUX'.
Sep 04 09:39:00 compute1 systemd[1]: openstack-nova-compute.service: main process exited, code=exited, status=1/FAILURE
Sep 04 09:39:00 compute1 systemd[1]: Failed to start OpenStack Nova Compute Server.
-- Subject: Unit openstack-nova-compute.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit openstack-nova-compute.service has failed.
-- 
-- The result is failed.
Sep 04 09:39:00 compute1 systemd[1]: Unit openstack-nova-compute.service entered failed state.
Sep 04 09:39:00 compute1 systemd[1]: openstack-nova-compute.service failed.
Sep 04 09:39:00 compute1 systemd[1]: openstack-nova-compute.service holdoff time over, scheduling restart.
Sep 04 09:39:00 compute1 systemd[1]: Starting OpenStack Nova Compute Server...
[root@compute1 nova]#vim /var/log/nova/nova-compute.log 
... 2695 ERROR nova AccessRefused: (0, 0): (403) ACCESS_REFUSED - Login was refused using authentication mechanism AMQPLAIN.
For details see the broker logfile.

从上面的记录中可以推断应该message queue出了问题。导致无法login。

再想想涉及login到rabbit的使用的是用户名和密码

查看rabbit server [on controller node]用户名密码:

[root@controller ~]# rabbitmq-plugins enable rabbitmq_management                 //开启rabbit web界面 
[root@controller ~]#lsof |grep rabbit                                            //查询rabbit web服务端口 15672
async_63   1089 2034       rabbitmq   49u     IPv4              32616       0t0        TCP *:15672 (LISTEN)

在浏览器中输入controller:15672地址,如下图

再在compute node中的nova.conf中查找相关的用户名和密码

[DEFAULT]

。。。
enabled_apis = osapi_compute,metadata
transport_url = rabbit://openstack:rabbit@controller

用户名为openstack

密码为rabbit

login 失败

查看rabbit sever的用户列表发现没有openstack这个用户:

[root@controller ~]# rabbitmqctl list_users
Listing users ...
admin    [administrator]
guest    [administrator]

[重点]使用admin用户登录,由于忘记密码又不能直接查看明文密码,所以在rabbit_server[controller node]上重置用户为admin的用户密码:

[root@controller nova]# rabbitmqctl change_password admin admin

再次使用用户名和密码登录

用户名:admin

密码:admin

最后修改nova.conf [on compute node or controller node] 

transport_url= rabbit://admin:admin@controller

 启动nova-compute.service

[root@compute1 nova]# systemctl start openstack-nova-compute.service
[root@compute1 nova]# 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 Tue 2018-09-04 13:46:08 CST; 49s ago
 Main PID: 25205 (nova-compute)
    Tasks: 22
   CGroup: /system.slice/openstack-nova-compute.service
           └─25205 /usr/bin/python2 /usr/bin/nova-compute

Sep 04 13:46:05 compute1 systemd[1]: Starting OpenStack Nova Compute Server...
Sep 04 13:46:08 compute1 systemd[1]: Started OpenStack Nova Compute Server.

问题解决

 

转载于:https://www.cnblogs.com/horizonli/p/9583760.html

<think>好的,我现在需要帮助用户解决如何启动OpenStack Nova Compute服务的问题。首先,我需要整理用户提供的引用内容,看看里面有没有关键信息。 根据引用[4],计算节点无法启动服务可能是因为不知道控制节点的IP,所以需要将控制节点的IP添加到hosts文件中。这应该是第一步,检查/etc/hosts文件是否正确配置,确保计算节点能解析控制节点的主机名。 然后引用[2]提到,重启libvirtd.service和相关服务可能有效,但问题仍然存在。可能需要检查libvirtd的状态,确保它正常运行。另外,引用[3]中的用户通过启动libvirtd和nova-compute服务成功解决问题,所以正确的启动顺序可能很重要。 引用[5]提醒要备份配置和数据,并在测试环境中操作,避免生产环境出现问题。因此,在指导用户时,应该强调备份的重要性。 接下来,我需要按照步骤来组织答案。首先检查hosts文件,然后验证配置文件,接着检查依赖服务如libvirtd的状态,然后尝试启动服务,最后查看日志排查问题。同时,可能还需要考虑SELinux或防火墙的问题,以及软件包是否安装正确。 还要注意用户可能遇到的常见错误,比如配置文件中的权限问题、数据库连接失败或者消息队列无法访问。需要引导用户逐步排查这些可能性,并参考提供的引用中的解决方法,比如正确设置控制节点IP,确保服务启动顺序正确等。 最后,生成相关问题,帮助用户深入理解可能的相关问题,比如服务依赖、配置文件错误处理等。</think>### 如何启动OpenStack Nova Compute服务? #### 步骤1:检查基础配置 1. **确认hosts文件配置** 确保计算节点的`/etc/hosts`文件中包含控制节点和本机的IP与主机名映射。例如: ```bash 10.0.0.11 controller 10.0.0.31 compute1 ``` 如果未正确配置,计算节点可能无法识别控制节点,导致服务启动失败[^4]。 2. **验证Nova配置文件** 检查`/etc/nova/nova.conf`中以下关键参数是否正确: - `transport_url`:消息队列(如RabbitMQ)的连接地址 - `auth_strategy`:通常为`keystone` - `my_ip`:计算节点自身的IP地址 - `vnc_enabled`和`novncproxy_base_url`:确保VNC代理配置与控制节点一致 #### 步骤2:启动依赖服务 1. **重启libvirtd服务** ```bash systemctl restart libvirtd.service systemctl status libvirtd.service # 确认状态为active ``` libvirtd是虚拟化管理工具,若未启动会导致nova-compute服务依赖失败[^2]。 2. **检查Nova相关服务** 确保计算节点已安装所有必要软件包: ```bash yum install openstack-nova-compute ``` #### 步骤3:启动Nova Compute服务 ```bash systemctl start openstack-nova-compute.service systemctl enable openstack-nova-compute.service # 设置开机自启 systemctl status openstack-nova-compute.service # 检查是否启动成功 ``` #### 步骤4:排查常见问题 1. **查看日志定位错误** ```bash journalctl -u openstack-nova-compute.service -n 100 # 查看最近100条日志 ``` 常见错误因: - 控制节点IP解析失败 - 数据库连接超时(检查`[database]`配置) - 权限问题(如SELinux未关闭或文件权限错误) 2. **防火墙与SELinux** - 关闭SELinux(临时):`setenforce 0` - 开放防火墙端口(如5672/RabbitMQ、8774/Nova API) 3. **验证服务注册** 在控制节点执行: ```bash openstack compute service list --service nova-compute ``` 若计算节点未显示,需检查服务注册流程。 #### 引用说明 - 配置hosts文件是解决计算节点服务启动失败的关键步骤[^4]。 - 启动顺序应优先确保libvirtd服务正常运行[^3]。 - 日志分析是定位服务启动问题的核心方法[^5]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值