概述
1. 字符集错误
root@controller:~# openstack service create --name keystone --description "OpenStack Identity" identity
Traceback (most recent call last):
File "/usr/lib/python2.7/logging/__init__.py", line 861, in emit
msg = self.format(record)
File "/usr/lib/python2.7/logging/__init__.py", line 734, in format
return fmt.format(record)
File "/usr/lib/python2.7/logging/__init__.py", line 469, in format
s = self._fmt % record.__dict__
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-16: ordinal not in range(128)
Logged from file app.py, line 379
解决办法
#删除keystone的数据库
$ mysql -uroot -p$MYSQL_PASSWD -e "DROP DATABASE IF EXISTS keystone;"
#重启电脑
$ init 6
#重新安装keystone数据库
进入数据库
$ mysql -u root -p
#创建数据库
CREATE DATABASE keystone;
#赋予数据库权限
# <KEYSTONE_DBPASS>为自定义密码
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY 'KEYSTONE_DBPASS';
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY 'KEYSTONE_DBPASS';
#退出数据库
exit
#同步数据库
$ su -s /bin/sh -c "keystone-manage db_sync" keystone
2.没有用户管理凭据
root@controller:~# openstack compute service list
Missing parameter(s):
Set a username with --os-username, OS_USERNAME, or auth.username
Set an authentication URL, with --os-auth-url, OS_AUTH_URL or auth.auth_url
Set a scope, such as a project or domain, set a project scope with --os-project-name, OS_PROJECT_NAME or auth.project_name, set a domain scope with --os-domain-name, OS_DOMAIN_NAME or auth.domain_name
解决办法
如果有用户脚本,则先运行用户脚本 例如:
# 使用admin-openrc脚本
$ source /openstack/admin-openrc
没有则先为用户创建脚本
# 文件内容
# <DEMO_PASS>为demo用户的密码
export OS_PROJECT_DOMAIN_NAME=default
export OS_USER_DOMAIN_NAME=default
export OS_PROJECT_NAME=demo
export OS_USERNAME=demo
export OS_PASSWORD=DEMO_PASS
export OS_AUTH_URL=http://controller:5000/v3
export OS_IDENTITY_API_VERSION=3
export OS_IMAGE_API_VERSION=2
创建后,使用上命令
3. openstack安装dashboard后访问horizon出错500 or 504
访问controller/horizon出错504:internal server error gateway timeout
解决方法
vim /etc/apache2/conf-available/openstack-dashboard.conf
#添加以下内容
WSGIApplicationGroup %{GLOBAL}#重启Apache2服务
/etc/init.d/apache2 restart
转载于:https://www.cnblogs.com/amwuau/p/6518279.html
4. 找不到 /dev/sdb 分区
root@controller:~# pvcreate /dev/sdb
/run/lvm/lvmetad.socket: connect failed: 没有那个文件或目录
WARNING: Failed to connect to lvmetad. Falling back to internal scanning.
Device /dev/sdb not found (or ignored by filtering).
解决方法
打开虚拟机设置,添加一块虚拟硬盘
按照推荐,创建新的虚拟硬盘,点击下一步即可,分配大小,点击完成
然后可运行命令
root@controller:~# pvcreate /dev/sdb
Physical volume "/dev/sdb" successfully created
上一篇:OpenStack(M)+ ubuntu 搭建学习十:Cinder组件
OpenStack(M)+ ubuntu 搭建学习一:环境准备
OpenStack(M)+ ubuntu 搭建学习二:基础环境配置
OpenStack(M)+ ubuntu 搭建学习三:基础服务配置
OpenStack(M)+ ubuntu 搭建学习四:Keystone组件
OpenStack(M)+ ubuntu 搭建学习五:Glance组件
OpenStack(M)+ ubuntu 搭建学习六:Nova组件
OpenStack(M)+ ubuntu 搭建学习七:Neutron组件
OpenStack(M)+ ubuntu 搭建学习八:Horizon组件
OpenStack(M)+ ubuntu 搭建学习九:Dashboard启动一台实例
OpenStack(M)+ ubuntu 搭建学习十:Cinder组件
OpenStack(M)+ ubuntu 搭建 报错集合
最后
以上就是要减肥枕头为你收集整理的OpenStack(M)+ ubuntu 搭建 报错集合的全部内容,希望文章能够帮你解决OpenStack(M)+ ubuntu 搭建 报错集合所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复