keystone的常见问题

前言:
keystone是什么?
举个例子
一个连锁健身馆(domain),包含了多个健身服务(service),例如常温瑜伽、高温瑜伽、器械健身、健美操、私人健身等;健身馆可以随时create service,例如引进拳击项目;
健身房提供了多种健身项目(project),例如肌肉增强项目包含了器械健身课程和私人健身课程;减肥项目包含健美操课程、器械健身课程;形体项目包含了常温瑜伽课程和健美操课程;
健身房面向不同的受众出售个体(user)卡、情侣(group)卡,或者家庭(group)卡;用户来健身房购买健身卡时需要填写申请表格并付费,并获得了相应的健身卡(token),下次用户来健身时,只需要出示健身卡即可;健身卡有时效(类似token有效期),例如半年卡到期后就失效不能再进入健身房健身;
每一种健身卡都有多个级别(role),如普通级别、黄金级别或者钻石级别;举个例子,普通卡每周只允许来健身2次、银卡每周允许健身4次、钻石级别则不限次;
每一种健身卡包含的健身项目不一样,例如全能卡可以参加馆内所有的健身项目、减肥卡只可以参加减肥项目,等等;
根据上述的规定细则,健身中心开始售卖健身卡:一个user购买了个人钻石级别的全能一年期健身卡,则表示这个user可以在一年有效期内拿着token(健身卡)无限次参与馆内所有健身项目;一对情侣购买了黄金级别的减肥半年情侣卡,则这对情侣各自可以在半年内每周最多参与4次减肥项目;健身卡的一次交易,就相当于一次权限赋予(role assignment),情侣购买黄金级别的减肥半年情侣卡就对应一个三元组<黄金级别,减肥项目,这对情侣>,赋予了这对情侣对减肥项目的黄金级别,权限有效期半年;
上面我们说了,domain是一个连锁健身馆,它在不同城市都有连锁店,例如上海region、北京region等等;用户购买卡的时候,也是要指定去哪个region的健身馆健身;
那么我们在上面有说明一句话“user或group在进行权限赋予时,是可以赋予其他domain内资源的操作权限”,这句话怎么去理解呢?比如健身房为了促销,在用户购买健身卡时,赠送了用户50元超市卡,用户可以拿着这超市卡去指定超市(另外一个domain)购物。

openstack各个服务模块之间互相独立但又相互关联,其中keystone服务,提供了各个服务之间进行身份认证,确保openstack用户隔离可以安全有效的进行着。

常见问题1:

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

如果你没有导入相应的凭证,自然是什么事情也做不了。
报错信息很明显,你缺少OS_USERNAME、OS_AUTH_URL。
引入凭证:source /home/admin-openrc.sh
继续执行你未完成的命令,问题解决。

如果是创建keystone服务时,遇见这个问题,你要做的是:

export OS_TOKEN=7027356a188bc8247884
export OS_URL=http://$CONTROLLER_VIP:35357/v3
export OS_IDENTITY_API_VERSION=3

然后再去创建keystone相关的服务。

假设你很不幸,按照上面的操作操作了,却依旧会出现这个问题。在检查拼写是否正确的同时,也要想一想,是不是已经多次引入了变量。如果拼写的参数都没问题,而你只是多次引入了变量,那么请先清空变量。

unset OS_TOKEN OS_URL
source /home/admin-openrc.sh

常见问题2:

unable to establish connection to http://172.16.5.135:35357/v3/

连接不到http://172.16.5.130:35357/v3/
是什么引起的呢?
首先ping 172.16.5.130;链接正常。
检查网络服务;systemctl status httpd.service ;也正常。
由于172.16.5.130是vip,检查vip。

pcs status

发现vip所在的机器不是你正在执行命令的机器,所以当然无法链接啦。
在vip所在的机器上执行相应的命令即可。

常见问题3:

  Process: 16904 ExecStop=/bin/kill -WINCH ${MAINPID} (code=exited, status=1/FAILURE)
  Process: 16901 ExecStart=/usr/sbin/httpd $OPTIONS -DFOREGROUND (code=exited, status=1/FAILURE)

http重启失败。
执行命令


/usr/sbin/httpd $OPTIONS -DFOREGROUND
AH00526: Syntax error on line 33 of /etc/httpd/conf.d/wsgi-keystone.conf:
Invalid command '~', perhaps misspelled or defined by a module not included in the server configuration

检查配置文件
修改配置文件

/usr/sbin/httpd $OPTIONS -DFOREGROUND
httpd: Syntax error on line 353 of /etc/httpd/conf/httpd.conf: Syntax error on line 32 of /etc/httpd/conf.d/wsgi-keystone.conf: </VirtualHost>~> directive missing closing '>'

重启,重启成功

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值