6g下载网
当前位置: 主页 > 软件教程 > 云计算 >

SSH链接虚拟机镜像时认证通不过的解决方法

时间: 2015-11-20 21:26 来源: 6g下载网

分享到:

这篇文章给大家介绍SSH链接虚拟机镜像时认证通不过的解决方法,希望这篇文章能给大家提供帮助。

问题描述:

最近遇到个问题:自制的虚拟机镜像可以启动成功,可以ping通floating ip, 但SSH时认证通不过,说是public/private key与用户名不匹配。

自己上网查了下,有可能是metadata服务没起的缘故,就启动这个服务,结果一直起不来,日志中错误信息如下:

2013-01-29 17:12:10 DEBUG nova.wsgi [-] Loading app metadata from /etc/nova/api-paste.ini from (pid=32335) load_app /usr/lib/python2.6/site-packages/nova/wsgi.py:371

2013-01-29 17:12:10 CRITICAL nova [-] [Errno 98] Address already in use

2013-01-29 17:12:10 TRACE nova Traceback (most recent call last):

2013-01-29 17:12:10 TRACE nova File "/usr/bin/nova-api-metadata", line 44, in

2013-01-29 17:12:10 TRACE nova server = service.WSGIService('metadata')

2013-01-29 17:12:10 TRACE nova File "/usr/lib/python2.6/site-packages/nova/service.py", line 584, in __init__

2013-01-29 17:12:10 TRACE nova port=self.port)

2013-01-29 17:12:10 TRACE nova File "/usr/lib/python2.6/site-packages/nova/wsgi.py", line 72, in __init__

2013-01-29 17:12:10 TRACE nova self._socket = eventlet.listen((host, port), backlog=backlog)

2013-01-29 17:12:10 TRACE nova File "/usr/lib/python2.6/site-packages/eventlet/convenience.py", line 38, in listen

2013-01-29 17:12:10 TRACE nova sock.bind(addr)

2013-01-29 17:12:10 TRACE nova File "", line 1, in bind

2013-01-29 17:12:10 TRACE nova error: [Errno 98] Address already in use

2013-01-29 17:12:10 TRACE nova

貌似端口被占用了,但是我查了下metadata服务的默认端口是8775,而nova-api的端口就是8775,所以这个metadata服务无法启动。之后找了一些资料,修改了nova.conf里面的一些配置,如下:

enabled_apis=metadata,ec2,osapi_compute,osapi_volume

metadata_host=10.10.1.162

metadata_port=8779

metadata_listen=0.0.0.0

metadata_listen_port=8779

metadata_manager=nova.api.manager.MetadataManager

结果还是不行,目前实在是想不到该如何解决了,有人遇到过同样的问题吗?SSH认证通不过究竟是啥原因?

这个openstack-nova-metadata-api服务,启动时能指定端口吗?

解决方法:

修改了两个地方就可以SSH了。

1)将compute节点中nova.conf的libvirt_type从qemu改为kvm

2)制作镜像时修改/boot/grub/grub.conf然后在kernel的quiet后面加上enforcing=0

然后就可以了SSH了。

(责任编辑:6g下载网)

分享到:

------分隔线----------------------------