Special page
Special page
Tools
Printable version
Special pages
Create account
Log in
Log in / create account with OpenID
English
Home
Software
User Stories
Community
Profile
Blog
Wiki
Documentation
Jump to:
navigation
,
search
Export translations
Settings
Group
Category:Programs
I18nTeam
Open
OpenStack Upstream Institute
OpenStack Upstream Training/Info
PRC Kilo Hackaton
ReleaseNotes/Juno
ReleaseNotes/Kilo
ReleaseNotes/Liberty
Sandbox
User:Smaffulli
Language
aa - Afar
ab - Abkhazian
ace - Achinese
ady - Adyghe
ady-cyrl - адыгабзэ
aeb - Tunisian Arabic
aeb-arab - تونسي
aeb-latn - Tûnsî
af - Afrikaans
ak - Akan
aln - Gheg Albanian
am - Amharic
an - Aragonese
ang - Old English
anp - Angika
ar - Arabic
arc - Aramaic
arn - Mapuche
arq - Algerian Arabic
ary - Moroccan Arabic
arz - Egyptian Arabic
as - Assamese
ase - American Sign Language
ast - Asturian
av - Avaric
avk - Kotava
awa - Awadhi
ay - Aymara
az - Azerbaijani
azb - تۆرکجه
ba - Bashkir
ban - Balinese
bar - Bavarian
bbc - Batak Toba
bbc-latn - Batak Toba
bcc - Southern Balochi
bcl - Bikol Central
be - Belarusian
be-tarask - Belarusian (Taraškievica orthography)
bg - Bulgarian
bgn - Western Balochi
bho - Bhojpuri
bi - Bislama
bjn - Banjar
bm - Bambara
bn - Bengali
bo - Tibetan
bpy - Bishnupriya
bqi - Bakhtiari
br - Breton
brh - Brahui
bs - Bosnian
bto - Iriga Bicolano
bug - Buginese
bxr - буряад
ca - Catalan
cbk-zam - Chavacano de Zamboanga
cdo - Min Dong Chinese
ce - Chechen
ceb - Cebuano
ch - Chamorro
cho - Choctaw
chr - Cherokee
chy - Cheyenne
ckb - Central Kurdish
co - Corsican
cps - Capiznon
cr - Cree
crh - Crimean Turkish
crh-cyrl - Crimean Turkish (Cyrillic script)
crh-latn - Crimean Turkish (Latin script)
cs - Czech
csb - Kashubian
cu - Church Slavic
cv - Chuvash
cy - Welsh
da - Danish
de - German
de-at - Austrian German
de-ch - Swiss High German
de-formal - German (formal address)
diq - Zazaki
dsb - Lower Sorbian
dtp - Central Dusun
dty - डोटेली
dv - Divehi
dz - Dzongkha
ee - Ewe
egl - Emilian
el - Greek
eml - Emiliano-Romagnolo
en - English
en-ca - Canadian English
en-gb - British English
eo - Esperanto
es - Spanish
et - Estonian
eu - Basque
ext - Extremaduran
fa - Persian
ff - Fulah
fi - Finnish
fit - Tornedalen Finnish
fj - Fijian
fo - Faroese
fr - French
frc - Cajun French
frp - Arpitan
frr - Northern Frisian
fur - Friulian
fy - Western Frisian
ga - Irish
gag - Gagauz
gan - Gan Chinese
gan-hans - Simplified Gan script
gan-hant - Traditional Gan script
gd - Scottish Gaelic
gl - Galician
glk - Gilaki
gn - Guarani
gom - Goan Konkani
gom-deva - Goan Konkani (Devanagari script)
gom-latn - Goan Konkani (Latin script)
got - Gothic
grc - Ancient Greek
gsw - Swiss German
gu - Gujarati
gv - Manx
ha - Hausa
hak - Hakka Chinese
haw - Hawaiian
he - Hebrew
hi - Hindi
hif - Fiji Hindi
hif-latn - Fiji Hindi (Latin script)
hil - Hiligaynon
ho - Hiri Motu
hr - Croatian
hrx - Hunsrik
hsb - Upper Sorbian
ht - Haitian Creole
hu - Hungarian
hy - Armenian
hz - Herero
ia - Interlingua
id - Indonesian
ie - Interlingue
ig - Igbo
ii - Sichuan Yi
ik - Inupiaq
ike-cans - Eastern Canadian (Aboriginal syllabics)
ike-latn - Eastern Canadian (Latin script)
ilo - Iloko
inh - Ingush
io - Ido
is - Icelandic
it - Italian
iu - Inuktitut
ja - Japanese
jam - Jamaican Creole English
jbo - Lojban
jut - Jutish
jv - Javanese
ka - Georgian
kaa - Kara-Kalpak
kab - Kabyle
kbd - Kabardian
kbd-cyrl - Адыгэбзэ
kg - Kongo
khw - Khowar
ki - Kikuyu
kiu - Kirmanjki
kj - Kuanyama
kk - Kazakh
kk-arab - Kazakh (Arabic script)
kk-cn - Kazakh (China)
kk-cyrl - Kazakh (Cyrillic script)
kk-kz - Kazakh (Kazakhstan)
kk-latn - Kazakh (Latin script)
kk-tr - Kazakh (Turkey)
kl - Kalaallisut
km - Khmer
kn - Kannada
ko - Korean
ko-kp - 한국어 (조선)
koi - Komi-Permyak
kr - Kanuri
krc - Karachay-Balkar
kri - Krio
krj - Kinaray-a
ks - Kashmiri
ks-arab - Kashmiri (Arabic script)
ks-deva - Kashmiri (Devanagari script)
ksh - Colognian
ku - Kurdish
ku-arab - كوردي (عەرەبی)
ku-latn - Kurdish (Latin script)
kv - Komi
kw - Cornish
ky - Kyrgyz
la - Latin
lad - Ladino
lb - Luxembourgish
lbe - лакку
lez - Lezghian
lfn - Lingua Franca Nova
lg - Ganda
li - Limburgish
lij - Ligurian
liv - Livonian
lki - Laki
lmo - Lombard
ln - Lingala
lo - Lao
loz - Lozi
lrc - Northern Luri
lt - Lithuanian
ltg - Latgalian
lus - Mizo
luz - Southern Luri
lv - Latvian
lzh - Literary Chinese
lzz - Laz
mai - Maithili
map-bms - Basa Banyumasan
mdf - Moksha
mg - Malagasy
mh - Marshallese
mhr - Eastern Mari
mi - Maori
min - Minangkabau
mk - Macedonian
ml - Malayalam
mn - Mongolian
mo - молдовеняскэ
mr - Marathi
mrj - Western Mari
ms - Malay
mt - Maltese
mus - Creek
mwl - Mirandese
my - Burmese
myv - Erzya
mzn - Mazanderani
na - Nauru
nah - Nāhuatl
nan - Min Nan Chinese
nap - Neapolitan
nb - Norwegian Bokmål
nds - Low German
nds-nl - Low Saxon
ne - Nepali
new - Newari
ng - Ndonga
niu - Niuean
nl - Dutch
nl-informal - Nederlands (informeel)
nn - Norwegian Nynorsk
nov - Novial
nrm - Nouormand
nso - Northern Sotho
nv - Navajo
ny - Nyanja
oc - Occitan
olo - Livvi-Karelian
om - Oromo
or - Oriya
os - Ossetic
pa - Punjabi
pag - Pangasinan
pam - Pampanga
pap - Papiamento
pcd - Picard
pdc - Pennsylvania German
pdt - Plautdietsch
pfl - Palatine German
pi - Pali
pih - Norfuk / Pitkern
pl - Polish
pms - Piedmontese
pnb - Western Punjabi
pnt - Pontic
prg - Prussian
ps - Pashto
pt - Portuguese
pt-br - Brazilian Portuguese
qu - Quechua
qug - Chimborazo Highland Quichua
rgn - Romagnol
rif - Riffian
rm - Romansh
rmy - Romani
rn - Rundi
ro - Romanian
roa-tara - tarandíne
ru - Russian
rue - Rusyn
rup - Aromanian
ruq - Megleno-Romanian
ruq-cyrl - Megleno-Romanian (Cyrillic script)
ruq-latn - Megleno-Romanian (Latin script)
rw - Kinyarwanda
sa - Sanskrit
sah - Sakha
sat - Santali
sc - Sardinian
scn - Sicilian
sco - Scots
sd - Sindhi
sdc - Sassarese Sardinian
sdh - Southern Kurdish
se - Northern Sami
sei - Seri
ses - Koyraboro Senni
sg - Sango
sgs - Samogitian
sh - Serbo-Croatian
shi - Tachelhit
shi-latn - Tašlḥiyt
shi-tfng - ⵜⴰⵛⵍⵃⵉⵜ
shn - Shan
si - Sinhala
sk - Slovak
sl - Slovenian
sli - Lower Silesian
sm - Samoan
sma - Southern Sami
sn - Shona
so - Somali
sq - Albanian
sr - Serbian
sr-ec - Serbian (Cyrillic script)
sr-el - Serbian (Latin script)
srn - Sranan Tongo
ss - Swati
st - Southern Sotho
stq - Saterland Frisian
su - Sundanese
sv - Swedish
sw - Swahili
szl - Silesian
ta - Tamil
tcy - Tulu
te - Telugu
tet - Tetum
tg - Tajik
tg-cyrl - Tajik (Cyrillic script)
tg-latn - Tajik (Latin script)
th - Thai
ti - Tigrinya
tk - Turkmen
tl - Tagalog
tly - Talysh
tn - Tswana
to - Tongan
tokipona - Toki Pona
tpi - Tok Pisin
tr - Turkish
tru - Turoyo
ts - Tsonga
tt - Tatar
tt-cyrl - Tatar (Cyrillic script)
tt-latn - Tatar (Latin script)
tum - Tumbuka
tw - Twi
ty - Tahitian
tyv - Tuvinian
tzm - Central Atlas Tamazight
udm - Udmurt
ug - Uyghur
ug-arab - Uyghur (Arabic script)
ug-latn - Uyghur (Latin script)
uk - Ukrainian
ur - Urdu
uz - Uzbek
uz-cyrl - ўзбекча
uz-latn - oʻzbekcha
ve - Venda
vec - Venetian
vep - Veps
vi - Vietnamese
vls - West Flemish
vmf - Main-Franconian
vo - Volapük
vot - Votic
vro - Võro
wa - Walloon
war - Waray
wo - Wolof
wuu - Wu Chinese
xal - Kalmyk
xh - Xhosa
xmf - Mingrelian
yi - Yiddish
yo - Yoruba
yue - Cantonese
za - Zhuang
zea - Zeelandic
zh - Chinese
zh-cn - Chinese (China)
zh-hans - Simplified Chinese
zh-hant - Traditional Chinese
zh-hk - Chinese (Hong Kong)
zh-mo - 中文(澳門)
zh-my - 中文(马来西亚)
zh-sg - Chinese (Singapore)
zh-tw - Chinese (Taiwan)
zu - Zulu
info - Message documentation
Format
Export for off-line translation
Export in native format
{{DISPLAYTITLE:Kilo更新日志}}<languages /> [[Category:Kilo|Release Note]] [[Category:Release Note|Kilo]] = OpenStack 2015.1.0 (Kilo)更新日志 = {| style="color:#000000; border:solid 3px #A8A8A8; padding:2em; margin:2em 0; background-color:#FFFFFF; vertical-align:middle;" | style="padding:1em" | 以此OpenStack Kilo版本的更新日志告慰Chris Yeoh在天之灵,虽然你已远离你的家人和我们,但你的心永远与我们同在。 |} <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> __TOC__ </div> == OpenStack对象存储(Swift) == === 新功能 === ==== 纠删码(beta) ==== Swift现在支持纠删码(EC)存储策略类型。这样部署人员、以极少的RAW容量达到极高的可用性,如同在副本存储中一样。然而,EC需要更多的CPU和网络资源,所以并不适合所有应用场景。EC非常适合在一个独立的区域内极少访问的、大容量数据。 Swift纠删码的实现对于用户是透明的。对于副本存储和纠删码存储的类型,在API上没有任何区别。 为了支持纠删码,Swift现在需要依赖PyECLib和liberasurecode。liberasurecode是一个可插件式的库,允许在你选择的库中实现EC算法。 更详细文档请参阅 http://swift.openstack.org/overview_erasure_code.html ==== 复合型令牌(Composite tokens) ==== 复合型令牌允许其他OpenStack服务以客户端名义将数据存储于Swift中,所以无论是客户端还是服务在更新数据时,都不需要双方彼此的授权。 一个典型的例子就是一个用户请求Nova存放一个VM的快照。Nova将请求传递给Glance,Glance将镜像写入Swift容器中的一组对象中。在这种场景下,用户没有来自服务的合法令牌时,无法直接修改快照数据。同样,服务自身也无法在没有用户合法令牌的情况下更新数据。但是数据的确存在于用户的Swift账户中,这样使得账户管理更简单。 更详细的文档请参阅http://swift.openstack.org/overview_backing_store.html ==== 更小规模、不平衡集群的数据位置更新 ==== Swift数据的存放位置现在根据硬件权重决定。当前,允许运维人员逐渐的添加新的区域(zones)和地域(regions),而不需要立即触发大规模数据迁移。同时,如果一个集群是非平衡的(例如,在一个区域(zones)的集群中,其中一个的容量是另外一的两倍),Swift会更有效的使用现有空间并且当副本在集群空间不足时发出警告。 ==== 全局性集群复制优化 ==== 区域(regions)之间复制时,每次复制只迁移一个副本。这样远程的区域(region)可以在内部复制,避免更多的数据在广域网(WAN)拷贝。 === 已知问题 === * 作为beta更新,纠删码(EC)的功能接近完成,但是对于某些功能仍然不完整(像多范围(multi-range)读取),并且没有一个完整的性能测算。这个功能为了持久性依赖于ssync。部署人员督促我们做更大规模的测试,并且不要在生产环境部署中使用纠删码存储策略。 === 升级提示 === 像往常一样,你能在不影响最终用户体验的前提下,升级到这个版本的Swift。 * 为了支持纠删码,Swift需要一个新的依赖PyECLib(和liberasurecode等)。并且eventlet的最低版本要求也升高了。 == OpenStack 计算服务(Nova) == === 新功能 === ==== API v2.1 ==== * 我们有了下一代Nova API的第一个更新版本v2.1。v2.1版本的目的是向回兼容v2.0版本,并且拥有增强的API校验。API所有更新是通过发布微版本(microversion)发现的。更多信息请参阅: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中第一个被以微版本(microversions)添加的功能。 ** 在os-extended-server-attributes暴露扩展属性 * python-novaclient现在还不支持v2.1 API * Nova v2.1 API的策略执行得到优化。 ** 只在API入口执行策略 ** 对于单一的API,去掉了重复性规则 ** 所有的v2.1 API的策略规则使用'os_compute_api'作为前缀,以区别于v2 API。 ** 之前,由于在db层面权限检查的硬编码(hard-code),部分Nova API并不支持策略的配置。总是需要admin用户权限。部分在Nova v2.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) ==== * 一系列的性能优化 * 我们在优化scheudler的代码结构,这将帮助我们能够演进和优化调度过程。这一点对于终端用户不可见。 ==== Cells v2 ==== * 已经开始添加了对cell v2版本的支持,但是还没达到能够使用的程度。 * 新的'nova-manage api_db sync' 和 'nova-manage api_db version'命令用于支持cell新的api数据库结构,但是还没有任何代码使用该数据库,所有没有必要建立。 ==== 计算资源驱动 ==== ====Hyper-V==== * 支持生成两个虚拟机:https://blueprints.launchpad.net/nova/+spec/hyper-v-generation-2-vms * 支持SMB为基础的卷,和已经存在的ISCSI卷:http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/hyper-v-smbfs-volume-support.html * 支持x509证书的keyparis:http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/keypair-x509-certificates.html * 主机电源操作已经在Hyper-V中可用了:https://blueprints.launchpad.net/nova/+spec/hyper-v-host-power-actions ===== Libvirt (KVM) ===== * NFV相关功能: ** 以NUMA为基础的调度 : http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/input-output-based-numa-scheduling.html ** 虚拟机使用固定的物理CPU: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/virt-driver-cpu-pinning.html ** 超大页(Large Page)支持: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/virt-driver-large-pages.html * vhostuser VIF驱动: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/libvirt_vif_vhostuser.html * 支持在IBM System z运行KVM: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/libvirt-kvm-systemz.html * 支持parallels云服务: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/pcs-support.html * 支持SMB卷: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/libvirt-smbfs-volume-support.html * 使用QEMU agent静默(Quiesce)文件系统(例如:做快照之前): http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/quiesced-image-snapshots-with-qemu-guest-agent.html * Quobyte卷支持: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/quobyte-nova-driver.html * 支持QEMU iSCSI initiator: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/qemu-built-in-iscsi-initiator.html ===== VMware ===== * 支持Ephemeral磁盘: http://specs.openstack.org/openstack/nova-specs/specs/kilo/approved/vmware-ephemeral-disk-support.html * 支持vSAN: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/vmware-vsan-support.html * 支持OVA镜像: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/vmware-driver-ova-support.html * 支持SPBM存储策略: http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/vmware-spbm-support.html ===== Ironic ===== * 对于ironic支持传递flavor扩展属性:http://specs.openstack.org/openstack/nova-specs/specs/kilo/implemented/pass-flavor-capabilities-to-ironic-virt-driver.html === 已知问题 === * Evacuate恢复部分代码存在损坏数据的潜在危险。在nova-compute启动过程中,虚拟化端会汇报instance的状态,用于检查物理机发生故障过程中,虚拟机是否被移走了(i.e. 被evacuated)。如果此时发现的确发生迁移了,那么本地的数据就会被彻底删除。这样就存在潜在的可能出现选择错误,虚拟机被错误的销毁。在libvirt节点上,这样的情况可能会由于改变系统的主机名引发。在vmware节点中,这个可能会由于尝试从两个不同的主机(不同的主机名)管理同一个vcenter引发。这个Bug可能会在Liberty中得到修复,但是在当前部署中,关闭这种行为的建议是设置destroy_after_evacuate=False。 注意:这个并不是回归(regression)并且在evacuate的设计中已经提到这个瑕疵。这个并不容易修复,所以使用这种方式绕过去(workaround)解决这个潜在的数据损坏。在liberty的修复记录:https://review.openstack.org/#/c/161444/。 * 生成的配置文件样例可能会缺少某些oslo相关的配置 === 升级提示 === 下面是你在升级中需要了解的内容。在可能的情况下,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) == === 新功能 === * 使用已经毕业的oslo.policy项目。账户配置信息更新,升级在etc/config下的配置文件。http://specs.openstack.org/openstack/glance-specs/specs/kilo/pass-targets-to-policy-enforcer.html * 可以使一个镜像变为非激活状态。增加了两个新的API调用可能会需要改变策略配置。http://specs.openstack.org/openstack/glance-specs/specs/kilo/deactivate-image.html * 在镜像导入过程中,支持基本的镜像格式转换。 http://specs.openstack.org/openstack/glance-specs/specs/kilo/conversion-of-images.html * Glance排序增强。v2版本的镜像API支持新的排序语法,排序时可以指定排序字段和方向:http://specs.openstack.org/openstack/glance-specs/specs/kilo/sorting-enhancements.html * 通知支持metadefs:http://specs.openstack.org/openstack/glance-specs/specs/kilo/metadefs-notifications.html * VMware存储驱动支持多datastore:http://specs.openstack.org/openstack/glance-specs/specs/kilo/vmware-store-multiple-datastores.html * 在镜像导入过程中获取镜像信息:http://specs.openstack.org/openstack/glance-specs/specs/kilo/introspection-of-images.html * 在Metadefs中支持多个值的操作。http://specs.openstack.org/openstack/glance-specs/specs/kilo/metadata-multivalue-operators-support.html * 增加新的taskflow执行方法(executor)并且移除了旧的eventlet执行方法。http://specs.openstack.org/openstack/glance-specs/specs/kilo/taskflow-integration.html * Digest算法现在是可以配置的。SHA-1现在不适合作为通用的数字签名应用,从安全角度考虑,对于每个FIPS需要112字节,我们提供了一个配置可以在这些标准中进行选择。 * Metadef标签支持。http://specs.openstack.org/openstack/glance-specs/specs/kilo/metadefs-tags.html * 允许API返回空值。Glance的v2版本API现在也返回为空值的字段。 * 目录索引服务实验性API。http://specs.openstack.org/openstack/glance-specs/specs/kilo/catalog-index-service.html * 存储驱动更细粒度的支持。 http://specs.openstack.org/openstack/glance-specs/specs/kilo/store-capabilities.html * 数据存储使用语义版本(Semver, Semantic Versioning)工具。http://specs.openstack.org/openstack/glance-specs/specs/kilo/semver-support.html * 重新加载配置文件时使用SIGHUP信号。配置重新加载零down机。http://specs.openstack.org/openstack/glance-specs/specs/kilo/sighup-conf-reload.html * 软件Metadata定义。http://specs.openstack.org/openstack/glance-specs/specs/kilo/software-metadefs.html * Glance Swift存储使用多个容器(Containers)存储镜像。http://specs.openstack.org/openstack/glance-specs/specs/kilo/swift-store-multiple-containers.html === 已知问题 === * 当镜像名称大于255个字符时,添加镜像时抛出500错误:https://bugs.launchpad.net/glance/+bug/1424038 * Glance v2版本API与v1版本更换镜像所有者的API不兼容:https://bugs.launchpad.net/glance/+bug/1420008 * Glance的scrubber在操作者使用信任模式鉴权下不工作:https://bugs.launchpad.net/glance/+bug/1439666 === 升级提示 === * 移除废弃的选项db_enforce_mysql_charset。 相应的commit: efeb69f9033a57a1c806f71ee3ed9fd3f4d2475e * 现在支持metadef资源的通知,相应的commit: fd547e3717dc4a3a92c1cb2104c18608a4f4872a * VMware多datastore支持可以通过几个选项进行配置,相应的commit: 96fb31d7459bd4e05e052053177dce4d38cdaf90 * 移除eventlet执行方法,并且增加一个新的Taskflow的执行方法,用于异步任务,相应的commits: ae3135e1d67df77697a24fddaee3efeadb34a0dd和 a39debfd55f6872e5f4f955b75728c936d1cee4b * 在配置中使用endpoint配置替代snet配置,相应的commit: 41a9a065531ec946b4a9baf999f97d10fa493826 * Digest算法现在可以配置,相应的commit: 82194e0c422966422f7a4e2157125c7ad8fbc5b5 * 清理已经被删除的镜像,镜像在'保存中'状态时删除。相应的commit: 0dc8fbb3479a53c5bba8475d14f4c7206904c5ea * Glance现在使用毕业的oslo.policy模块。相应的commit: cb7d5a4795bbdaf4dc3eaaf0a6fb1add52c09011 * 镜像现在可以设置为非激活状态。一个新的'非激活'状态已经添加到镜像数据中。相应的commit: b000c85b7fabbe944b4df3ab57ff73883328f40d == OpenStack面板(Horizon) == === 新功能 === * 支持通过Web单点登陆的统一认证方式——在keystone中做配置后,用户就能选择认证机制来使用已部署的功能。这些功能的使用能够通过更改local_settings.py配置实现。相关启用设置和配置可以在这里找到:[http://docs.openstack.org/developer/horizon/topics/settings.html#websso-enabled here]。 * 支持主题 —— 包含了可以为Horizon指定自定义主题的简单功能。允许使用Bootstrap的CSS值,Horizon定义的变量,以及自定义CSS。更多信息参见:[http://docs.openstack.org/developer/horizon/topics/settings.html#custom-theme-path here]。 * Sahara UX 改进 —— 集cluster创建和job创建引导页的增加极大改进了Sahara用户体验。 * Launch Intance向导(beta) —— 用AngularJS实现了launch instance workflow的全面替代,用以解决现有的launch instance workflow的可用性问题。这项功能最近才引入并且缺乏测试,所以在Kilo版本中标记为beta并且默认是不启用的。要使用新的workflow,需要对local_settings.py做如下更改:<code>LAUNCH_INSTANCE_NG_ENABLED = True</code>。另外,可以做如下更改来禁用默认的启用instance向导:<code>LAUNCH_INSTANCE_LEGACY_ENABLED = False</code>。这项新功能体现了Horizon未来的发展。 * 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不仅仅限于“/” === 已知问题 === * 从快照创建的Volumes是空的-https://bugs.launchpad.net/horizon/+bug/1447288 * 还没有完全支持Django 1.8 === 升级提示 === * 目前支持Django 1.7 == OpenStack鉴权服务(Keystone) == === 新功能 === ==== 分层multitenancy ==== [http://specs.openstack.org/openstack/keystone-specs/api/v3/identity-api-v3.html#create-project 创建一个新的project]时,可以设置属性<code>parent_id</code>的值为一个已存在project,使 [http://specs.openstack.org/openstack/keystone-specs/api/v3/identity-api-v3.html#projects-v3-projects Projects]嵌套在其他projects下。 Role现在可以分配给project分层子树上的 [https://github.com/openstack/keystone-specs/blob/master/api/v3/identity-api-v3-os-inherit-ext.rst#assign-role-to-user-on-projects-in-a-subtree users]和[https://github.com/openstack/keystone-specs/blob/master/api/v3/identity-api-v3-os-inherit-ext.rst#assign-role-to-group-on-projects-in-a-subtree groups] 这项功能还需要其他Openstack服务(例如hierarchical quotas)的相应支持使其广泛的生效 ==== Fernet tokens ==== 区别于UUID tokens只能持久化存入数据库,Fernet tokens完全不需要持久化。部署人员可以通过设置<code>keystone.conf</code>中的<code> [token] provider = keystone.token.providers.fernet.Provider</code>来启用Fernet token Fernet tokens需要symmetric encryption keys,这些keys可以使用<code>keystone-manage fernet_setup</code>建立, 并且使用<code>keystone-manage fernet_rotate</code>周期性地轮换。这些keys必须被在一个multi-node(或者multi-region)部署中的所有Keyston nodes共享,这样就能使一个node生成的tokens可以立即被其他节点验证。 ==== Identity federation ==== * Keystone现在可以作为[http://docs.openstack.org/developer/keystone/configure_federation.html#keystone-as-an-identity-provider-idp 联邦身份提供者(IdP: federated identity provider)]为另外一个Keystone实例提供本地用户的SAML断言(SAML assertions),可能是ECP封装(ECP-wrapped)。 * 支持[http://docs.openstack.org/developer/keystone/extensions/openidc.html OpenID连接]作为联邦身份鉴权机制(federated identity authentication mechanism)。 * 在Keystone中增加对多"Remote IDs"关联到单一的鉴权提供者。这有助于有多身份提供者使用一个通用的映射。 * 增加为已经拥有Idp用户通过web浏览器鉴权的能力,实现单点登录。 * 联邦令牌(federated tokens)现在使用<code>token</code>鉴权方法,<code>mapped</code>和<code>saml2</code>仍然有效。 * 联邦用户(federated users)可以映射到本地已经存在的身份上。 * 在规则集(rulesets)映射中定义的组可以用名字和域鉴权 * 出现在联邦身份断言(federated identity assertions)中的组,可以被自动的映射为本地已经存在的组中,并且拥有本地用户关系映射(通过白名单和黑名单过滤) ==== LDAP ==== * 用户指定的API过滤项现在由LDAP本身处理,现在由keystone取代 * "试验性"支持存储指定域(domain-specific)鉴权后端HTTP API[http://docs.openstack.org/developer/keystone/configuration.html#domain-specific-drivers 在SQL中配置]。这个主要用户场景是,当使用HTTP API创建一个新的域(domain),并且马上配置一个指定域(domain-specific)的LDAP驱动,而不需要重启keystone。 ==== 鉴权 ==== * "分配(assignment)"后端已经被分离到"资源(resource)"后端(包含domains, projects和roles),并且"分配(assignment)"的后端包含了授权的映射模型 * 支持再次信任授权。当信任关系建立后,被信任人可以通过另外一个信任重新授权该信任的角色。 * Keystone支持无范围(unscoped)的token请求,即使用户设置了<code>default_project_id</code>。 * 部署人员可以修改配置来限制已经有范围的令牌重新获取范围(re-scoping),在<code>keystone.conf</code>设置<code>[token] allow_rescope_scoped_token = false</code> 。 === 升级提示 === * Keystone的XML支持将在Kilo版本删除。当从Juno升级到Kilo,建议将XML和XmlBodyMiddleware相关的信息从[https://github.com/openstack/keystone/blob/master/etc/keystone-paste.ini 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)现在被默认支持,并且在[http://docs.openstack.org/developer/keystone/extensions.html 相关标记]中,标记为"试验"或者"稳定"。 * [http://specs.openstack.org/openstack/openstack-specs/specs/no-downward-sql-migration.html 不在支持SQL结构的回退]。这个变化主要是回退并没有经过良好的测试,而且在很多迁移中需要支持数据变化,难度越来越大。 * 需要以下Python库:[https://pypi.python.org/pypi/cryptography cryptography], [https://pypi.python.org/pypi/msgpack-python msgpack-python], [https://pypi.python.org/pypi/pysaml2 pysaml2] 和 [https://pypi.python.org/pypi/oauthlib oauthlib]。 * <code>keystone.middleware.RequestBodySizeLimiter</code>被废弃,取而代之的是 <code>oslo_middleware.sizelimit.RequestBodySizeLimiter</code> 并且在Liberty移除。 * Eventlet相关的配置项,如:<code>public_bind_host</code>, <code>bind_host</code>, <code>admin_bind_host</code>, <code>admin_port</code>, <code>public_port</code>, <code>public_workers</code>, <code>admin_workers</code>, <code>tcp_keepalive</code>, <code>tcp_keepidle</code>被从<code>[DEFAULT]</code>移除掉,移到了<code>[eventlet_server]</code>. 相似的,Eventlet相关的SSL配置选项如:<code>enable</code>, <code>certfile</code>, <code>keyfile</code>, <code>ca_certs</code>, <code>cert_required</code>已经从<code>[ssl]</code>配置项移动到<code>[eventlet_server_ssl]</code>. * <code>keystone.token.backends.sql</code>被 <code>keystone.token.persistence.backends.sql</code>取代. * <code>keystone.token.backends.kvs</code>被 <code>keystone.token.persistence.backends.kvs</code>取代. * <code>keystone.token.backends.memcache</code>被 <code>keystone.token.persistence.backends.memcache</code>取代. * <code>keystone.assignment.backends.kvs</code>被<code>keystone.assignment.backends.sql</code>取代. * <code>keystone.identity.backends.kvs</code>被<code>keystone.identity.backends.sql</code>取代. * <code>keystone.contrib.stats.core.StatsMiddleware</code>被外部工具取代. * <code>keystone.catalog.backends.templated.TemplatedCatalog</code>被<code>keystone.catalog.backends.templated.Catalog</code>取代. * <code>keystone.contrib.access.core.AccessLogMiddleware</code>被外部访问日志取代. * <code>keystone.trust.backends.kvs</code>被<code>keystone.trust.backends.sql</code>取代. * <code>[catalog] endpoint_substitution_whitelist</code>已经从<code>keystone.conf</code>删除,作为加强安全的一部分。 * <code>[signing] token_format</code>被从<code>keystone.conf</code>删除,取代的是<code>[token] provider</code>. == OpenStack网络服务(Neutron) == === 新功能 === * [http://specs.openstack.org/openstack/neutron-specs/specs/kilo/subnet-allocation.html Subnet allocation] feature allows creating subnets from a pre-defined pool of addresses instead of providing explicit addresses. ** Support in python-neutron-client (subnetpool-create/update/list/show/delete and subnet-create --subnetpool). ** API documentation work is underway. ** Horizon support is tracked with [https://blueprints.launchpad.net/horizon/+spec/neutron-subnet-allocation neutron-subnet-allocation] blueprint. * DVR now supports VLANs in addition to VXLAN/GRE * ML2 Hierarchical Port Binding * New LBaaS Version 2 API * Portsecurity support for the OVS ML2 Driver * Multiple Prefixes for IPv6 (tenant guest interfaces can now get multiple IPv6 addresses) * IPv6 Router (allows guests to get global IPv6 addresses and talk to the world, without NAT) * API extension for MTU Selection and Advertisement * API extension to check for support of VLAN trunking networks for NFV * 在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 [https://bugs.launchpad.net/neutron/+bug/1438819 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没有加载相关插件,不会受到影响。 * 默认的api workers的数量变为物理主机CPU的个数。如果你当前用的是默认值,需要保证为你的api worker设置一个合理的数量。(https://review.openstack.org/#/c/140493/) * neutron. allow_duplicate_networks配置项在Kilo版本废弃并且将从Liberty移除,默认的行为是允许同一虚拟机可以绑定在同一子网的多个接口。(https://review.openstack.org/163581) * linuxbridge agent现在默认支持VXLAN(https://review.openstack.org/160826) * neutron-ns-metadata-proxy可以使用非root用户执行(https://review.openstack.org/147437) === 其他的注意信息(废弃/终止等) === * 废弃 ** Brocade的VDX/VCS系列硬件的Monolithic插件将在L版本中废弃。原有插件提供的功能已经在ML2中实现。插件将在这个更新之后被删除。 ** Cisco的Nexus1000V Meta插件将在L版本中废弃。原有插件功能已经在ML2的Cisco Nexus1000V策略驱动实现。插件将在这个更新之后被删除。 == OpenStack块存储(Cinder) == === 新功能 === * From this point forward any new database schema upgrades will not require restarting Cinder services right away. The services are now independent of schema upgrades. This is part one to Cinder supporting rolling upgrades! * Ability to add/remove volumes from an existing consistency group. [http://docs.openstack.org/admin-guide-cloud/content/consistency-groups.html Read docs for more info]. * Ability to create a consistency group from an existing consistency group snapshot. [http://docs.openstack.org/admin-guide-cloud/content/consistency-groups.html Read docs for more info]. * Create more fine tuned filters/weighers to set how the scheduler will choose a volume backend. [http://docs.openstack.org/admin-guide-cloud/content/driver_filter_weighing.html Read the docs for more info]. * Encrypted volumes can now be backed up using the Cinder backup service. [http://docs.openstack.org/admin-guide-cloud/content/volume-backup-restore.html Read the docs for more info]. * Ability to create private volume types. This is perfect when you want to make volume types available to only a specific tenant or to test it before making available to your cloud. To do so use the ''cinder type-create <name> --is-public''. * Oversubscription with thin provision is configurable. [http://docs.openstack.org/admin-guide-cloud/content/over_subscription.html Read docs for more info]. * Ability to add descriptions to volume types. To do so use ''cinder type-create <name> <description> * Cinder now can return multiple iSCSI paths information so that the connector can attach volumes even when the primary path is down ([https://review.openstack.org/#/c/134681/ when connector's multipath feature is enabled] or [https://review.openstack.org/#/c/140877/ not enabled]). * Add ability to specify a local lvm.conf file. When using the LVM driver this option allows you to set a Cinder specific lvm.conf file in /etc/cinder/lvm.conf. This enables specific LVM settings and filters that are only picked up and used by Cinder. * The Cinder backup service can now backup to an NFS exported filesystem. [http://docs.openstack.org/admin-guide-cloud/content/volume-backup-restore.html Read the docs for more info]. === 升级提示 === * cinder.conf中的'host'配置选项被重命名为'backend_host',目的为了避免与redis配置中的'host'命名冲突。如果你使用了这个选项,请务必更新你的配置文件。 == OpenStack遥测服务(Ceilometer) == === 新功能 === * 支持在polling循环中增加抖动,保证pollsters不要在同一时间查询服务的API * 支持Ceilometer API RBAC(基于权限的访问控制) * 优化的事件支持: ** 多流水线(Multi-pipeline)支持开启唯一的处理和发布的事件 ** 支持捕获RAW消息格式,便于审计和事后分析 ** 在弹性搜索中支持持久化事件 ** 发布支持对数据库、http、分拣、kafka和oslo.messaging支持的消息队列 ** 增加一个选项,可以将消息的持久化数据存放在一个单独的数据库中 ** Ceilometer现在支持使用时间(events)采集和存储所有事件类型的测量(meters)。一个新的选项,''disable_non_metric_meters''被加入到配置中,为了关闭将这些事件作为Samples存取的开关。更多信息请参阅[http://docs.openstack.org/trunk/config-reference/content/ch_configuring-openstack-telemetry.html Ceilometer配置指南] ** OpenStack手册中的管理员指南增加了新的[http://docs.openstack.org/admin-guide-cloud/content/section_telemetry-events.html 事件的选择], 你能通过这篇文档获取更多信息。 * 优化了流水线(pipeline)发布支持: ** 支持将事件(events)和samples发布到Kafka或者Http目标中 ** 将数据发送到多个队列中 * 更多的测量(meters) ** Hyper-V的内存和磁盘测量(meters) ** LibVirt的磁盘测量(meters) ** IPMI相关的电源和热量的测量(meters),更多的测量指标查看NodeManager ** Ceph测量 * 在Ceilometer中upd的发布和采集支持IPv6格式 * [http://launchpad.net/gnocchi 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> * 用于Swift测量的中间件之前被打包到Ceilometer中,现在被废弃了。现在被分拆到独立的库:ceilometermiddleware ** Juno配置: http://docs.openstack.org/juno/install-guide/install/apt/content/ceilometer-swift.html ** Kilo配置: http://docs.openstack.org/kilo/install-guide/install/apt/content/ceilometer-swift.html == OpenStack编排服务(Heat) == === 新功能 === * 使用嵌套stacks优化扩展性 ** Heat在任何资源的远程调用(PRC)动作都是基于一个模板(template)。这样对处理复杂stacks时有利于分担负载。 * oslo版本化对象 ** 数据库层现在使用oslo版本化对象来帮助未来的升级。这样允许一个新的升级的heat-engine使用一个旧的数据库结构。注意这并不会帮助升级到kilo版本。 * 新模板方法 ** 一个新的HOT模板,版本为"20150430",包含了两个新的方法"digest"和"repeat" * 多区域stacks ** http://docs.openstack.org/hot-reference/content/OS__Heat__Stack.html * 访问Heat服务 ** 管理员现在能像其他项目一样访问服务状态。使用"heat-manage service-list"和Horizon。这个功能将汇报heat-engines的活跃状态。 * 优化Nova和Neutron资源(properties)的校验。 * 在特定资源时(stack钩子),暂停stack的创建/更新 ** http://specs.openstack.org/openstack/heat-specs/specs/juno/stack-breakpoint.html ** http://docs.openstack.org/developer/heat/template_guide/environment.html?highlight=hooks#pause-stack-creation-update-on-a-given-resource * 新贡献的资源 ** 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数据库服务(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机制 * Horizon支持重置Trove实例(instances)的规格 * 用户现在可以编辑/更新Trove虚拟机(instances)的名字 * 集成跨项目的OpenStack性能分析库(OSProfiler) === 升级提示 === * 我们从已经废弃的oslo-incubator消息代码迁移至官方的oslo.messaging模块中。配置变更详情请查看git.openstack.org/cgit/openstack/trove/tree/etc/trove/trove.conf.sample#n18,([https://review.openstack.org/#/c/94484/ 更新]) * 没有经过任何CI测试过的数据存储和策略被移入'测试'段中的各自模块中。一旦这些数据存储和策略在CI中通过测试和gate验证,他们就会被标记为'稳定'。 * 添加了新文档帮助为不同的数据存储创建镜像 http://docs.openstack.org/developer/trove/dev/building_guest_images.html == OpenStack数据处理服务(Sahara) == === 新功能 === * 新插件,功能和版本: ** MAPR ** Apache Storm ** 添加了Apache Hadoop 2.6.0, Apache Hadoop 2.4.1被废弃 ** 新的服务CDH插件加入HDFS, YARN, Spark, Oozie, HBase, Zookeeper和其他服务 * 增加非直接的虚拟机(instances)访问,以更好地利用floating ip * 增加事件日志支持注入过程中的详细信息 * 每个插件可选择的默认节点组和集群模板 * Horizon更新: ** 向导式创建集群和任务调度 ** 查找对象时过滤 * 实现了节点组模板编辑和集群模板 * 为集群运行Oozie增加了Shell任务类型 * 新的任务类型端点(endpoint),用于查询已知的任务类型列表 === 升级提示 === 更多详细信息:http://docs.openstack.org/developer/sahara/userdoc/upgrade.guide.html#juno-kilo * Sahara现在支持policy.json配置文件。 == OpenStack裸金属服务(Ironic)== === 新功能 === ==== 状态机(State Machine) ==== Ironic now uses a formal model for the logical state of each node it manages ([http://specs.openstack.org/openstack/ironic-specs/specs/kilo/new-ironic-state-machine.html#proposed-change New Ironic State Machine]). This has enabled the addition of two new processes: '''cleaning''' and '''inspection'''. * Automatic disk erasure between tenants is now enabled by default. This may be extended to perform additional '''cleaning''' steps, such as re-applying firmware, resetting BIOS settings, etc ([http://docs.openstack.org/developer/ironic/deploy/cleaning.html Node Cleaning]). * Both in-band and out-of-band methods are available to '''inspect''' hardware. These methods may be used to update Node properties automatically ([http://docs.openstack.org/developer/ironic/deploy/install-guide.html#hardware-inspection Hardware Inspection]). ==== 版本头信息 ==== The Ironic REST API expects a new ''X-OpenStack-Ironic-API-Version'' header be passed with each HTTP[S] request. This header allows client and server to negotiate a mutually supported interface ([http://specs.openstack.org/openstack/ironic-specs/specs/kilo/api-microversions.html REST API "micro" versions]). In the absence of this header, the REST service will default to a compatibility mode and yield responses compatible with Juno clients. This mode, however, prevents access to most features introduced in Kilo. ==== 硬件驱动更新 ==== 以下驱动被添加: * [http://docs.openstack.org/developer/ironic/drivers/amt.html AMT] * [http://docs.openstack.org/developer/ironic/deploy/drivers.html#irmc iRMC] * [http://docs.openstack.org/developer/ironic/drivers/vbox.html VirtualBox (testing driver only)] 对于已经存在的驱动,有以下增强点: * [http://docs.openstack.org/developer/ironic/deploy/install-guide.html#enabling-the-configuration-drive-configdrive Configdrives] 可以用于"agent"驱动替代metadata服务。 * SeaMicro驱动支持串口控制台 * [http://docs.openstack.org/developer/ironic/drivers/ilo.html#uefi-secure-boot-support iLO驱动支持UEFI安全启动] * [http://docs.openstack.org/developer/ironic/drivers/ilo.html#hardware-inspection iLO驱动支持带外(out-of-band)节点检查] * [http://docs.openstack.org/developer/ironic/drivers/ilo.html#ilo-node-cleaning iLO驱动在清理过程中支持ilo和bios重置] 支持第三方和未列出的驱动,通过以下两点得到增强: * 驱动可以存储节点"内部的"信息 * 驱动可以注册自己的定时任务,并且由Conductor执行 * ''vender_passthru''方法现在支持额外的HTTP方法(例如PUT和POST) * ''vendor_passthru''方法现在可以在REST API中被发现。查看[http://docs.openstack.org/developer/ironic/dev/drivers.html#node-vendor-passthru node vendor passthru]和 [http://docs.openstack.org/developer/ironic/dev/drivers.html#driver-vendor-passthru driver vendor passthru] ==== 其他更新 ==== * 除了正式的UUID之外,[http://docs.openstack.org/developer/ironic/deploy/install-guide.html#logical-names 逻辑名称]可以被用来标识节点。 * 对于拥有多个本地磁盘的服务器,[http://docs.openstack.org/developer/ironic/deploy/install-guide.html#specifying-the-disk-for-deployment ''提示'']可以提供哪些OS在注入时产生影响 * 支持从HTTP[S]源中直接获取kernel, ramdisk和实例镜像,并且从Glance移除了依赖[http://docs.openstack.org/developer/ironic/deploy/install-guide.html#using-ironic-as-a-standalone-service 使用Ironic作为独立服务] * 可以通过REST API将节点设置为维护模式''[http://docs.openstack.org/developer/ironic/deploy/install-guide.html#maintenance-mode 维护模式]''。一个可选项''维护模式原因''可以标识原因。 === 已知问题 === * 运行一个以上的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 ==== 升级文档请参考: * http://docs.openstack.org/developer/ironic/deploy/upgrade-guide.html#upgrading-from-juno-to-kilo ==== 从Icehouse的"nova-baremetal"升级 ==== 直接从Icehouse的Nova安装中使用“baremetal”驱动直接到Kilo的Ironic,没有经过测试也不支持。替代方案,请遵循以下升级顺序: # Icehouse Nova "baremetal" -> Juno Nova "baremetal" # Juno Nova "baremetal" -> Juno Ironic # Juno Ironic -> Kilo Ironic 第一步和第二步的文档:https://wiki.openstack.org/wiki/Ironic/NovaBaremetalIronicMigration == OpenStack文档== * New [http://docs.openstack.org docs.openstack.org] landing page and new web design for [http://docs.openstack.org/user-guide/ End User Guide] and [http://docs.openstack.org/user-guide-admin/ Admin User Guide] * First release of the [http://docs.openstack.org/networking-guide/ Networking Guide] * Migration to RST for [http://docs.openstack.org/user-guide/ End User Guide] and [http://docs.openstack.org/user-guide-admin/ Admin User Guide] * New specialty teams: ** Install Guides ** High Availability Guide ** Networking Guide ** User Guides (Admin and End User) * First App Tutorial sprint * Driver documentation clarification and connections