openstack常见问题解决方法总结

时间:2023-03-09 04:13:07
openstack常见问题解决方法总结

一、创建实例失败:
首先用下面命令查看服务是否正常
1. nova-manage service list
如果不正常,则使用下面命令重启,如果还不行,则查看日志,
1. service nova-api restart
2. service nova-cert restart
3. service nova-consoleauth restart
4. service nova-scheduler restart
5. service nova-conductor restart
6. service nova-novncproxy restart

二、对网络的判断:

可以查看网桥
1. ovs-vsctl show

网络流量查看:
1. udhcpc eth0

三、安装后检测环境时遇到的问题及解决办法:

问题1 :aboutyun@controller:~$ keystone tenant-create --name admin --description "admin Tenant"

提示:An unexpected error prevented the server from fulfilling your request. (HTTP 500) 

原因1:
环境变量错误
记得重启后,执行下面命令
1. export OS_SERVICE_TOKEN=570f150cb897e793e58f
2. export OS_SERVICE_ENDPOINT=http://controller:35357/v2.0
原因2:

查看keystone日志,获取如下关键信息 :

1. (OperationalError) no such table: project u'INSERT INTO project (id, name, domain_id, des
2. cription, enabled, extra) VALUES (?, ?, ?, ?, ?, ?)' ('70c0487ba99743719d6721a34560fca2',
u'admin', 'default', u'Admin Tenant', 1, '{}')
意思是说表不存在,进入mysql
1. mysql -uroot -p
1. use keystone

1.  show tables; 

竟然是空的,也就是没有同步成功。
执行命令,再次同步。
1. su -s /bin/sh -c "keystone-manage db_sync" keystone
还需要输入密码,算了还是使用root。
再次运行命令,还是不成功。
为什么?还是从配置入手。
编辑 /etc/keystone/keystone.conf
数据库明明连接上了,为什么会不成功,
1. [database]
2. ...
3. connection = mysql://keystone:KEYSTONE_DBPASS@controller/keystone
后来在配置文件中,发现了sqllite,注释掉即可

openstack常见问题解决方法总结

再次运行命令
1. su -s /bin/sh -c "keystone-manage db_sync" keystone

四、创建镜像的问题:1. glance image-create --name "cirros-0.3.3-x86_64" --file cirros-0.3.3-x86_64-disk.img \2. --disk-format qcow2 --container-format bare --is-public True --progress 

global name '_' is not defined glance
原来环境变量的问题。source 已经source了,但是却没有起作用。最后使用绝招
1. export OS_TENANT_NAME=admin
2. export OS_USERNAME=admin
3. export OS_PASSWORD=ADMIN_PASS
4. export OS_AUTH_URL=http://controller:35357/v2.0
在shell中直接执行shell。然后通过
1. echo $OS_TENANT_NAME
检验能否安装成功。

五、部署nova的注意点nova-conductor在 nova-compute 服务 和 the database之间,它使 nova-compute 服务无需直接访问云数据库(cloud database)。尽管如此,不要将 

nova-conductor部署在运行nova-compute 服务的节点上