0%

Red Hat的OpenStack Platform 12已经GA了一个多月了,一直没时间关注,最近刚好发现了Red Hat的官方Blog中一篇相关的文章。于是我以原Blog为基,进行了超简译,删掉了大家都懂的”废话“,并加入了很多个人的理解,以成此文。请阅读原文以保证原汁原味。

OpenStack Platform 12 (以下简称OP12)基于OpenStack Pike版本(于2017下半年发布)。由此可见,红帽在跟随社区一块,总是快于其他厂商很多步,这可能得益于红帽upstream的商业模式吧。根据Red Hat的release规划,OP12并不是一个LTS,而只是一个标准的one-year支持版本。对红帽的OP release感兴趣的同学,请参考这里。OP12的核心焦点在于提高OpenStack的部署能力,提高其可用性,使得OpenStack与operators之间更加协调(也就是所谓的易用、可用)。下面介绍一下OP12中一些重要的特性。

Read more »

原文是Keystone PTL Lance对Q版本PTG的总结,本文提取并翻译了其中的核心信息,请阅读原文获取更详细的信息:https://www.lbragstad.com/blog/keystone-queens-ptg-summary

Policy in Code

Policy in Code是指各OpenStack服务把默认的Policy规则整合到代码中,不再需要默认的Policy.json文件。目前Keystone、Nova、Cinder等项目已经完成了重构。但还有很多项目未完成,Keystone team在Q版会帮助那些未完成的项目实现Policy in Code功能。

RBAC improvements

Keystone的RBAC中admin role的作用域一直是一个问题。在当前Keystone实现中,只要一个user在一个project中有admin权限,则这个user可以通过该权限访问其他project的资源。例如:默认Policy场景下,在Nova中,user A在project A中有admin role,在其他project中没有role。 但此时user A却可以通过nova list --all-tenents来获取所有project里的VM信息。

Read more »

概念

Keystone作为OpenStack的大门,起着路标(endpoint)、身份校验(credential)、权限控制(role)等作用。对于校验通过的用户,Keystone对其颁发Token。用户拿着这把Token钥匙,就可以访问其他OpenStack的服务了。

Read more »

所谓OpenStack的联邦鉴权就是指通过Keystnoe与第三方服务配合,实现使用第三方鉴权信息登录现有云环境的机制。例如,用户A想使用公有云X,但出于安全考虑,不想把自己的信息放在X上,通过federation identity打通二者之间的认证,A只需要在可信任的地方Y(可以是其他云、第三方认证系统等等)上完成鉴权校验,就可以访问X。还有我们在使用软件时,常常用的“使用微信登录”这样的功能,也是基于federation identity的。Keystone federation identity为混合云在用户管理层面提供了良好的解决方案。在讲述Keystone的联邦鉴权之前,我们需要先理解几个关键的概念:

Read more »

原文链接:http://openstack-in-production.blogspot.my/2017/07/nested-quota-models.html, 译文删掉了原文中一些没有内容的话。注:CERN(欧洲粒子物理研究所)

波士顿峰期间,有许多关于多层级quota模型的讨论(https://etherpad.openstack.org/p/BOS-forum-quotas )。在之前的blog中(http://openstack-in-production.blogspot.fr/2016/04/resource-management-at-cern.html ),已经讨论了一些使用背景,但是我们还有更多的工作要做。

Read more »

Keystone作为OpenStack的入口服务,它的性能极大地影响着整套OpenStack环境的体验。而在用户使用过程中,与Keystone打交道最多的地方在于获取token,以及校验token。并且往往伴随着高并发的问题。

如何提高Keystone的性能成为目前Keystone开发者最关注的问题之一。那么,在“申请Token“与”校验Token“这两个最常用、最重要的流程中,我们该如何优化?其实可以做的事情有很多,包括:部署Haproxy来分流API请求、使用非持久化存储的Fernet类型token来减少DB交互、使用缓存机制避免多次API请求或者程序运算等等。首先我们先从Keystone的缓存机制开始讲起。

Read more »