遇到一个问题,就是在Openstack的虚拟机中出现报错:
输入用户名密码后,报错
Module is unknows
然后就退出登录。
解决方案:
1.在Controller上,设置虚拟机的救援模式,如下指令:
nova rescue <uuid> --password Password1
此处建议添加密码,否则会给出随机密码(下次进还是这个随机密码)
[root@controller ~(keystone_admin)]# nova list --all-tenant |grep 10.16.8.89
| 3588d488-617d-491e-8247-8145f0b497ef | kbom3-1 | 147e3d709d254653a64fd67e2dce9231 | ACTIVE | - | Running | net1=192.168.1.83, 10.16.8.89 |
[root@controller ~(keystone_admin)]# nova rescue 3588d488-617d-491e-8247-8145f0b497ef --password Password1
+-----------+-----------+
| Property | Value |
+-----------+-----------+
| adminPass | Password1 |
+-----------+-----------+
[root@controller ~(keystone_admin)]# nova list --all-tenant |grep 10.16.8.89
| 3588d488-617d-491e-8247-8145f0b497ef | kbom3-1 | 147e3d709d254653a64fd67e2dce9231 | RESCUE | - | Running | net1=192.168.1.83, 10.16.8.89 |
[root@controller ~(keystone_admin)]#
2.使用nova ssh尝试登陆失败,从而我们使用URL进行访问登录:
获取链接的方式如下:
[root@controller ~(keystone_admin)]# nova ssh 3588d488-617d-491e-8247-8145f0b497ef
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
[root@controller ~(keystone_admin)]# nova get-vnc-console 3588d488-617d-491e-8247-8145f0b497ef novnc
+-------+----------------------------------------------------------------------------------+
| Type | Url |
+-------+----------------------------------------------------------------------------------+
| novnc | https://10.16.9.89:6080/vnc_auto.html?token=9d47c24e-a00f-4424-b74f-cdba554eb61b |
+-------+----------------------------------------------------------------------------------+
[root@controller ~(keystone_admin)]#
3.登录进来后,使用root/<adminPass>就可以登录进入救援系统中,
本系统为救援系统,lsblk可以看出有两个系统盘符,100G的那个是原本的系统,所以需要将系统挂在到目录中
mount -o nouuid /dev/vdb1 /mnt
4.修改/mnt/etc/pam.d/login文件,将最后两行注释,如修改后:
5.修改后,在Controller中取消救援模式并重启,再次登录VNC即可登录:
[root@controller ~(keystone_admin)]# nova unrescue 3588d488-617d-491e-8247-8145f0b497ef
此时发现SSH还不能使用,那么将sshd_config文件,如图两处修改后,重启ssh,即可成功是CRT等软件进行ssh登录。
service sshd restart
参考链接:
紧急模式如何进入
如何修复module is unknow