您的位置:首页 > 运维架构

openstack之keystone

2015-07-01 21:21 92 查看

一、什么是keystone

  用于为openstack家族中的其它组件成员提供统一的认证服务,包括身份认证、令牌发放和校验、服务列表、用户权限定义等;

  基本概念:

    用户User:用于身份认证、一个用户可以关联到多个租户,即一个用户可以属于租户A同时属于租户B;

    租户Tenant:相当于用户组的概念。一个租户可以容纳多个用户;

    角色Role:关联到“用户-租户对”的元数据。可以关联到多个用户;

    令牌Token:用于验证用户或者“用户-租户对”的请求是否合法;

    服务Service:服务类型和名称。例如网络服务、镜像服务;

    端点Endpoint:服务的实例(url入口),服务的url;

  keystone在openstack中的结构图:

  


    openstack用户-角色-服务交互图:

        

   

  keystone基本结构:

      


  用户创建虚拟机流程图:

    


    用户创建虚拟机实例:

    1、用户Alice通过自己的户名和密码向keystone申请token,keystone认证用户名和密码后,返回临时token

2、Alice通过临时token发送keystone查询他所拥有的租户,keystone验证临时token成功后,返回Alice的所有租户列表

3、Alice选择一个租户,通过用户名和密码申请正式token,keystone认证用户名、密码、tenant后,返回正式token

4、Alice通过正式token发送创建server的请求,keystone验证正式token(包括该token是否有效,是否有权限创建虚拟机等)成功后,然后再把请求下发到nova,最终创建虚拟机;



keystone安装:
keystone包安装;
keystone配置;
keystone数据库初始化;
keystone服务启动;

keystone:包含一个命令行接口,可以与keystone API交互以管理
keystone和相关服务;
keystone-all:用于验证的、面向管理员和用户的API;
keystone-manage:管理keystone的命令行接口,用于管理和keystone相
连接的数据库

创建租户;
创建用户;
创建角色;
绑定角色;将角色分配到某个用户;
创建服务:
keystone测试工具:restclient
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: