上一节介绍了 Keystone 的核心概念。
本节我们通过“查询可用 image”这个实际操作让大家对这些概念建立更加感性的认识。
User admin 要查看 Project 中的 image
第 1 步 登录
当点击时,OpenStack 内部发生了哪些事情?请看下面
Token 中包含了 User 的 Role 信息
第 2 步 显示操作界面
请注意,顶部显示 admin 可访问的 Project 为 “admin” 和 “demo”。 其实在此之前发生了一些事情:
同时,admin 可以访问 Intance, Volume, Image 等服务
这是因为 admin 已经从 Keystone 拿到了各 Service 的 Endpoints
第 3 步 显示 image 列表
点击 “Images”,会显示 image 列表
背后发生了这些事:
首先,admin 将请求发送到 Glance 的 Endpoint
Glance 向 Keystone 询问 admin 身份的有效性。
接下来 Glance 会查看 /etc/glance/policy.json。 判断 admin 是否有查看 image 的权限
权限判定通过,Glance 将 image 列表发给 admin。
Troubleshoot
OpenStack 排查问题的方法主要是通过日志。 每个 Service 都有自己的日志文件。
Keystone 主要有两个日志: keystone.log 和 keystone_access.log 保存在 /var/log/apache2/ 目录里。
devstack 的 screen 窗口已经帮我们打开了这两个日志。 可以直接查看:
如果需要得到最详细的日志信息,可以在 /etc/keystone/keystone.conf 中打开 debug 选项
在非 devstack 安装中,日志可能在 /var/log/keystone/ 目录里。
Keystone 就到这里,下一节我们开始学习 Glance。