博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用Keystone令牌加速OpenStack云认证
阅读量:2521 次
发布时间:2019-05-11

本文共 3597 字,大约阅读时间需要 11 分钟。

今年7月, 社区庆祝了开放云合作5年。 现在,它已成为一个全球性社区,由166个国家/地区的500多个组织和30,000个个人成员组成。 OpenStack拥有近四百万行代码,并为包括AT&T,迪士尼,PayPal和沃尔玛在内的一些世界最大品牌的云提供动力。

开源组件可构建云-基本上这是OpenStack解决的问题。 OpenStack提供了构建模块,以基于标准,协作和非专有的开源方式构建私有云和公共云。 什么样的云? OpenStack主要帮助开源开发人员交付基础设施即服务(IaaS)云,以及计算资源,虚拟机和虚拟网络,它们可以很好地连接在一起。 它几乎都是用Python编写的,具有可以使用的通用库,虚拟机模板存储和身份验证。

10月27日至30日,东京OpenStack峰会将于东京举行,届时将有数千名OpenStack云软件的开发人员,用户和管理员参加,并将在运营轨道中担任最重要的专家和OpenStack先驱之一。

在构建开源云时,身份和访问管理是确保用户安全和成功进行身份验证的关键。 Keystone是OpenStack身份解决方案,用于管理用户数据库和服务目录,并与LDAP等后端目录服务集成。 您可以使用Keystone为云实现您自己的用户单点登录(SSO)。 有多种Keystone身份验证令牌格式可供选择。

Priti是IBM的顾问软件工程师,并且是多个OpenStack项目的一部分,其中包括Keystone和OpenStack安全项目(正式称为OpenStack安全组)。 她还曾在Symantec(赛门铁克)担任首席软件工程师,领导 )私有云身份管理体系结构的开发,为下一代Symantec(赛门铁克)产品提供基础架构和平台服务。 今年在东京OpenStack峰会上,Priti的会议将探讨和其他令牌格式。

当她不从事Keystone实施工作或主持OpenStack聚会,黑客马拉松或午餐和学习时,您可能会发现Priti在工作室里练习印度传统的形式。

您即将举行的会议针对的对象是谁? 他们应该期待什么?

OpenStack峰会正在进行工作。 对于从事OpenStack不同方面工作的工程师来说,这是一次机会,他们可以聚在一起,就设计进行协作,还可以在不同的会议上与同行分享最佳实践。 峰会通常面向开发人员,基础架构工程师以及运营和支持工程师。 我的课程面向这些类别的所有人。

在托管我们都已依赖的Web应用程序的高度分布的云的不断增长的世界中,身份服务变得越来越重要,这有可能扩大攻击面。 因此,当我们构建私有云和公共云时,我们想讨论对用户来说简单的身份验证策略,同时又要保持尽可能的安全。

我在Keystone令牌上的会议将深入探讨四种不同令牌格式的优缺点,以帮助确定哪种格式适合您的云。 适用于希望了解OpenStack世界中其他人如何实现和利用Keystone令牌的开发人员,想要了解如何部署和进行配置更改的基础架构工程师,以及对如何进行故障排除和理解通用清单感兴趣的人员的操作和支持您会收到一张票,说明身份验证失败。

我们已经有 , 和令牌格式。 是什么使Fernet令牌对于多站点云部署很有趣?

几年来,我们已经在生产部署中运行了非常稳定的Keystone令牌格式。 在许多OpenStack云中都建立并实现了UUID,PKI和PKIZ。 他们经过了很好的审查。

UUID令牌是最小且最常用的。 主要缺点是OpenStack服务必须与Keystone通信以验证UUID令牌。

相比之下,PKI令牌的大小很大。 它甚至超过了HTTP标头的大小。 例如,在Symantec私有云的实现中,PKI令牌大小为18KB。 对于PKI代币缺乏简短性的地方,它们弥补了效率。 Keystone中间件可以解码PKI令牌并对其进行验证,而无需返回Keystone服务进行每次令牌验证。 这里的主要缺点是,它会在网络上产生大量流量。

PKIZ是PKI的压缩形式。 通过优化的压缩算法,虽然不接近128位UUID令牌,但其大小已大大减少。 因此,尽管PKIZ小于PKI,但对于需要将数据从美国东部传输到美国西部的云基础架构而言,它仍然很大,例如,这会占用大量带宽。

当您想在全球范围内扩展OpenStack部署时,这些格式都不是理想的选择。 存在复制问题。 每当用户在一个区域中通过身份验证时,他/她就不能在另一区域或数据中心中使用同一令牌。 您必须复制令牌才能进行多站点部署,这需要持久性。

这些令牌必须存储在某个地方。 该存储可以是MemCache或SQL后端。 如果不复制令牌后端,则一个数据中心中生成的令牌无法在另一数据中心中使用。

借助Fernet,情况有所不同。 它不如UUID小,但比PKI和PKIZ小得多。 更重要的是,它是非持久的。 您不必缓存它。 相反,Keystone会根据令牌本身中的元数据重建Fernet令牌。 例如,当您跨多个区域进行身份验证时,可以在美国西部使用与美国东部相同的令牌。 由于Fernet可以根据其余的后端数据进行重新生成,因此可以大大减少有线通信量。

让我们谈谈速度。 Fernet如何改善性能和响应时间,以及提高多少?

我鼓励所有人阅读 。 这项研究已经完成了对不同标记格式的基准测试的基准,包括标记再生和撤销。

在我的会议中,我们将解释这些数字,并将其与我研究过的一些针对令牌创建和验证性能的OpenSource云项目进行比较。

您已经在大型企业云项目上工作了多年。 对于高级用户,在跨多个数据中心的集群或分布式环境中扩展Keystone时,您是否会分享一些技巧?

绝对。 Keystone不仅提供身份验证平台,而且还提供授权。 企业云具有自己的用例,包括用户数量,基于BU的用户隔离以及每个BU的策略和角色。 我们还将讨论每个BU的策略和角色,以及公共和经销商云在配置用户方面受到限制的常见问题。

我们将深入探讨兼容性问题。 OpenStack项目大约每6个月发布一次,Juno于去年10月,Kilo于去年4月。 通常,您希望将关联的Kilo组件与Kilo一起部署,而不是混合搭配。 部署特定版本的每个部分以进行实时部署变得非常关键。

我们将使用Fernet令牌讨论的一个技巧是,在许多情况下,它们可以向后兼容,可以追溯到从Havana开始的过去4个发行版中。 例如,如果您刚刚将Keystone更新为Kilo,但是对于Fernet来说,所有其他服务仍然是Juno。 当您拥有PKI令牌并将令牌格式更改为Fernet时,此方法很好地工作。

您是如何开始使用开源的?

2013年,我对与我在一起的团队感到沮丧,并且正在寻找改变。 我开始在不同的公司进行面试,显示我的简历。 在介绍我为在项目中为我提供帮助而构建的配置和程序包管理工具时,一位面试官表示惊讶,并想知道我是否听说过 , 等。为什么我要重新发明轮子?

那是我发现开放源码并涉足的地方。我很快意识到,尽管您可能在封闭源码上获得了很好的解决问题和编码技能的经验,但您可能会错过开放源码提供的解决方案和协作机会的广度。

在成为Symantec OpenStack团队的第四位员工后,我开始阅读和探索OpenStack文档,并在发现问题时维护自己的解决方案。 我发现,通过共享我的解决方案,我可以为他人解决问题并更有效地克服障碍。 而且,当然,您可以通过写博客并为社区做出贡献而获得认可。

开源在全球范围内拥有许多创新工程师。 它打破了对专有解决方案的传统信念。 您不必每天在立方体或办公室里藏八个小时。 走出去,呼吸新鲜空气。 你不是一个人。 世界其他国家也可能面临同样的问题。 与人交谈。 了解如何才能更好地共同解决问题。

您在如此男性主导的领域中的成功是一个灵感。 根据OpenStack基金会市场协调员Allison Price的说法,今年温哥华峰会的与会者中只有约10%是女性。 您对有类似技术职务的其他女性有何建议?

不要害怕和无所畏惧。 当您听到您的同事(男性或女性)在桌头大声或强烈的声音时,他可能是不对的。 如果您认为自己是对的并且知道解决方案,请不要退缩。 大声说出来。 最后但并非最不重要的一点是,要自信并相信自己。

尽管在OpenStack峰会期间缩短女性洗手间的间隔是件好事,但我仍期待改变。

在东京的OpenStack峰会上,OpenStack的女性将为女性参加者和男性盟友举办几场社交活动,包括“ Command Presence”研讨会和一场克服微妙偏见的会议。

查看Priti过去的演讲中的视频:

OpenStack峰会
演讲者访谈

本文是针对的一部分,该 为期4天,面向OpenStack云软件的开发人员,用户和管理员

翻译自:

转载地址:http://dsfzd.baihongyu.com/

你可能感兴趣的文章
Binary Tree Inorder Traversal
查看>>
npm、yarn、pnpm
查看>>
洛谷 P2590 [ZJOI2008]树的统计
查看>>
软件工程结对项目博客作业
查看>>
C++ 虚函数表解析
查看>>
Centos 7 安装与卸载MYSQL5.7
查看>>
ironic baremetal node status
查看>>
android状态栏和NavigationBar的动态控制显示
查看>>
npm 版本问题
查看>>
#define 宏定义
查看>>
有了这套微信小程序x5调试,调试一些简单的开发者工具调试不了的功能不成问题!!!!...
查看>>
获取客户端经纬度坐标
查看>>
centos7运维
查看>>
学习:Python练习
查看>>
一款好用的jquery评分插件
查看>>
第一堂 软件工程课
查看>>
DataGridView出现大红叉--在使用多线程访问数据源时
查看>>
导入excle到服务器时候删除服务器历史数据
查看>>
《学习之道》第四章学习方法13睡觉前看专业书籍
查看>>
javascript_basic_02之数据类型、分支结构
查看>>