注: 报错:The request you have made requires authentication. (HTTP 401)同样可以解决,查看创建配置文件的用户名、密码是否和root目录下的keystonerc_admin相同,修改相同即可解决
问题
在安装Keystone服务之前需要指定用户名和密码,通过认证服务来进行身份认证。在开始阶段是没有创建任何用户的,所以必须使用授权令牌和服务的访问接口来创建特定的、用来进行身份认证的的用户,之后需要创建一个管理用户的环境变量(admin-openrc.sh)来管理最终的凭证和终端。默认情况下,环境变量不会自动产生,需要用户自己创建及配置,可以在任意目录下创建,执行Shell命令进行操作。
解决方法:
[root@openstack ~]# vi admin-openrc.sh //创建环境变量文件
配置环境变量文件
export OS_USERNAME=admin
export OS_PASSWORD='51d1ee2d0b694923'
export OS_AUTH_URL=http://192.168.100.100:5000/v3
export OS_PROJECT_NAME=admin
export OS_USER_DOMAIN_NAME=Default
export OS_PROJECT_DOMAIN_NAME=Default
export OS_IDENTITY_API_VERSION=3
注意:
export OS_USERNAME=**** export OS_PASSWORD='**********'
此处的用户名和密码为安装OpenStack后root用户的root目录下keystone_admin中的用户名和密码
按照实际填入即可
[root@openstack ~]# . admin-openec.sh //执行配置 admin-openrc.sh
[root@openstack ~]# openstack project list //显示项目列表信息
显示成功,问题解决!
如上述环境变量环境已配置,后续在显示项目、用户信息列表信息(openstack project list)
仍然报错Missing value auth-url required for auth plugin password
再次执行配置文件即可解决(.的前后均有空格)
. admin-openrc.sh