[转] OpenStack Kilo 更新日志

OpenStack 2015.1.0 (Kilo)更新日志

原文: https://wiki.openstack.org/wiki/ReleaseNotes/Kilo/zh-hans

目录

[隐藏]

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

  • 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版本被移除掉。

升级支持

  • 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

Libvirt (KVM)
VMware
Ironic

已知问题

  • 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)

新功能

已知问题

升级提示

  • 移除废弃的选项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配置实现。相关启用设置和配置可以在这里找到: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。这项新功能体现了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不仅仅限于“/”

已知问题

升级提示

  • 目前支持Django 1.7

OpenStack鉴权服务(Keystone)

新功能

分层multitenancy

创建一个新的project时,可以设置属性parent_id的值为一个已存在project,使 Projects嵌套在其他projects下。

Role现在可以分配给project分层子树上的 usersgroups

这项功能还需要其他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)现在被默认支持,并且在相关标记中,标记为"试验"或者"稳定"。
  • 不在支持SQL结构的回退。这个变化主要是回退并没有经过良好的测试,而且在很多迁移中需要支持数据变化,难度越来越大。
  • 需要以下Python库:cryptographymsgpack-pythonpysaml2 和 oauthlib
  • keystone.middleware.RequestBodySizeLimiter被废弃,取而代之的是 oslo_middleware.sizelimit.RequestBodySizeLimiter 并且在Liberty移除。
  • Eventlet相关的配置项,如:public_bind_hostbind_hostadmin_bind_hostadmin_portpublic_portpublic_workersadmin_workers,tcp_keepalivetcp_keepidle被从[DEFAULT]移除掉,移到了[eventlet_server]. 相似的,Eventlet相关的SSL配置选项如:enablecertfile,keyfileca_certscert_required已经从[ssl]配置项移动到[eventlet_server_ssl].
  • keystone.token.backends.sql被 keystone.token.persistence.backends.sql取代.
  • keystone.token.backends.kvs被 keystone.token.persistence.backends.kvs取代.
  • keystone.token.backends.memcache被 keystone.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网络服务(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块存储(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遥测服务(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)
    • LibVirt的磁盘测量(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编排服务(Heat)

新功能

升级提示

  • "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,(更新)
  • 没有经过任何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现在使用一个正式的模式管理每个节点的逻辑状态。[1]。这样就开启了两个附属的进程:清理(cleaning) and 检查(inspection)

  • 现在默认支持项目间的自动磁盘清除。这可能需要为清理(cleaning)扩展额外的步骤,例如重新申请fireware,重置BIOS设置等[2]
  • 硬件的检查(inspect),同时支持带内(in-band)和带外(out-of-band)两种方式。这些方法可能会自动更新节点设置。[3]

版本头信息

Ironic REST API在HTTP[S]请求的头信息中增加了一个新的X-OpenStack-Ironic-API-Version。这个头信息允许客户端和服务端在协商时支持一个统一的接口。[4]。如果头信息缺失,REST服务会默认进入兼容模式,并且产生一个兼容Juno客户端的响应。这种模式是被限制访问Kilo提供的最新功能的。

硬件驱动更新

以下驱动被添加:

对于已经存在的驱动,有以下增强点:

支持第三方和未列出的驱动,通过以下两点得到增强:

  • 驱动可以存储节点"内部的"信息
  • 驱动可以注册自己的定时任务,并且由Conductor执行
  • vender_passthru方法现在支持额外的HTTP方法(例如PUT和POST)
  • vendor_passthru方法现在可以在REST API中被发现。查看node vendor passthru和 driver vendor passthru

其他更新

  • 除了正式的UUID之外,逻辑名称可以被用来标识节点。
  • 对于拥有多个本地磁盘的服务器,提示可以提供哪些OS在注入时产生影响
  • 支持从HTTP[S]源中直接获取kernel, ramdisk和实例镜像,并且从Glance移除了依赖使用Ironic作为独立服务
  • 可以通过REST API将节点设置为维护模式维护模式。一个可选项维护模式原因可以标识原因。

已知问题

  • 运行一个以上的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"升级

直接从Icehouse的Nova安装中使用“baremetal”驱动直接到Kilo的Ironic,没有经过测试也不支持。替代方案,请遵循以下升级顺序:

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

第一步和第二步的文档:https://wiki.openstack.org/wiki/Ironic/NovaBaremetalIronicMigration

OpenStack文档

分类

时间: 2024-10-19 07:34:44

[转] OpenStack Kilo 更新日志的相关文章

OpenStack Kilo版本新功能分析

OpenStack Kilo版本已经于2015年4月30日正式Release,这是OpenStack第11个版本,距离OpenStack项目推出已经整整过去了5年多的时间.在这个阶段OpenStack得到不断的增强,同时OpenStack社区也成为即Linux之后的第二大开源社区,参与的人数.厂商众多,也成就了OpenStack今天盛世的局面.虽然OpenStack在今年经历了一些初创型企业的倒闭,但是随着国内的传统行业用户对OpenStack越来越重视,我们坚信OpenStack明天会更好.

[译] OpenStack Kilo 版本中 Neutron 的新变化

OpenStack Kilo 版本,OpenStack 这个开源项目的第11个版本,已经于2015年4月正式发布了.现在是个合适的时间来看看这个版本中Neutron到底发生了哪些变化了,以及引入了哪些新的关键功能. 1. 扩展 Neutron 开发社区 (Scaling the Neutron development community) 为了更好地扩展 Neutron 开发社区的规模,我们在Kilo开发周期中主要做了两项工作:解耦核心插件以及分离高级服务.这些变化不会直接影响 OpenStac

centos7 openstack kilo版本一键安装

最近在学习openstack的使用,由于是出于学习的目的使用的是all-in-one方式,在此记录在centos7系统是使用all-in-one方式安装openstack kilo版本的步骤. centos7系统使用新的接口命名方式,在安装openstack前需要修改接口名称 修改接口名称: (To restore the old naming convention, you need to edit the /etc/default/grub file and add net.ifnames=

OpenStack Kilo终于来临 Ironic API版本正式面世

编者按:OpenStack Kilo在万众瞩目中终于如期来临,增加的数以百计的新功能让市面上主要Linux发行版纷纷转换至Kilo版本. OpenStack的第十一个版本已经于本周四正式现身其下载服务器,这一准时来临的升级方案为世界范围内的云构建用户们带来数以百计的全新功能. “随着平台内核的逐步成熟,我们的关注重点开始转向改进其在市场中的互操作能力.提升驱动程序兼容性水平并扩展该平台与裸机以及容器架构内各类工作负载的对接效果,”OpenStack项目维护方在一份随版本发布一同公开的声明当中指出

python 提交SVN 写更新日志

SCENE = "mjdy_dyhry" DIRS = { "md5/scenes/" + SCENE, "data/tex/scenes/" + SCENE, "data/tex/share", "data/mesh/scenes/" + SCENE, } import os WORKSPACE = "D:/workspace/muData/"#os.getcwd()+ # execu

Install OpenStack Kilo

安装openstack k版本 OS:CentOS Linux release 7.0.1406 (Core)host: node1  (管理):10.10.0.10   10.20.0.10 10.30.0.10node2(网络):10.10.0.20    10.20.0.20  10.30.0.20    192.168.74.211node2(计算):10.10.0.30    10.20.0.30   10.30.0.30 1:环境准备1):关闭防火墙 systemctl stop f

E2 2014.6.3 更新日志

增加功能 增加支持中关村获取商品信息 增加个人业绩查询功能 增加赠送和获赠查询功能 增加商品历程分析报表,资金历程分析报表,科目明细分析报表, 销售分析报表 增加服务维修明细表查询报表 完善功能 固定资产登记后,允许管理员可以删除 修件库查询,增加按维修商和客户名称查询条件,并增加快速设置维修件为已取件按钮 坏件处理窗口增加可以补打坏件标签功能. 客户信息增加客户所属业务员快速设置 服务价格表,增加分类刷新功能. 客户信息增加批量修改客户分类 客商对帐,明细增加合计 发票管理添加可以添加发票功能

E2 2014.07.01 更新日志

增加功能 完善功能 电话报修单,添加可以发短信通知客户和技术员选项 商品历程分析,增加按商品分类条件统计 修件库,增加可以按维修商条件过滤,以方便查询某维修商的返修件 维修中,备件转销售时,自动读取客户适用价格 修件库和服务维修明细表增加按客户电话查询条件 收款单和付款单中,如果实际收付款比结帐多,多出来的款项,增加到预收(付)款中. 收入单和支付单,增加欠款支持 修正BUG 修正快修中,存在销售商品,而且销售数量大于1时,如果非现场审核,则出现不能后期审核问题. 修正价格策略中,动态公式检查,

openstack kilo开启lbaas功能

centos7系统openstack kilo开启lbaas功能 1.安装haproxy和neutron-lbaas(在openstack资源里) Setup the RDO repositories: #sudo yum install -y https://rdoproject.org/repos/rdo-release.rpm #yum -y install openstack-neutron-lbaas haproxy 2.编辑配置文件 Enable the HAProxy plug-i