O019、通过例子学习 Keystone


参考https://www.cnblogs.com/CloudMan6/p/5373311.html   上节介绍了 Keystone 的核心概念。本节我们通过“查询可用 image”这个操作让大家对这些概念简历更加感性的认识。User admin 要查看 Project 中的image。   第一步 登录     当点击 Connect 按钮的时候,OpenStack内部发生了哪些事情呢?见下图   Token 中包含了 User 的Role 信息     第二步 显示操作界面     请注意,顶部显示 admin 可访问的 Project 为 admin 和 demo 。其实在这之前发生了一些事情:     同时,admin 可以访问 Intance、Volume、Image 等服务。     这是因为 admin 已经从 Keystone 拿到了各 Service 的Endpoints 。     第三步 显示 image 列表   点击 Images 会显示 images 列表     背后有发生了些什么呢?   首先 admin将请求发送到 Glance 的Endpoint     Glance 向 Keystone 询问 admin 身份是否有效     接下来Glance 会查看 /etc/glance/policy.json 判断 admin是否有查看 image 的权限。     权限判定通过,Glance 将image列表发给 admin。   Troubeshoot   OpenStack排错问题的方法主要是通过日志。   每个 Service 都有自己的日志文件。Keystone 主要有两个日志: keystone.log 和 keystone_access.log ,保存在 /var/log/apache2/ 目录里   root@DevStack-Controller:/var/log/apache2# ll total 25836 drwxr-x---  2 root adm        4096 May 22 01:12 ./ drwxrwxr-x 14 root syslog     4096 May 22 00:08 ../ -rw-r-----  1 root adm      201783 May 22 01:12 access.log -rw-r-----  1 root adm        2940 May 22 01:13 error.log -rw-r--r--  1 root root    2027277 May 22 20:37 horizon_access.log -rw-r--r--  1 root root     329201 May 22 20:34 horizon_error.log -rw-r--r--  1 root root        803 May 22 19:48 keystone_access.log -rw-r--r--  1 root root   19381569 May 22 20:37 keystone.log -rw-r-----  1 root adm           0 May 22 00:09 other_vhosts_access.log -rw-r--r--  1 root root    4479073 May 22 20:37 placement-api.log   DevStack 的 screen 窗口已经帮我们打开了这两个日志,可以直接查看   如果需要得到详细的日志信息,可以在  cat /etc/keystone/keystone.conf 中打开debug选项。   root@DevStack-Controller:/var/log/apache2# cat /etc/keystone/keystone.conf  | grep '^[^#]' [DEFAULT] max_token_size = 16384 logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s debug = True admin_endpoint = http://10.12.31.241/identity_admin public_endpoint = http://10.12.31.241/identity transport_url = rabbit://stackrabbit:secret@10.12.31.241:5672/   在非 DevStack安装中,日志可能在 /var/log/keystone 目录中。  

相关