分享

openstack【juno】入门 【keystone篇】六::Keystone使用及遇到问题解决办法

pig2 发表于 2015-1-28 14:13:18 [显示全部楼层] 只看大图 回帖奖励 阅读模式 关闭右栏 37 324027
本帖最后由 pig2 于 2015-3-26 20:30 编辑
问题导读

1.keystone的ADMIN_TOKEN该如何填写?
2.如何查看keystone数据库?
3.同步数据库遇到问题,可能有哪些原因?
4.keystone创建demo租户,是否还需要创建user及role?




创建租户、用户、角色,网上资料还是比较多的。
这里参考管网,使用另外的方式
配置环境变量

配置OS_SERVICE_TOKEN
这里的ADMIN_TOKEN是上篇产生的值
  1. export OS_SERVICE_TOKEN=ADMIN_TOKEN
复制代码
openstack juno(ubuntu14.04)安装5:Keystone部署及介绍

18.png


上面替换为:
  1. export OS_SERVICE_TOKEN=570f150cb897e793e58f
复制代码


配置 endpoint:

  1. export OS_SERVICE_ENDPOINT=http://controller:35357/v2.0
复制代码


1创建租户、用户、角色


创建admin租户
  1. keystone tenant-create --name admin --description "Admin Tenant"
复制代码


创建租户.png

这里会遇到的问题

aboutyun@controller:~$ keystone tenant-create --name admin --description "admin Tenant"
An unexpected error prevented the server from fulfilling your request. (HTTP 500)

解决办法详细查看遇到问题及解决办法


创建admin用户


  1. keystone user-create --name admin --pass ADMIN_PASS --email EMAIL_ADDRESS
复制代码
创建admin用户.png



创建admin角色

  1. keystone role-create --name admin
复制代码

adminrole.png


添加admin角色到admin用户和租户【修改内容】
  1. keystone user-role-add --user admin --tenant admin --role admin
复制代码



2创建Demo租户、用户、角色

a.创建demo租户
  1. keystone tenant-create --name demo --description "Demo Tenant"
复制代码
demo.png

b.创建demo租户下的用户
  1. keystone user-create --name demo --tenant demo --pass DEMO_PASS --email EMAIL_ADDRESS
复制代码

demouser.png


至此demod用户完毕注意:在创建demo tenant的同时,demo  user,demo role会自动创建

shili.png


3.创建service租户
  1. keystone tenant-create --name service --description "Service Tenant"
复制代码





遇到问题及解决办法:

问题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:
查看日志:

查看日志.png

  1. more keystone-all.log
复制代码


获取如下关键信息
  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
复制代码



showtables.png

  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,注释掉即可


再次运行命令

  1. su -s /bin/sh -c "keystone-manage db_sync" keystone
复制代码




同步成功,表不在为空

keystone.png


遇到问题2

错误表现1:
  1. Unable to establish connection to http://controller:35357/v2.0/tenants
复制代码

错误表现2:
  1. unknown insance
复制代码
错误表现3:
keystone启动后又挂掉

原因openstack安装问题

解决办法:
  1. apt-get update
  2. apt-get install ubuntu-cloud-keyring
  3. echo "deb http://ubuntu-cloud.archive.canonical.com/ubuntu" \
  4.   "trusty-updates/juno main" > /etc/apt/sources.list.d/cloudarchive-juno.list
  5. apt-get update && apt-get dist-upgrade
复制代码


相关内容:

openstack【juno】入门 【准备篇】零:整体介绍

openstack【juno】入门 【准备篇】一: Ubuntu14.04远程连接(ssh安装)

openstack【juno】入门 【准备篇】二::NTP安装

openstack【juno】入门 【准备篇】三:mysql(MariaDB)安装

openstack【juno】入门 【准备篇】四::RabbitMQ 安装

openstack【juno】入门 【keystone篇】五::Keystone部署及介绍

openstack【juno】入门 【keystone篇】六::Keystone使用及遇到问题解决办法

openstack【juno】入门 【keystone篇】七:创建 service entity 和 API endpoint

openstack【juno】入门 【keystone篇】八:新手操作篇(验证操作篇)

openstack【juno】入门 【keystone篇】九:创建openstack客户端环境变量脚本

openstack【juno】入门 【glance 篇】十:glance初步介绍

openstack【juno】入门 【glance 篇】十一:glance安装配置

openstack【juno】入门 【glance 篇】十二:glance安装配置验证及相关操作

openstack【juno】入门 【nova 篇】十三(1):nova简单介绍

openstack【juno】入门 【nova 篇】十三(2):安装配置计算服务

openstack【juno】入门 【网络篇】十四:neutron介绍

openstack【juno】入门 【网络篇】十五:neutron安装部署(控制节点)

openstack【juno】入门 【网络篇】十六:neutron安装部署(网络节点)

openstack【juno】入门 【网络篇】十七:neutron安装部署(计算节点)

openstack【juno】入门 【网络篇】十八:创建实例化网络

openstack【juno】入门 【dashboard篇】十九:添加dashboard

openstack【juno】入门 【cinder篇】二十:cinder介绍及安装配置【控制节点】

openstack【juno】入门 【cinder篇】二十一:安装配置块存储节点(cinder)

openstack【juno】入门 【swift篇】二十二:对象存储安装配置【控制节点】

openstack【juno】入门 【swift篇】二十三:安装配置swift节点

openstack【juno】入门 【swift篇】二十四:创建初始rings

openstack【juno】入门 【swift篇】二十五:验证安装(控制节点)

openstack【juno】入门 【实例篇】二十六:创建实例(neutron)

openstack【juno】入门 【总结篇】二十七:openstack排除故障及常见问题记录

openstack【juno】入门 【总结篇】二十八:keystone及网络总结





已有(37)人评论

跳转到指定楼层
宁丶静致远 发表于 2015-2-5 19:00:46
我遇到的问题是执行问题1的,提示Http 502请问怎么解决
回复

使用道具 举报

pig2 发表于 2015-2-5 20:04:44
宁丶静致远 发表于 2015-2-5 19:00
我遇到的问题是执行问题1的,提示Http 502请问怎么解决

看日志
回复

使用道具 举报

zhenxianbo 发表于 2015-3-5 16:14:36
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

pig2 发表于 2015-3-5 16:30:17
zhenxianbo 发表于 2015-3-5 16:14
请问keystone tenant-create --name admin --description "Admin Tenant"
提示Invalid OpenStack Identity ...

前面keystone安装可能有问题。
临时token没有生效
回复

使用道具 举报

zhenxianbo 发表于 2015-3-6 08:57:41
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

百威 发表于 2015-4-9 13:04:59
admin租户获取token出现错误,请问怎样解决?
root@ubuntu:~# keystone --os-tenant-name admin --os-username admin --os-password ADMIN_PASS \
>   --os-auth-url http://controller:35357/v2.0 token-get
WARNING: Bypassing authentication using a token & endpoint (authentication credentials are being ignored).
'NoneType' object has no attribute 'has_service_catalog'

请问这个错误怎样解决?

请问这个错误怎样解决?
回复

使用道具 举报

arsenduan 发表于 2015-4-9 13:09:10
百威 发表于 2015-4-9 13:04
admin租户获取token出现错误,请问怎样解决?
root@ubuntu:~# keystone --os-tenant-name admin --os-user ...

执行这条命令

  1. unset OS_SERVICE_TOKEN OS_SERVICE_ENDPOINT
复制代码
然后再试试。
如果还不行,说明服务目录有问题。
例如service和endpoint可能有问题
回复

使用道具 举报

百威 发表于 2015-4-9 13:15:29
回复

使用道具 举报

跟着大王去巡山 发表于 2015-4-20 09:53:39
大神 真是66666666666
回复

使用道具 举报

1234下一页
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条