Jump to: navigation, search

Difference between revisions of "ReleaseNotes/Kilo/zh-tw"

(Created page with "升級文件請參考: * http://docs.openstack.org/developer/ironic/deploy/upgrade-guide.html#upgrading-from-juno-to-kilo")
(Created page with "==== 從Icehouse的"nova-baremetal"升級 ====")
Line 588: Line 588:
 
* http://docs.openstack.org/developer/ironic/deploy/upgrade-guide.html#upgrading-from-juno-to-kilo
 
* http://docs.openstack.org/developer/ironic/deploy/upgrade-guide.html#upgrading-from-juno-to-kilo
  
==== Upgrading from Icehouse "nova-baremetal" ====
+
==== 從Icehouse的"nova-baremetal"升級 ====
  
 
An upgrade from an Icehouse Nova installation using the "baremetal" driver directly to Kilo Ironic is untested and unsupported. Instead, please follow the following upgrade path:
 
An upgrade from an Icehouse Nova installation using the "baremetal" driver directly to Kilo Ironic is untested and unsupported. Instead, please follow the following upgrade path:

Revision as of 08:37, 30 June 2015

Other languages:
English • ‎日本語 • ‎한국어 • ‎русский • ‎中文(简体)‎ • ‎中文(台灣)‎

OpenStack 2015.1.0 (Kilo) Release Notes

The Kilo release of OpenStack is dedicated to the loving memory of Chris Yeoh, who left his family and us way too soon.

Contents


OpenStack 物件儲存 (Swift)

新功能

Erasure Code (beta)

Swift從這個版本開始支援Erasure Code,使得佈署人員可以用極少的Raw原始容量達到更高的可用性,如同在副本儲存中一樣,然而 EC需要更多的CPU和網路資源,所以並不適合所有的專案,EC非常適合使用在一個獨立且極少訪問的大量儲存區域。

SwiftEC的實現對於用戶是透明的,對於副本儲存和EC的類型,在API上沒有任何區別.

swift為了支援EC現在必須依賴PyECLib和liberasurecode,liberasurecode是一個可插件式的函式庫,允許你在所選擇的函式庫中實作你的EC演算法.

更完整的文件請參閱http://swift.openstack.org/overview_erasure_code.html

Composite tokens

Composite tokens允許其他OpenStack Services以Clint端的名義將數據儲存於Swift中,所以無論是Clint端還是Services在更新數據時,都不需要雙方彼此授權。

舉一個典型的例子就是用戶請求NOVA 存放一個VM的快照,NOVA 將請求傳遞給 Glance,Glance將鏡像寫入Swift容器中的一組對象中。在這樣的場景下用戶沒有來自服務的有效tokens無法直接修改快照數據。同樣,服務自身也無法在沒有有效tokens的情形下更新數據。但是數據的確存在於用戶的Swift帳戶中,這樣使得帳戶管理更加簡單。

更完整的文件請參閱http://swift.openstack.org/overview_backing_store.html

更小規模不平和集群的數據位置更新

Swift數據存放的位置根據硬體當前負載決定。當前, 允許維護人員添加新的Zenes和regions,而不需要立即觸發大規模數據遷移, 同時,如果一個群集是非平衡的(例如,在一個Zones的集群中,其中一個的容量式另一個的兩倍),swift會更有效的使用現有空間,並且當副本在集群空間不足時發出警告。

區域性集群複製優化

regions 之間複製時,每次複製只移動一個副本,這樣遠程的regions可以在內部複製,避免更多的數據在WAN中拷貝。

已知問題

作為Bata更新 EC的功能接近完成,但對於某些功能仍然不完整(Multi-range讀取),並且沒有一個完整的性能測算,這個功能為了持久依賴於ssync 。佈署人員督促我們做更大規模的測試,並且不要在生產環境佈署中使用EC儲存。

升級提示

像往常一樣你能在不影響用戶體驗的前提下升級到這個Swift版本。

為了支援EC Swift需要依賴PyECLib和liberasurecode 並且evenlet的最低版本要求也升高了。


OpenStack Compute (Nova)

新功能

API v2.1

我們有了下一代Nova API的第一個更新版本v2.1 v2.1版本的目的是向回兼容v2.0版本 並且擁有增強的API校驗 API所有更新式通過發佈microversin發現的 更多訊息請:http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/api-microversions.html

kilo版本中我們仍然使用v2.0 API的代碼提供v2.0 API的請求 我們希望v2.1將能夠同時為v2.0和v2.1的請求提供服務。

  • liberty v2.0現在被凍結了 所有功能被添加在v2.1 API中使用microversions機制實現 kilo版本microversion 更新包括:
    • 擴展keypair API 支援x509驗證 能夠旱windows WinRM使用 這個功能式v2.1 API中第一個被以microversion添加的功能。
      • 在os-exrended-server-attributes暴露擴展屬性
  • python-novaclient 現在尚未支援 API v2.1
  • Nova v2.1 API策略執行得到優化
    • 只在API入執行策略
    • 對於單一的API 去掉了重複性規則
    • 所有的v2.1 API的策略'os_compute_api'作為前綴以區別於v2 API
    • 之前由於在db層面權限檢查的(hard-code)部份Nova API並不支持策略的配置總是需要admin用戶權限 部份 nova2.1 API中(hard-code)權限檢查被移除 使得API策略可配置 其餘的(hard-code)將在liberty版本被移除掉

升級支援

我們減少了使用DB遷移腳本執行數據遷移,現在這個部份使用一種叫作lazy的方式在DB代碼中完成。在Nova-manage命令中可以幫助強制進行數據遷移。更多信息:http://specs.openstack.org/openstack/nova-specs/specs/kilo/approved/flavor-from-sysmeta-to-blob.html

  • https://review.openstack.org/#/c/97946/ 增加了編號為267的數據庫遷移腳本,這個腳本主要掃描instances.uuid為空(null)的記錄並且一旦發現就會導致失敗,因為遷移中需要保證instances.uuid非空並且在那個字段加入了UniqueConstraint限制。為了避免數據庫遷移失敗,提供了一個幫助腳本用來搜索空(null)的instances.uuid的記錄。運行'nova-manage db sync'之前,運行幫助腳本'nova-manage db null_instance_uuid_scan',默認情況下,該腳本只會檢索記錄,並將結果輸出,不會改變任何內容。如果在參數中加入--delete,就會自動刪除所有instances.uuid為空的記錄。

Scheduler

  • A selection of performance optimisations
  • We are in the process of making structural changes to the scheduler that will help improve our ability to evolve and improve scheduling. This should not be visible from an end user perspective.

Cells v2

  • There are some initial parts of cell v2 supported added, but this feature is not yet ready to use.
  • new 'nova-manage api_db sync' and 'nova-manage api_db version' commands for working with the new api database for cells, but nothing is using this database yet so it is not necessary to set it up.

Compute Drivers

Hyper-V
Libvirt (KVM)
VMware
Ironic

已知問題

Evacuate恢復部份代碼在損壞數據的潛在危險。在nova-compute啟動過程中,虛擬化端回報instance的狀態,用於檢查實體主機發生故障過程中,虛擬機是否被移走了。如果此時發現的確發生遷移了,那麼本地的數據就會被徹底刪除。這樣就存在潛在的可能出現選擇錯誤,虛擬機被錯誤的銷毀。在libvirt節點上,這樣的情況可能會由於改變系統的主機名引發。在Vmware節點中,這個可能會由於嘗試兩個不同的主機名管理同一個vcenter引發這個bug可能會在Liberty中得到修復, 但是在當前佈署中,關閉這種行為的建議是設置destroy_after_evacuate=False。 注意 這個並不是回歸(regression)並且在evacuate的設計中已經提到這個瑕疵。這個並不容易修復,所以使用這種方式繞過去(workaround)解決這個遣在的數據損壞。在Liberty的修復紀錄: https://review.openstack.org/#/c/161444/。

  • The generate config examples possibly missing some oslo related configuration

升級提示

下面是你在升級中需要了解的內容。在可能的情況下,git提交的hash編碼會提供你找到更多更詳細的信息:

  • 如果你的Neutron端口(ports)是在Nova之外建立的,在你的服務器刪除後並不會刪除這些端口:1153a46738fc3ffff98a1df9d94b5a55fdd58777
  • EC2 API支持現在被廢棄了,可能要在kilo刪除掉:f098398a836e3671c49bb884b4a1a1988053f4b2
  • Websocket代理需要被和API節點一起升級,由於舊的API節點在鑑權控制台權限時不會發送access_url,新的代理服務(這個提交和以後的)處理類似請求時會鑑權失敗9621ccaf05900009d67cdadeb1aac27368114a61
  • 在全部升級到kilo後(例如,所有節點都運行kilo代碼),你需要在後台運行一個flavor信息更新的遷移,把舊名字改為新名字。 Kilo的conductor節點會根據需要進行處理,但是其餘的空閒數據需要在後台完成遷移。這個要在Liberty更新後全部完成,到時候舊的位置會被廢棄。使用"nova-manage migrate-flavor-data"完成遷移。
  • 由於Nova v2.1 API強制策略的優化。在v2.1 API策略上有一系列改變發生。因為v2.1 API之前一直沒有更新,所以這些改變無法向前兼容。所以最好使用策略的樣例配置取代之前的版本。
  • VMware拯救(rescue)虛擬機的行為不再生成一個新的虛擬機而是直接在當前鏡像上進行:cd1765459a24e52e1b933c8e05517fed75ac9d41
  • force_config_drive = always被廢棄了,需要使用force_config_drive = True替換:c12a78b35dc910fa97df888960ef2b9a64557254
  • 運行hyper-v,如果你已經部署的代碼晚於這個commit b4d57ab65836460d0d9cb8889ec2e6c3986c0a9b,但是早於這個commit c8e9f8e71de64273f10498c5ad959634bfe79975,那麼你可能存在問題,需要手動解決,查看這個commit c8e9f8e71de64273f10498c5ad959634bfe79975
  • 改變multi_instance_display_name_template的默認值:609b2df339785bff9e30a9d67d5c853562ae3344
  • 使用"nova-manage db null_instance_uuid_scan"確保DB遷移之前數據是乾淨的,c0ea53ce353684b48303fc59393930c3fa5ade58


OpenStack 映像檔服務 (Glance)

新功能

已知問題

當鏡像名稱長度大於255個字時 添加鏡像時會拋出Error500:https://bugs.launchpad.net/glance/+bug/1424038

升級提示

  • 移除廢棄的選項db_enforce_mysql_charset。相應的commit: efeb69f9033a57a1c806f71ee3ed9fd3f4d2475e
  • 現在支持metadef資源的通知,相應的commit: fd547e3717dc4a3a92c1cb2104c18608a4f4872a
  • VMware多datastore支持可以通過幾個選項進行配置,相應的commit: 96fb31d7459bd4e05e05205​​3177dce4d38cdaf90
  • 移除eventlet執行方法,並且增加一個新的Taskflow的執行方法,用於異步任務,相應的commits: ae3135e1d67df77697a24fddaee3efeadb34a0dd和a39debfd55f6872e5f4f955b75728c936d1cee4b
  • 在配置中使用endpoint配置替代snet配置,相應的commit: 41a9a065531ec946b4a9baf999f97d10fa493826
  • Digest算法現在可以配置,相應的commit: 82194e0c422966422f7a4e2157125c7ad8fbc5b5
  • 清理已經被刪除的鏡像,鏡像在'保存中'狀態時刪除。相應的commit: 0dc8fbb3479a53c5bba8475d14f4c7206904c5ea
  • Glance現在使用畢業的oslo.policy模塊。相應的commit: cb7d5a4795bbdaf4dc3eaaf0a6fb1add52c09011
  • 鏡像現在可以設置為未啟用狀態。一個新的'未啟用'狀態已經添加到鏡像數據中。相應的commit: b000c85b7fabbe944b4df3ab57ff73883328f40d


OpenStack Dashboard (Horizon)

新功能

  • 支援透過Web單點登入的統一驗證方式——在Keystone中做配置後,用戶就能選擇驗證機制來使用已佈署的功能。這些功能的使用能夠通過更改local_settings.py配置實現。 相關啟用設置和配置可以在這裡找到:here
  • 支援主題—— 包含了可以為Horizon自定義主題的簡單功能。允許使用Bootstrap的CSS值,Horizon定義的變量 以及自定義CSS。更多信息参见:here
  • Sahara Ux 改進 cluster和job創建引導頁的增加改進了Sahara的用戶體驗。
  • Launch Intance嚮導(beta) —— 用AngularJS實現了launch instance workflow的全面替代,用以解決現有的launch instance workflow的可用性問題。這項功能最近才引入並且缺乏測試,所以在Kilo版本中標記為beta並且默認是不啟用的。要使用新的workflow,需要對local_settings.py做如下更改:LAUNCH_INSTANCE_NG_ENABLED = True。另外,可以做如下更改來禁用默認的啟用instance嚮導:LAUNCH_INSTANCE_LEGACY_ENABLED = False。這項新功能體現了Horizo​​n未來的發展。
  • Nova
    • 允許Service在Hypervisor中 啟用/禁用
    • 從host遷移所有Instance
    • 曝露serial console
  • Cinder
    • 默認為Cinder v2
    • 支援已管理/未管理的volume 允許管理員管理已存在的volume不在被cinder管理 未管理的被cinder管理
    • 支援project間的volume轉移
    • 支援volume加密數據
  • Glance
    • 增加介面允許管理員察看/新增/修改 Glance數據定義
  • Heat
    • Stack Template界面
    • 操作資源控制板
    • Stacks的掛起/恢復操作
    • 預覽Stack界面允許用戶在定義模板中的stacks前可以先預覽。
  • Trove
    • 調整Trove實例-更改instance的flavor
  • Ceilometer
    • 調整來源於Ceilometer的IPMI測量數據

*Horizon中新的可重複使用的AngularJS widgets:

    • AngularJS表格實現
    • Table繪製-擴展的表格內容
    • 改進Client/server查找
    • 轉換表格widget
  • 為Horizon配置web root不僅僅限於'/'

已知問題

升級提示

目前支援Django1.7


OpenStack Identity (Keystone)

新功能

分層multitenancy

創建一個新的project時,可以設置屬性parent_id的值為一個已存在project,使 Projects嵌套在其他projects下。

Role現在可以分配給project分層子樹上的-role-to-user-on-projects-in-a-subtree usersinherit-ext.rst#assign-role-to-group-on-projects-in-a-subtree groups

這項功能還需要其他Openstack服務(例如hierarchical quotas)的相應支持使其廣泛的生效

Fernet tokens

區別於UUID tokens只能持久化存入數據庫,Fernet tokens完全不需要持久化。部署人員可以通過設置keystone.conf中的 [token] provider = keystone.token.providers.fernet.Provider來啟用Fernet token

Fernet tokens需要symmetric encryption keys,這些keys可以使用keystone-manage fernet_setup建立, 並且使用keystone-manage fernet_rotate週期性地輪換。這些keys必須被在一個multi-node(或者multi-region)部署中的所有Keyston nodes共享,這樣就能使一個node生成的tokens可以立即被其他節點驗證。

Identity federation

  • Keystone現在可以作為聯邦身份提供者(IdP: federated identity provider)為另外一個Keystone實例提供本地用戶的SAML斷言(​​SAML assertions),可能是ECP封裝(ECP-wrapped)。
  • 支持OpenID連接作為聯邦身份鑑權機制(federated identity authentication mechanism)。
  • 在Keystone中增加對多"Remote IDs"關聯到單一的鑑權提供者。這有助於有多身份提供者使用一個通用的映射。
  • 增加為已經擁有Idp用戶通過web瀏覽器鑑權的能力,實現單點登錄。
  • 聯邦令牌(federated tokens)現在使用token鑑權方法,mappedsaml2仍然有效。
  • 聯邦用戶(federated users)可以映射到本地已經存在的身份上。
  • 在規則集(rulesets)映射中定義的組可以用名字和域鑑權
  • 出現在聯邦身份斷言(federated identity assertions)中的組,可以被自動的映射為本地已經存在的組中,並且擁有本地用戶關係映射(通過白名單和黑名單過濾)

LDAP

  • 用戶指定的API過濾項現在由LDAP本身處理,現在由keystone取代
  • "試驗性"支持存儲指定域(domain-specific)鑑權後端HTTP API在SQL中配置。這個主要用戶場景是,當使用HTTP API創建一個新的域(domain),並且馬上配置一個指定域(domain-specific)的LDAP驅動,而不需要重啟keystone。

授權

  • "分配(assignment)"後端已經被分離到"資源(resource)"後端(包含domains, projects和roles),並且"分配(assignment)"的後端包含了授權的映射模型
  • 支持再次信任授權。當信任關係建立後,被信任人可以通過另外一個信任重新授權該信任的角色。
  • Keystone支持無範圍(unscoped)的token請求,即使用戶設置了default_project_id
  • 部署人員可以修改配置來限制已經有範圍的令牌重新獲取範圍(re-scoping),在keystone.conf設置[token] allow_rescope_scoped_token = false


升級提示

  • Keystone的XML支持將在Kilo版本刪除。當從Juno升級到Kilo,​​建議將XML和XmlBodyMiddleware相關的信息從Keystone Paste p配置刪除。這包含刪除XML中間層過濾器以及public_api, admin_api, api_v3, public_version_api, admin_version_api相關的和其他包含XML過濾器的流水線(pipelines)。
  • 所有之前的擴展(OS-FEDERATION, OS-OAUTH1, OS-ENDPOINT-POLICY and OS-EP-FILTER)現在被默認支持,並且在html 相關標記中,標記為"試驗"或者"穩定"。
  • 不在支持SQL結構的回退。這個變化主要是回退並沒有經過良好的測試,而且在很多遷移中需要支持數據變化,難度越來越大。
  • 需要以下Python庫:cryptography, msgpack-python, .python.org/pypi/pysaml2 pysaml2oauthlib
  • keystone.middleware.RequestBodySizeLimiter被廢棄,取而代之的是oslo_middleware.sizelimit.RequestBodySizeLimiter 並且在Liberty移除。
  • Eventlet相關的配置項,如:public_bind_host, bind_host, admin_bind_host, admin_port, public_port< /code>, <code>public_workers, admin_workers, tcp_keepalive, tcp_keepidle被從[DEFAULT]移除掉,移到了[eventlet_server]. 相似的,Eventlet相關的SSL配置選項如:enable, certfile, keyfile, ca_certs, cert_required已經從[ssl]配置項移動到[eventlet_server_ssl].
  • keystone.token.backends.sqlkeystone.token.persistence.backends.sql取代.
  • keystone.token.backends.kvskeystone.token.persistence.backends.kvs取代.
  • keystone.token.backends.memcachekeystone.token.persistence.backends.memcache取代.
  • keystone.assignment.backends.kvskeystone.assignment.backends.sql取代.
  • keystone.identity.backends.kvskeystone.identity.backends.sql取代.
  • keystone.contrib.stats.core.StatsMiddleware被外部工具取代.
  • keystone.catalog.backends.templated.TemplatedCatalogkeystone.catalog.backends.templated.Catalog取代.
  • keystone.contrib.access.core.AccessLogMiddleware被外部訪問日誌取代.
  • keystone.trust.backends.kvskeystone.trust.backends.sql取代.
  • [catalog] endpoint_substitution_whitelist已經從keystone.conf刪除,作為加強安全的一部分。
  • [signing] token_format被從keystone.conf刪除,取代的是[token] provider.

OpenStack Network Service (Neutron)

新功能

  • DVR現在除了VXLAN/GRE外還支持VLANs
  • ML2分層端口綁定(Port Binding)
  • 新的V2版本的LBaas(負載均衡即服務)API
  • 支持OVS ML2驅動的端口安全
  • 在Kilo版本中支持的新插件:
    • A10 Networks LBaaS V2 Driver
    • Brocade LBaaS V2 Driver
    • Brocade ML2 driver for MLX and ICX switches
    • Brocade L3 routing plugin for MLX switch
    • Brocade Vyatta vRouter L3 Plugin
    • Brocade Vyatta vRouter Firewall Driver
    • Brocade Vyatta vRouter VPN Driver
    • Cisco CSR VPNaaS Driver
    • Dragonflow SDN based Distributed Virtual Router L3 Plugin
    • Freescale FWaaS Driver
    • Intel Mcafee NGFW FWaaS Driver
    • IPSEC Strongswan VPNaaS Driver

已知問題

  • 在Kilo版本中,防火牆即服務仍然標記為試驗性功能
  • Bug 1438819
    • 當創建一個新的可訪問外部網絡的子網,所有與該網絡相關的、已經存在的具有網關的路由都會得到一個新的地址。對於IPv4網絡,這樣會為路由的網關消耗掉子網中的全部接口。

升級提示

從Havana版本開始,Neutron不再支持存放指定的租約(https://bugs.launchpad.net/bugs/1202392)。這部分剩餘的殘留代碼包含了一些不曾使用的環境變量。為了刪除掉這些殘餘代碼(https://review.openstack.org/#/c/152398/),需要修改dhcp.filter,所以這一行:

dnsmasq: EnvFilter, dnsmasq, root, NEUTRON_NETWORK_ID=

需要被替換為:

dnsmasq: CommandFilter, dnsmasq, root

在一些高級服務被劃分到獨立的包,並且有自己的配置文件後(特別是:etc/neutron/neutron_lbaas.conf, etc/neutron/neutron_fwaas.conf and etc/neutron/neutron_vpnaas.conf),當前活躍的服務在升級後,配置會產生變化(特別是,默認的負載均衡軟件(haxproxy)和vpn(oepnswn)在升級後會被開啟,儘管你之前可能在neutron.conf關閉了他們)。請務必在升級後檢查你的配置,保證你的新配置和你之前想要啟動的服務一致。

注意:如果在neutron.conf沒有加載相關插件,不會受到影響。


其他的注意信息(廢棄/終止等)

  • 廢棄
    • Brocade的VDX/VCS系列硬件的Monolithic插件将在L版本中废弃。原有插件提供的功能已经在ML2中实现。插件将在这个更新之后被删除。
    • Cisco的Nexus1000V Meta插件将在L版本中废弃。原有插件功能已经在ML2的Cisco Nexus1000V策略驱动实现。插件将在这个更新之后被删除。

OpenStack Block Storage (Cinder)

新功能

  • 從這一刻起,任何新的數據庫結構的更新將不需要Cinder服務立即重啟。服務本身和數據庫結構間沒有直接關聯。這是Cinder支持滾動更新(rolling upgrades)的第一部分!
  • 在已經存在的一致性組中添加或者刪除卷。 獲取更多信息.
  • 從一個已經存在的一致性組的景像中創建一個新的一致性組。 獲取更多信息.
  • 創建了更多已經優化的filters/weighers來設定scheduler如何選擇一個卷的後端。 獲取更多信息.
  • 加密卷現在可以使用Cinder備份服務進行備份。 獲取更多信息.
  • 允許創建私有捲類型。你可以讓卷類型只對特定的租戶可見,或者在更新到正式環境前進行測試。可以用過'cinder type-create <name> --is-public'設置。
  • Thin Provision(精簡配置)的超額認購是可以配置的。 Read docs for more info.
  • 可以為卷類型增加描述信息。使用'cinder type-create <name> <description>'命令創建。
  • Cinder現在可以返回多個iSCSI路徑信息,這樣連接方就能在主路徑(Primary Path)掛掉後,使用其他路徑(當連接方多路徑支持開啟 or 未開啟)。

升級提示

  • cinder.conf中的'host'配置選項被重命名為'backend_host',目的為了避免與redis配置中的'host'命名衝突。如果你使用了這個選項,請務必更新你的配置文件。


OpenStack Telemetry (Ceilometer)

新功能

  • 支持在polling循環中增加抖動,保證pollsters不要在同一時間查詢服務的API
  • 支持Ceilometer API RBAC(基於權限的訪問控制)
  • 優化的事件支持:
    • 多流水線(Multi-pipeline)支持開啟唯一的處理和發布的事件
    • 支持捕獲RAW消息格式,便於審計和事後分析
    • 在彈性搜索中支持持久化事件
    • 發布支持對數據庫、http、分揀、kafka和oslo.messaging支持的消息隊列
    • 增加一個選項,可以將消息的持久化數據存放在一個單獨的數據庫中
    • Ceilometer現在支持使用時間(events)採集和存儲所有事件類型的測量(meters)。一個新的選項,disable_non_metric_meters被加入到配置中,為了關閉將這些事件作為Samples存取的開關。更多信息請參閱Ceilometer配置指南
    • OpenStack手冊中的管理員指南增加了新的事件的選擇, 你能通過這篇文檔獲取更多信息。
  • 優化了流水線(pipeline)發布支持:
    • 支持將事件(events)和samples發佈到Kafka或者Http目標中
    • 將數據發送到多個隊列中
  • 更多的測量(meters)
    • Hyper-V的內存和磁盤測量(meters)
    • LibVir​​t的磁盤測量(meters)
    • IPMI相關的電源和熱量的測量(meters),更多的測量指標查看NodeManager
    • Ceph測量
  • 在Ceilometer中upd的發布和採集支持IPv6格式
  • Gnocchi支持ceilometer-collector分派
  • pollster自我關閉機制


升級提示

  • 失效的測量(meters):
    • instance:<flavor>測量在Kilo版本中廢棄。如果想獲取flavor的samples或者統計你能使用以下查詢:

   統計:    ceilometer statistics -m instance -g resource_metadata.instance_type

  samples:

   ceilometer sample-list -m instance -q metadata.instance_type=<value>


OpenStack Orchestration (Heat)

新功能

  • 使用嵌套stacks優化擴展性
    • Heat在任何資源的遠程調用(PRC)動作都是基於一個模板(template)。這樣對處理複雜stacks時有利於分擔負載。
  • oslo版本化對象
    • 數據庫層現在使用oslo版本化對象來幫助未來的升級。這樣允許一個新的升級的heat-engine使用一個舊的數據庫結構。注意這並不會幫助升級到kilo版本。
  • 新模板方法
    • 一個新的HOT模板,版本為"20150430",包含了兩個新的方法"digest"和"repeat"
  • 多區域stacks
  • 訪問Heat服務
    • 管理員現在能像其他項目一樣訪問服務狀態。使用"heat-manage service-list"和Horizo​​n。這個功能將匯報heat-engines的活躍狀態。
  • 優化Nova和Neutron資源(properties)的校驗。
  • 在特定資源時(stack鉤子),暫停stack的創建/更新
  • 新貢獻的資源
    • Mistral資源
    • gnocchi告警https://blueprints.launchpad.net/heat/+spec/ceilometer-gnocchi-alarm
    • Keystone資源支持v3版本,項目、角色、用戶和組
  • Stack生命週期調度提示
  • 軟件配置優化
    • 使用Swift TempURLs選項作為部署信號http://specs.openstack.org/openstack/heat-specs/specs/kilo/software-config-swift-signal.html
    • 使用heat命令創建和監控一個部署,在stack之外http://specs.openstack.org/openstack/heat-specs/specs/kilo/software-config-trigger.html

升級提示

  • "num_engine_workers"選項默認值從1變為CPU個數。現在這也是其他項目設置worker數量的方法。
  • "max_nested_stack_depth"默認值增加為5.
  • 新增的"convergence"默認為關閉。這個功能還沒有完成,應該保持關閉。
  • 為了準備即將到來的主要更新(convergence),有一些明顯的數據庫結構變化。建議在升級過程中關閉heat-engine。

其他的注意信息(廢棄/終止等)

廢棄

  • 下列資源被廢棄了OS::Heat::HARestarter和OS::Heat::CWLiteAlarm
  • CloudWatch API (heat-api-cw)


OpenStack Database service (Trove)

新功能

  • 支持一個新的複制策略,基於異步的GTID複製(MySQL 5.6新功能)
    • 當前一個API調用支持從一個單master節點創建n個副本
    • 使用新的'eject-master' API,我們也能支持從一個未響應的master節點,恢復到最近更新的slave節點上
  • Trove guest管理支持以下新的數據存儲:
    • Vertica, and Vertica Cluster
    • DB2
    • CouchDB
  • 擴展當前管理API層:
    • 新的管理API用來獲取列表或查看已經刪除的trove虛擬機
    • 新的管理API用來ping一個數據存儲的guest agent,基於RPC機制
  • Horizo​​n支持重置Trove實例(instances)的規格
  • 用戶現在可以編輯/更新Trove虛擬機(instances)的名字
  • 集成跨項目的OpenStack性能分析庫(OSProfiler)

升級提示

  • 我們從已經廢棄的oslo-incubator消息代碼遷移至官方的oslo.messaging模塊中。配置變更詳情請查看git.openstack.org/cgit/openstack/trove/tree/etc/trove/trove.conf.sample#n18,(更新)
  • 沒有經過任何CI測試過的數據存儲和策略被移入'測試'段中的各自模塊中​​。一旦這些數據存儲和策略在CI中通過測試和gate驗證,他們就會被標記為'穩定'。
  • 添加了新文檔幫助為不同的數據存儲創建鏡像http://docs.openstack.org/developer/trove/dev/building_guest_images.html


OpenStack Data Processing service (Sahara)

新功能

  • 新插件,功能和版本:
    • MAPR
    • Apache Storm
    • 添加了Apache Hadoop 2.6.0, Apache Hadoop 2.4.1被廢棄
    • 新的服務CDH插件加入HDFS, YARN, Spark, Oozie, HBase, Zookeeper和其他服務
  • 增加非直接的虛擬機(instances)訪問,以更好地利用floating ip
  • 增加事件日誌支持注入過程中的詳細信息
  • 每個插件可選擇的默認節點組和集群模板
  • Horizo​​n更新:
    • 嚮導式創建集群和任務調度
    • 查找對象時過濾
  • 實現了節點組模板編輯和集群模板
  • 為集群運行Oozie增加了Shell任務類型
  • 新的任務類型端點(endpoint),用於查詢已知的任務類型列表


升級提示

更多詳細信息:http://docs.openstack.org/developer/sahara/userdoc/upgrade.guide.html#juno-kilo

  • Sahara現在支持policy.json配置文件。


OpenStack Bare Metal service (Ironic)

新功能

State Machine

Ironic現在使用一個正式的模式管理每個節點的邏輯狀態。 Cite error: Closing </ref> missing for <ref> tag

  • 硬件的檢查(inspect),同時支持帶內(in-band)和帶外(out-of-band)兩種方式。這些方法可能會自動更新節點設置。 [1]

Version Headers

Ironic REST API在HTTP[S]請求的頭信息中增加了一個新的X-OpenStack-Ironic-API-Version。這個頭信息允許客戶端和服務端在協商時支持一個統一的接口。 [2]。如果頭信息缺失,REST服務會默認進入兼容模式,並且產生一個兼容Juno客戶端的響應。這種模式是被限制訪問Kilo提供的最新功能的。

硬體驅動更新

以下驅動被添加:


對於已經存在的驅動,有以下增強點:


支持第三方和未列出的驅動,通過以下兩點得到增強:

其他更新

已知問題

  • 運行一個以上的nova-compute沒有被正式的支持
    • 當然Ironic包含了ClusteredComputeManager,允許多餘一個以上的nova-compute進程,這個功能被視為實驗階段,並且已經存在了很多問題
  • 使用“agent”驅動的部署策略不支持"rebuild --preserve-ephemeral"

升級提示

  • IPMI的密碼使REST API請求混亂。可以通過API策略設定關閉。
  • 驅動的"agent"類現在支持全盤或者分區鏡像。
  • "pxe_deploy_kernel"和"pxe_deploy_ramdisk"的driver_info參數被廢棄,取而代之的是"deploy_kernel"和"deploy_ramdisk"。
  • 驅動自己實現的版本的方法vendor_passthru()被廢棄,取而代之的是使用裝飾器@passthru。

Juno升级到Kilo

升級文件請參考:

從Icehouse的"nova-baremetal"升級

An upgrade from an Icehouse Nova installation using the "baremetal" driver directly to Kilo Ironic is untested and unsupported. Instead, please follow the following upgrade path:

  1. Icehouse Nova "baremetal" -> Juno Nova "baremetal"
  2. Juno Nova "baremetal" -> Juno Ironic
  3. Juno Ironic -> Kilo Ironic

Documentation for steps 1 and 2 is available at: https://wiki.openstack.org/wiki/Ironic/NovaBaremetalIronicMigration


OpenStack Documentation

  • [1]硬件檢查
  • [2]REST API "micro"版本