OpenStack Q版本新功能以及各核心組件功能對比

 

OpenStack Q版本已經發布了一段時間了。今天, 小編來總結一下OpenStack Q版本核心組件的各項主要新功能, 再來彙總一下最近2年來OpenStack N、O、P、Q各版本核心組件的主要新功能。僅供參考, 若有遺漏、錯誤請指正。html

1.1         Q版新功能總結

Q版相對於P版, 主要仍是各功能的加強和優化, 其中主要功能有: 計算組件中的vGPU支持、冷遷移至指定主機、PCI NUMA親和性、卷共享等,鏡像組件中的web方式導入鏡像, 網絡組件中的浮動IP QoS、DVR/DHCP加強,塊存儲組件中的異步克隆卷,編排組件中對Octavia lbaas的編排和對項目標籤的編排。linux

以上功能中計算的vGPU、冷遷移指定主機、PCI NUMA親和性、卷共享以及網絡的浮動IP限速在NFV和邊緣計算場景比較有用。另外, 從API角度來看, 變化不大, 廢棄了部分老API版本,API版本支持狀況能夠參考文末的附表。web

1.1.1 重要功能彙總以下:

身份認證(keystone): 新增統一配額管理, 提供對用戶的第三方應用程序進行身份註冊和認證服務, 增長新的做用域: 系統級。數據庫

計算(Nova): 新增虛擬機對vGPU的支持, 冷遷移時能夠指定主機, 支持PCI設備的NUMA親和性, 支持掛載1個捲到多個虛擬機上。swift

鏡像(Glance): 交互式鏡像導入中增長web-download方式後端

網絡(Neutron): 支持浮動IP的QoS限速, 增長新的DVR agent type: dvr_no_external。api

塊存儲(Cinder): 支持異步克隆卷。安全

編排(Heat): 支持當棧建立/更新取消時進行回滾, 支持Octavia lbaas和項目的標籤。網絡

OpenStack各版本核心組件重要新增功能彙總併發

1.2         身份認證Keystone

1.2.1 Q版新功能:

一、新增: 統一配額管理, 把各模塊單獨的配額限制控制移到keystone統一管理, 並新增對應的API。該功能目前爲試驗性質的。

二、新增: 提供對用戶的第三方應用程序進行身份註冊和認證服務(Application Credentials)。

三、新增: 增長新的做用域(scope): 系統(system)。如今做用域分爲三級: 系統(system), 域(domain), 項目(project)。

四、新增: 支持項目的標籤, 用於過濾和搜索

五、廢棄: policies API。Keystone目前不作策略管理。

六、廢棄: /OS-FEDERATION/projects, /OS-FEDERATION/domains, 使用/v3/auth/projects和/v3/auth/domains代替。該API在Juno就已經被標記爲廢棄。

1.2.2 P版新功能:

一、優化: 註冊默認策略, 使運維更容易維護策略文件

二、優化: 加強保存在SQL中的密碼安全性, 使用更安全的hash

1.2.3 O版新功能:

一、新增: 每用戶多因素身份驗證規則(MFA規則), 能夠指定在 Keystone 發出令牌以前使用多種認證方式。 例如,一些用戶可能只須要密碼,而其餘用戶則必須提供基於時間的一次性密碼和另外一種身份驗證形式。

二、新增: 自動配置聯合身份, 當用戶登陸聯合系統時, Keystone 將動態地爲該用戶建立角色

優化: 驗證過時的令牌:如今,耗時長的操做(如上傳快照)將不會失敗了。 你能夠配置每一個項目是否接受過時的令牌。

1.2.4 N版新功能:

一、新增: REST API 支持了證書加密

二、優化: 簡化的配置步驟

1.3         計算Nova

1.3.1 Q版新功能

一、新增: 虛擬機初步支持vGPU。目前還有很多限制, 處於試驗階段: 一個計算節點只能支持1種類型的vGPU, 掛起虛擬機/調整虛擬機大小/遷移還不能分配vGPU, NVIDIA GRID顯卡有vGPU使用個數的限制等問題。

二、新增: 冷遷移時能夠指定主機

三、新增: 支持PCI設備的NUMA親和性, 支持3種類型的策略: required(必須使用), legacy(若是支持的話就使用), preferred(但願使用)。

四、新增: 支持掛載1個捲到多個虛擬機上, 該卷建立時必須把multiattach置爲true。

五、優化: 重建虛擬機時增長新的參數key_name及user_data, 能夠在重建時從新設置或者刪除密鑰及user_data。

六、優化: 對部分API增長、優化了分頁支持

七、優化: 對VMware虛擬機增長了優雅關閉的方式(graceful shutdown)

八、優化: 修正cell_v2中的部分問題。 cell_v2中增長delete_host屬性, 能夠把host從cell中刪除。 另外, 在cell_v2 delete_cell中增長選項force, 能夠強制刪除整個cell, 而無論cell是否有host。

九、優化: 對下列虛擬機動做增長記錄: attach_interface, detach_interface, attach_volume, detach_volume, swap_volume, lock, unlock, shelveOffload, createBackup, createImage.

十、優化: 對flavors的API增長描述description字段

十一、優化: nova-novncproxy服務能夠配置TLS安全證書和VNC server進行加密通訊

十二、優化: 支持新的廠商libvirt卷存儲掛載驅動: StorPool。

1三、廢棄: Nova將再也不支持Block Storage(Cinder) v2 API。

1四、廢棄: 廢棄Nova API extension, os_compute_api:XXX

1.3.2 P版新功能

一、新增: 支持Cell v2的多Cell部署, 可使用Cell v2 API建立多Cell環境, 適應更大規模集羣。廢棄Cell v1 API。

二、新增: 支持卷的multi-attach、支持捲動態伸縮、支持卷做爲臨時盤

三、新增: 防止虛擬機佔用宿主機上的全部物理CPU,經過使用 reserved_host_cpus 配置項來爲 hypervisor 預留部分CPU

四、優化: 支持在故障時,自動將本身進行隔離

五、優化: 支持經過ironic virt驅動對裸機網卡的添加和刪除

六、優化: 優化配額管理,在配額不足時,提早給出提示而不是報錯

七、優化: 優化PCI設備調度,避免無PCI請求的虛擬機調度到具有PCI設備的主機上

1.3.3 O版新功能

一、優化: Nova過濾器和調度器如今將會使用 Placement API,它會根據 CPU/內存/磁盤容量來過濾計算節點。

二、優化: Nova如今將會在全部部署中使用 Cell v2; 目前每一個部署只支持一個Cell

三、優化: 如今是默認網絡選項爲neutron網絡

四、優化: 加強升級能力, 使用新的 「nova-status upgrade check」 CLI 命令來查看升級到 Ocata 所需作的事情。

1.3.4 N版新功能

一、新增: 自動網絡配置, 可讓用戶一鍵配置網絡, 簡化虛擬機配置

二、新增: Placement API,給用戶更好的可見性,以及資源的控制,例如資源提供者、庫存、分配和使用記錄

三、新增: Cells v2,能夠將你的數據中心合併爲統一的管理,以及很好的擴展性。相比於上個版本,進行了大的改動,並完成了所有的特性。

四、優化: 可變的配置,容許管理員在Nova服務啓動時更改配置便可生效,再也不須要從新啓動

1.4         鏡像Glance

1.4.1 Q版新功能

一、新增: 交互式鏡像導入中增長web-download方式, 即從遠端URL中下在鏡像

二、新增: 加入一個新的plugin, 能夠自動把鏡像元數據在交互式鏡像導入過程當中, 注入到非管理員建立的鏡像中

三、廢棄: glance registry服務和相關API被廢棄, S版本時將會被移除。

注: glance-registry用於存儲、處理、獲取Image Metadata,經過響應從glance-api發送過來的Image Metadata REST Request,而後與MySQL進行交互,實現Image Metadate的存儲、處理、獲取。 v1的實現上,有glance-api和glance-registry兩個WSGI 服務,都提供REST API,只不過glance-API的REST API對外使用,glance-registry的API只由glance-api使用。而 v2在實現上,把 glance-registry 的功能合併到了 glance-api 中,減小了一箇中間環節。

1.4.2 P版新功能

新增: 增長交互式鏡像導入方式,目前只支持glance-direct方式,即直接從文件導入鏡像。直接導入鏡像的流程包含3部分:

1. 使用鏡像建立api建立鏡像記錄並獲得鏡像id。

2.經過鏡像暫存(Stage) API上傳鏡像到暫存區域。

3.執行鏡像導入調用, 完成鏡像導入。

1.4.3 O版新功能

一、優化: 鏡像的公開性加強, 用戶如今能夠建立可供其餘人使用的'社區'鏡像。 您還能夠將鏡像設置爲'共享'給指定用戶。

二、優化: 增強Keystone中的多重認證, 在Keystone中改善對MFA的支持,包括OTP(一次性密碼)支持和每用戶令牌過時規則。

1.4.4 N版新功能

一、新增: Glance Artifact倉庫:Glare,能夠提供不只僅是鏡像的支持

二、優化: 爲永久快照提供的信任機制有效避免長時間運行的操做錯誤。

三、優化: 新增默認的限制性訪問策略,意味着默認都是鎖定的,除非用戶做了明確的受權。

1.5         網絡Neutron

1.5.1 Q版新功能

一、新增: 支持浮動IP的QoS

二、新增: 增長新的DVR agent type: dvr_no_external, 該模式使得浮動IP流量在南北向(DNAT)路由時爲集中式處理, 而東西向路由時爲分佈式處理。

三、新增: 可在dhcp agent的配置項中配置dhcp的renewal和rebinding時間

四、優化: 可經過模糊匹配IP地址來過濾出端口

五、優化: 可經過agent配置項, 配置隧道外層報頭中的dscp值

六、優化: 經過配置項, 外層報頭中的dscp可繼承自內層報頭中的dscp值

七、優化: ovs agent支持經過ssl方式鏈接ovsdb服務, 加強了安全性

八、廢棄:linuxbridge中的tos配置項被廢棄, 使用更精確的配置項dscp

1.5.2 P版新功能

一、新增: 支持ovs驅動經過SR-IOV實現硬件卸載, ovs如今可直接綁定SR-IOV端口

二、優化: 優化性能和穩定性, 優化基於ovs的防火牆的穩定性; 優化neutron服務端和L2 agent之間通訊, 下降neutron的服務端負載; 減小更新資源產生競爭的可能性;減小Metadata代理的內存使用

三、優化: 優化QoS, 支持ovs和 linux bridge驅動中的雙向限速; 支持SR-IOV的出口帶寬限制規則; 支持對路由器網關的限速;支持查看QoS規則類型詳情

四、優化: 優化分佈式路由(DVR)相關功能, 包括多個bug修復, 支持DVR快速退出等, 並加強穩定性

五、優化: 支持O版本無縫升級到P版, 提升可維護性

六、優化: 每一個網絡可單獨配置MTU, 能夠更改

七、優化: 支持爲每一個Port配置獨立的DNS Domain

八、優化: 全部主要資源均可配置用戶自定義標籤

1.5.3 O版新功能

一、新增: 支持linux bridge qos的出方向最小帶寬限速, 和dscp marking

二、優化: vhost-user機制加強, 支持重連

三、優化: 資源標記TAG功能支持子網、端口、子網池及路由器

四、優化: 對dhcp的ipv6模式進行了很多改進

五、優化: 新增keepalived vrrp 健康檢查特性,加強master router到全部網關之間的鏈接驗證。

1.5.4 N版新功能

一、新增: 支持vlan aware vms (即vlan trunk), 支持虛擬機之間帶VLAN轉發, 主要用於NFV等場景

二、新增: 支持對DHCP和L3 agent的可用域, 容許用戶指定哪一個節點上使用相關網絡服務。

三、新增: 支持QoS功能, 支持對虛擬機端口、網絡的限速和dscp marking。

四、新增: 支持基於角色的網絡訪問控制(RBAC), 容許其餘項目訪問本身的資源。

五、新增: 支持自動建立網絡, 簡化建立虛擬機時須要配置網絡信息的步驟。只須要事先指定默認的外部網絡和subnet pools, 建立虛擬機時, 可讓neutron自動根據默認配置, 建立網絡,子網,分配ip, 路 由器, 鏈接外網。

六、新增: 支持查詢網絡及其子網的全部ip個數和使用過的ip個數

七、新增: 支持部分網絡資源的描述、tag標籤、建立、更新的時間戳

八、優化: API服務支持不間斷升級

1.6         塊存儲Cinder

1.6.1 Q版新功能

一、新增: 支持異步克隆卷

二、新增: 支持新的策略: 不容許mutiattach操做

三、新增: 經過備份建立卷

四、優化: 支持快照的可用域過濾

五、優化: 支持和優化更多的廠家設備驅動: DataCore’s SANsymphony, Hyper-converged Virtual SAN storage, Inspur InStorage, VMware VStorageObject, VMDK, Dell EMC VMAX等等。

六、廢棄: Cinder API v1在Juno版時, 如今徹底刪除。

七、廢棄: 一致性組API被廢棄, 可使用通用卷組API。

八、廢棄: 廢棄並刪除多個卷驅動: Block device driver, Blockbridge, Coho, FalconStor FSS, Infortrend, QNAP, Reduxio, Tegile, Violin, X-IO, ZTE, Hitachi HNAS, HBSD, VSP等。

1.6.2 P版新功能

一、新增: 支持」還原到快照」 (revert to snapshot)功能,容許用戶將卷數據回滾到上一次作快照的時間點

二、新增: 支持對正在被使用的捲進行熱伸縮。 只限於libvert驅動,並限於iscsi和fc卷

三、新增: 支持對volume type進行更多的權限控制

四、優化: "複製組"(replication group)功能, 容許普通用戶操做"複製組", 並有衆多廠商驅動優化對」複製組」的支持

五、優化: 對分佈式鎖的使用

六、優化: 修復多個廠商驅動中的Bug

七、優化: 多後端環境中可單獨爲每一個後端配置可用域

1.6.3 O版新功能

一、新增: 支持將一個卷附加給多個虛機功能,該功能預計在下一個版本中發佈

二、新增: 支持主/主 HA, Cinder 如今能夠運行在主/主羣集模式下,來防止併發操做衝突。與過去的版本相比,Cinder 還優化了過程當中出現的服務失敗的處理過程

1.6.4 N版新功能

一、優化: 微版本,容許開發者在毋需破壞大版本的狀況新增新的特性。

二、優化: 回滾更新,Newton以後的版本能夠直接更新而無需動整個雲平臺。

三、優化: 配置項新增enabled_backends,對卷的建立定義了哪些後端類型。

四、優化: 能夠從新更換加密的卷爲不加密的,在建立以後再更改回來。

五、優化: 刪除卷及其快照,使用了級聯的特性,而不是首先刪除快照。

六、優化: Cinder的備份服務如今能夠擴展爲多個實例,擁有了更佳的靈活性和擴展性。

1.7         編排Heat

1.7.1 Q版新功能

一、新增: 支持當棧建立/更新取消時不進行回滾

二、新增: Zun容器資源中增長hostname, hints, security_groups, mounts屬性。

注: ZUN於 2016年6月創建。Zun的目標是提供統一的Openstack API用於啓動和管理容器,支持多種容器技術。

三、新增: 支持Octavia Lbaas Service的編排, 包括: OS:Octavia:LoadBalancer, OS:Octavia:Listener, OS:Octavia:Pool, OS::Octavia:PoolMember, OS:Octavia:HealthMonitor, OS:Octavia:L7Policy, OS:Octavia:L7Rule

四、新增: 支持項目(租戶)的tag標籤的編排

五、新增: 支持OS:Trove:Cluster中配置網絡資源

六、優化: 修復"強制刪除'SOFT-DELETED'狀態的虛擬機可是刪除不了"的問題

七、廢棄: 使用OS:Aodh:GnocchiAggregationByResourcesAlarm來替代OS:Aodh:Alarm.

八、廢棄: 使用 OS:Designate:Zone和OS:Designate:RecordSet來替代OS:Designate:Domain和OS:Designate:Record

1.7.2 P版新功能

一、新增: 支持對Neutron:Trunk (即VLAN Trunk) 的編排

二、新增: 支持對網絡主要資源標籤的配置

三、新增: 支持建立虛擬機時, 使用’自動分配網絡’

四、新增: 支持Nova:ServerGroup的策略: 弱親和性(soft-affinity)和反弱親和性(soft-anti-affinity)

1.7.3 O版新功能

新增: 新增通知和應用程序工做流。 使用OS::Zaqar::Notification來訂閱Zaqar隊列中的通知, 或使用OS::Zaqar::MistralTrigger來只訂閱Mistral通知。

1.7.4 N版新功能

一、新增: 可使用DNS解析, 並支持整合外部的DNS。

二、優化: 使用屬性external_id attribute來訪問額外的資源。

1.8         OpenStack各版本的API區別

 

另外, 小編注意到了從P版開始Ceilometer API就廢棄了,使用aodh(alarms)、gnocchi(metrics)、Panko(events)替代。

從API表格來看, 各組件的API接口演進比較平滑, 新版本通常都能經過協商機制來兼容老版本,這給咱們的環境升級帶來了極大的方便。

1.9         參考文檔

https://releases.openstack.org/queens/index.html

OpenStack各版本發佈時間及EOL

 

Series

Status

Initial Release Date

Next Phase

EOL Date 組件數 組件

Austin

End Of Life

2010年10月21日

 

  2 Nova, Swift

Bexar

End Of Life

2011年2月3日

 

  3 Nova, Glance, Swift

Cactus

End Of Life

2011年4月15日

 

  3 Nova, Glance, Swift

Diablo

End Of Life

2011年9月22日

 

2013年5月6日 3 Nova, Glance, Swift

Essex

End Of Life

2012年4月5日

 

2013年5月6日 5 Nova, Glance, Swift, Horizon, Keystone

Folsom

End Of Life

2012年9月27日

 

2013年11月19日 7 Nova, Glance, Swift, Horizon, Keystone, Quantum, Cinder

Grizzly

End Of Life

2013年4月4日

 

2014年3月29日 7 Nova, Glance, Swift, Horizon, Keystone, Quantum, Cinder

Havana

End Of Life

2013年10月17日

 

2014年9月30日 9 Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer

Icehouse

End Of Life

2014年4月17日

 

2015年7月2日 10 Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove

Juno

End Of Life

2014年10月16日

 

2015年12月7日 11 Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove, Sahara

Kilo

End Of Life

2015年4月30日

 

2016年5月2日 12 Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove, Sahara, Ironic

Liberty

End Of Life

2015年10月15日

 

2016年11月17日 17 Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove, Sahara, Ironic, Zaqar, Manila, Designate, Barbican, Searchlight

Mitaka

End Of Life

2016年4月7日

 

2017年4月10日 18 Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove, Sahara, Ironic, Zaqar, Manila, Designate, Barbican, Searchlight, Magnum

Newton

End Of Life

2016年10月6日

 

2017年10月25日 32 Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove, Sahara, Ironic, Zaqar, Manila, Designate, Barbican, Searchlight, Magnum, aodh, cloudkitty, congress, freezer, mistral, monasca-api, monasca-log-api, murano, panko, senlin, solum, tacker, vitrage, Watcher

Ocata

Extended Maintenance

2017年2月22日

Unmaintainedestimated TBD

  32 Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove, Sahara, Ironic, Zaqar, Manila, Designate, Barbican, Searchlight, Magnum, aodh, cloudkitty, congress, freezer, mistral, monasca-api, monasca-log-api, murano, panko, senlin, solum, tacker, vitrage, Watcher

Pike

Maintained

2017年8月30日

Extended Maintenanceestimated

2019年3月3日 32 Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove, Sahara, Ironic, Zaqar, Manila, Designate, Barbican, Searchlight, Magnum, aodh, cloudkitty, congress, freezer, mistral, monasca-api, monasca-log-api, murano, panko, senlin, solum, tacker, vitrage, Watcher

Queens

Maintained

2018年2月28日

Extended Maintenanceestimated

2019年8月25日 39 Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove, Sahara, Ironic, Zaqar, Manila, Designate, Barbican, Searchlight, Magnum, aodh, cloudkitty, congress, freezer, mistral, monasca-api, monasca-log-api, murano, panko, senlin, solum, tacker, vitrage, Watcher, blazar, ceilometer-powervm, karbor, octavia, storlets, tricircle, zun
Rocky Maintained

2018年8月30日

Extended Maintenanceestimated 2020年2月24日 43 Nova, Glance, Swift, Horizon, Keystone, Neutron, Cinder, Heat, Ceilometer, Trove, Sahara, Ironic, Zaqar, Manila, Designate, Barbican, Searchlight, Magnum, aodh, cloudkitty, congress, freezer, mistral, monasca-api, monasca-log-api, murano, panko, senlin, solum, tacker, vitrage, Watcher, blazar, ceilometer-powervm, karbor, octavia, storlets, tricircle, zun, Cyborg, ec2-api, Masakari, Qinling
Stein Development

2019年4月10日

estimated(schedule)    

————————————————————————————————————————————————————————————————————————————

 Openstack各組件的做用

aodh Telemetry Alarming services 遙測報警服務
barbican Key Manager service 祕鑰管理器服務
blazar Resource reservation service 資源預約服務
ceilometer Telemetry Data Collection service 遙測數據收集服務
cinder Block Storage service 塊存儲服務
cloudkitty Rating service 評級服務
congress Governance service 治理服務
designate DNS service DNS服務
glance Image service 形象服務
heat Orchestration service 業務流程服務
horizon Dashboard 指示板
ironic Bare Metal service 裸金屬服務
karbor Data Protection Orchestration Service 數據保護編制服務
keystone Identity service 身份服務
magnum Container Infrastructure Management service 集裝箱基礎設施管理服務
manila Shared File Systems service 共享文件系統服務
mistral Workflow service 工做流服務
murano Application Catalog service 應用程序目錄服務
neutron Networking service 網絡服務
nova Compute service 計算服務
octavia Load-balancer service 負載平衡器服務
qinling Function as a Service for OpenStack 做爲OpenStack服務的函數
sahara Data Processing service 數據處理服務
senlin Clustering service 集羣服務
solum Software Development Lifecycle Automation service 軟件開發生命週期自動化服務
swift Object Storage service 對象存儲服務
tacker NFV Orchestration service NFV編排服務
tricircle Networking automation across Neutron service 中子服務的網絡自動化
trove Database service 數據庫服務
watcher Infrastructure Optimization service 基礎設施優化服務
zaqar Messaging service 消息傳遞服務
zun Containers service 集裝箱服務
ceilometer-powervm    
Cyborg    
ec2-api    
freezer    
Masakari    
monasca-api    
monasca-log-api    
panko    
Searchlight    
storlets    
vitrage
相關文章
相關標籤/搜索