OpenStack Kilo版本新功能分析—— Cinder、Neutron等
OpenStack Kilo版本已經(jīng)于2015年4月30日正式Release,這是OpenStack第11個(gè)版本,距離OpenStack項(xiàng)目推出已經(jīng)整整過(guò)去了5年多的時(shí)間。本文就Cinder、Neutron、Keystone、Swift幾大模塊的新功能進(jìn)行分析。
Cinder新功能
- 實(shí)現(xiàn)服務(wù)邏輯代碼與數(shù)據(jù)庫(kù)結(jié)構(gòu)之間的解耦,支持Rolling更新
- 一致性組是指具備公共操作的卷,邏輯上化為一組。在K版本中對(duì)增強(qiáng)一致性組的功能:可以添加、刪除卷,從已經(jīng)存在的快照創(chuàng)建新的組,關(guān)于一致性組的詳細(xì)操作可以參考:http://docs.openstack.org/admin-guide-cloud/content/consistency-groups.html
- cinder consisgroup-update
- [--name NAME]
- [--description DESCRIPTION]
- [--add-volumes UUID1,UUID2,......]
- [--remove-volumes UUID3,UUID4,......]
- CG
- cinder consisgroup-create-from-src
- [--cgsnapshot CGSNAPSHOT]
- [--name NAME]
- [--description DESCRIPTION]
卷類型的增強(qiáng)功能主要包含兩個(gè):為某一項(xiàng)目創(chuàng)建私有的卷類型和為卷類型增加描述信息
- cinder type-create --is-public
- cinder type-create 12
Neutron新功能
- DVR支持OVS中的VLANs
- 新的V2版本的LBaas的API
- 新的插件的更新,詳情請(qǐng)見更新日志中
- 一些高級(jí)服務(wù)的分離,例如:L3, ML2, VPNaaS, LBaaS
網(wǎng)絡(luò)方面我不是權(quán)威,希望有高人能出來(lái)講講Kilo中的Neutron新功能。
Keystone新功能
項(xiàng)目嵌套,創(chuàng)建一個(gè)新的Project時(shí)候,可以指定parent的Project
- POST /projects
- {
- "project": {
- "description": "Project space for Test Group",
- "domain_id": "1789d1",
- "enabled": true,
- "name": "Test Group",
- "parent_id": "7fa612"
- }
- }
- Keystone與Keystone的聯(lián)盟,有了這個(gè)功能兩個(gè)或者更多的云服務(wù)提供者就可以共享資源,這個(gè)功能在J版本引入,在K版本中主要針對(duì)該功能的進(jìn)一步增強(qiáng),具體的使用方法可參考這篇博文:http://blog.rodrigods.com/playing-with-keystone-to-keystone-federation/
- 針對(duì)新人授權(quán)的一些增強(qiáng)功能
- keystone的配置中有部分配置發(fā)生了變化,例如:keystone.token.backends.memcache被keystone.token.persistence.backends.memcache取代,更多詳細(xì)內(nèi)容請(qǐng)參考更新日志
Swift新功能
- 糾刪碼的加入應(yīng)該是這個(gè)版本最大的亮點(diǎn),但是糾刪碼作為beta版本發(fā)布,并不推薦應(yīng)用于生產(chǎn)環(huán)境,關(guān)于糾刪碼的詳細(xì)介紹可以參考:http://docs.openstack.org/developer/swift/overview_erasure_code.html
- 復(fù)合型令牌,簡(jiǎn)而言之就是需要用戶加上服務(wù)的Token才能對(duì)Swfit存放的內(nèi)容進(jìn)行操作,如下圖所示:
- client
- \
- \ <request>: <path-specific-to-the-service>
- \ x-auth-token: <user-token>
- \
- SERVICE
- \
- \ PUT: /v1/SERVICE_1234/<container>/<object>
- \ x-auth-token: <user-token>
- \ x-service-token: <service-token>
- \
- Swift
具體的設(shè)計(jì)文檔:http://docs.openstack.org/developer/swift/overview_backing_store.html
- 全局性的集群復(fù)制優(yōu)化,大幅提高效率,避免經(jīng)過(guò)廣域網(wǎng)傳播的數(shù)據(jù)