一、keystone认证任务
1.实验目的
①安装控制器必备组件
②部署共享任务
③在控制器端配置镜像存储、网络、计算和Dashboard服务
2.keystone的认证流程
3.安装MySQL服务
3.1 安装mysql服务
#yum clean all //清空yum缓存
#yun makecache //制作新的缓存
[root@contrller0 ~]#yum install -y mysql mysql-server MySQL-python
图:
vi /etc/my.cnf //修改配置文件
#server mysql start //启动mysql服务器
#chkconfig --add mysqld
#chkconfig mysql on //设置MySQL服务器开机自启
图:
#usr/bin/mysqladmin -u root password ‘openstack’
//修改mysql数据库root密码为openstack
#mysql_install_db //MySQL数据库的初始化
图:
3.2 安装rabbitmq消息队列
(1)导入KEY
#mkdir -p /data/rabbitmq //创建rabbit目录
#cd /data/rabbitmq
#vi rabbitmq-signing-key-public.asc.txt //制作信任公钥
在文本作如下修改:
图:
rpm --import rabbitmq-signing-key-public.asc.txt //导入公钥
(2)安装rabbitmq
上传四个RPM包,如下图所示:
进入管理界面查看rabbitMQ的信息,如下图所示:
(3)为nova,neutron,client,heat创建用户并授予权限,如图所示:
对相应用户执行授权操作,如下图所示:
二、keystone安装
1.实验目的
①安装控制器必备组件
②部署共享服务
③在控制器端配置镜像存储、网络、计算和Dashboard服务
2.keystone安装
2.1 创建库和授权
#mysql -uroot -popenstack #连接数据库,用户名root和密码openstack
图:
授权本地和远程用户,查看用户,查看登录验证,如下图所示:
登录验证
2.2 keystone安装与配置
(1)安装软件包
(2)生成token
(3)配置token
(4)配置数据库连接
修改后
查看修改:
(5)配置UUID token和SQL驱动
配置SQL撤回驱动:
(6)为方便排错,显示详细的日志信息
2.3 生成KPI认证所需要的证书文件
2.4 同步keystone数据库,生成keystone所需要的表
2.5 创建一个cron任务,配置定期清理过期的token(默认存在DB,防止影响性能)
3.keystone创建user、role、tenant和endpoint
3.1 配置token环境
在配置文件中插入:
3.2 创建用户、租户和权限
(1)创建tenant
(2)创建admin用户
(3)创建admin角色
(4)将用户admin赋予admin角色额admin project内
(5)创建_member_角色,并将admin用户加入该角色(dashboard默认赋予_member_角色)
3.3 创建demo账号相关的角色
(1)创建demo用户
(2)创建demo租户
(3)demo用户和租户、_member_角色关联
3.4 创建service租户,其他project之间的交互,需要加入到service这个租户里面,后续需要使用
3.5 创建keystone自身的服务和端点endpoint
(1)创建keystone的service类型,其他服务通过该catalog即可访问到keystone服务
(2)将keystone服务端口注册到service中,从而通过service访问keystone
3.6 校验用户环境变量配置文件
(1)取消keystone的环境变量
#unset OS_SERVEICE_TOKEN
#unset OS_SERVICE_ENDPOINT #取消钢材设置的两个环境变量
(2)校验admin用户获取token是否正常
(3)校验admin是否有管理权限,如用户,租户,角色,服务,端点等
#keystone --os-username admin --os-tenant-name admin --os-password ADMIN_PASS --os-auth-url http://controller0:35357/v2.0 user-list #以管理租户,管理用户身份获得用户列表
#keystone --os-username admin --os-tenant-name admin --os-password ADMIN_PASS --os-auth-url http://controller0:35357/v2.0 service-list #以管理租户,管理用户身份获得用户列表,有输出内容表示执行成功
(4)校验demo账号获取token情况
(5)校验demo账号是否有权限
3.7 设置用户环境变量文件
(1)配置admin用户的环境变量
(2)配置demo账号的环境变量