[译] OpenStack Pike 版本中的 53 个新功能盘点

2023-05-16

 
原文: https://www.mirantis.com/blog/53-things-to-look-for-in-openstack-pike/
作者:Mirantis Nick Chase
发布日期:08/27
 
本周我们都在期待 OpenStack 第16个社区版本 Pike,它预计在08/30发布。现在是我们传统节目时间了,那就是从这个版本中概括出53个核心功能。
 

1. OpenStack 计算服务(Nova) 

  • Cells v2 多Cell部署:部署将默认使用单Cell;从这个版本开始,你可以使用 Cells v2 API 创建多Cell 的环境了,尽管它还有一些局限。Cells v1 现在被标记为被弃用了。
  • 重写 Nova 配额系统,在资源被创建时计数:如果所申请的资源创建失败,你会得到错误;你不需要做任何改动就可以使用该功能。
  • 利用  PCIWeigher 来更高效地利用资源:PCI 设备是一种特殊硬件,因此你需要确保只有真正需要这些设备的负载会运行在带有 PCI 设备的宿主机上。使用 [filter_scheduler] pci_weight_multiplier 配置项来防止非 PCI 负载被调度到带有 PCI 设备的节点上。
  • 节点在不能正常工作时会自动从服务列表中移除,利用 [compute]/consecutive_build_service_disable_threshold 配置项。
  • 防止虚机占用宿主机上的所有物理CPU,通过使用 reserved_host_cpus 配置项来为 hypervisor 预留部分CPU。
  • Placement API 现在可以查看各种资源的定性“特征”,以更好地服务请求。 

2. OpenStack 网络服务(Neutron)

Neutron PTL Kevin Benton 告诉我们需要关注以下几点:
  • 支持从 Ocata 版本无缝升级到 Pike 版本
  • 使用 haproxy 代替 neutron namespace proxy agent,以降低元数据代理服务器(metadata proxy server)上的内存使用
  • 稳定性和性能优化
    • 优化基于 OVS openflow 防火墙的稳定性
    • 开始使用 Python3
    • 优化服务端和 L2 agent 之间的通信方式,来降低 Neutron 服务器端负载
    • 更新 Neutron HTTP API 中的条件比较和交换(Conditional compare-and-swap),为客户端提供竞争安全(race-safe)方式来更新资源
    • DHCP 代理支持路由网络(routed network )的其他段上的子网
  • QoS 改进
    • 支持 QoS 扩展中的带宽限制规则,设置带宽速率限制
    • OVS 和 Linux Bridge 驱动程序中的双向带宽限制 QoS 规则
    • SR-IOV 的出口带宽限制规则
    • 增加一个 API,获取已被加载的驱动所支持的 QoS 规则类型
  • DVR 改进
    • 支持可用性受限的外部网络(limited availability external networks )的部分分布式路由
    • 修复 bug,使得可以在 VRRP 场景中使用与未绑定端口相关联的浮动IP
    • 通过计算节点为不需要网络地址转换的数据包快速退出路由
  • 支持配额 API 中的配额使用统计
  • 支持为每个 Neutron 端口设置单独的 DNS 域
  • 支持为每个网络设置 MTU
  • 支持为所有标准 Neutron 资源设置用户自定义 tag 

3. OpenStack 块存储服务(Cinder)

Cinder PTL Sean McGinnis 请我们关注以下几点:
  • 添加了 “还原到快照” (revert to snapshot) 功能,允许用户将卷数据回滚到上一次做快照的时间点。
  • 在某些情况下,我们支持对正在被使用的卷进行扩容。以前仅在卷未挂载到实例时才允许被扩容。现在,通过 Pike Cinder 与使用 libvirt 驱动的 Pike Nova 相配合,我们可以扩展使用中的卷,并将该更改反映到运行着的实例。
  • 我们添加了 backend_default 配置部分。在此之前,如果您有一个配置项,想要应用于所有存储后端,那么就需要在每个后端的配置部分中添加该配置项。Pike 版本中,这个新的配置部分中的配置项可以被后端配置部分中的配置项的值所覆盖,或者被默认使用。
  • 添加卷组复制(replication)支持。在此之前,管理员只能配置整个后端来进行复制。现在,通过使用此功能,用户就能够根据自己的需求(所有卷作为应用程序的一部分,例如仅限数据库卷等)定义一卷组(volume group),并将该卷组复制到辅助后端。目前,只有少数 Cinder 驱动程序支持该功能,但是它现在确实是可用了。我们期望在后续版本中有更多的后端支持此功能。 

4. OpenStack 镜像服务(Glance)

  • 通过使用新的 tasks_api_access 策略,来避免将 Tasks API 暴露给终端用户;这策略能够让 Glance 使用普通用户凭据来管理那些交互式映像导入任务。 

5. OpenStack 编排服务(Heat) 

Heat PTL Rico Lin 告诉我们,该项目增加了以下新资源,包括:
  • Neutron Trunk 资源支持(OS :: Neutron :: Trunk)
  • 支持新的 Magnum Cluster 和 Cluster Template 资源(OS :: Magnum :: Cluster 和 OS :: Magnum :: ClusterTemplate)
  • 由 Mistral 工作流管理的自定义资源类型(OS :: Mistral :: ExternalResource)
  • 添加 Zun Container 资源(OS :: Zun :: Container) 
他还谈到在更新时可以使用 get_reality 功能:“您可以在更新 API 请求中使用 ‘converge’ 标志,此更新操作实际上会从服务(比如 nova 实例、cinder卷)中抽取资源并根据实际情况进行更新。 例如,我创建一个 m1.small 规格的实例,有人使用 nova API 对它进行更新,调整它的规格为 m1.large;使用 `converge` 标志后,Heat 会检测到该实例的 flavor 已经被更改,并将其改为原有规格 m1.small。”
 

6.  OpenStack Dashboard 服务(Horizon)

  • 就像我们已经可以从 Horizon 中下载 openrc 文件来配置 OpenStack 客户端一样,Pike 现在可以为 os-client-config下载 clouds.yaml文件。
  • 在项目的网络详细信息表中,创建和删除网络中的端口。 (作为运维,您可以使用策略打开和关闭此功能。)
  • 现在可以在添加安全组规则时指定 “any” IP 协议和 “any” 端口号
  • 现在可以看到哪些安全组被应用到了哪些 Neutron 端口 

7. OpenStack 身份认证服务(Keystone) 

Keystone PTL Lance Bragstad 告诉我们以下是 Pike 版本中已完成的一些重点工作: 
  • 注册默认策略 - 这样可以使运维更容易维护策略文件,特别是当大部分时候使用默认值时
  • 增强存储在SQL中的密码安全性 - SQL 身份后端已被更新,以支持更安全的密码 hash 机制,这更符合行业标准 

8. OpenStack 对象存储服务(Swift) 

Swift PTL John Dickinson 告诉我们,以下这些是 Pike 版本中 Swift 的一些主要新功能:
  • 支持全局分布式纠删码,包括:
    • 复制的纠删码片段
    • 用于更精确数据放置的复合环(Composite rings)
    • 针对每个策略的配置选项
  • 全局纠删码是通过复制对象的纠删码片段来实现的。这种 “EC复制” 允许每个独立区域在跨区域的网络中断时也能正常工作,并且允许一个区域故障时使用远程区域进行恢复。
  • 为了实现全局擦除码,我们首先必须支持“复合环”。复合环是由两个或多个“正常”环组成的数据放置环。组件环(component ring)是在不同的区域使用不同的设备独立构建的。以这种方式构建复合环允许更精确地分散副本或片段(例如,假设您有两个区域,您可以在每个区域中指定2副本从而总数为4副本,或者可以指定跨这两个区域使用 10 + 4 纠删码)。
  • 我们还添加了基于每个策略覆盖 proxy 配置选项的功能。例如,这会允许为一些存储策略设置读取关联性。 

9. OpenStack 计量服务(Ceilometer)

Telemetry PTL Julien Danjou 告诉我们Pike 中有新增以下内容:
  • 支持 Manila
  • 支持多种 SDN 控制器 

10. OpenStack DNS 即服务 (Designate)

  • 支持跨池(pool)调度 

11. OpenStack 裸金属部署项目 (Ironic)

Ironic PTL Dmitry Tantsur 告诉我们 Pike 版本有如下新增功能:
  • 从 Cinder 卷启动
  • 物理网络感知
  • 无缝/滚动升级 

12. OpenStack 文件服务 (Manila)

  • 为每种共享类型(share type)设置配额,以及为共享组的数目和共享组快照设置配额
  • 增加了支持 IPV4 和 IPv6的文档和代码,包括 IPv6 地址校验,以及检测一驱动是否支持IPv4 或者 IPv6 

13. OpenStack 容器项目 (Magnum)

  • K8S 集群默认包含了 K8S 面板
  • 包含了一个监控软件栈,包括 cAdvisor,node-exporter,Prometheus 和 Grafana,但它需要在被显式启用后才能使用
  • 允许限制 Magunum trustID 的访问权限,这样 Magunum 就不能无限制地访问OpenStack 的任何服务了 

14. OpenStack 应用目录项目 (Murano)

Murano PTL Felipe Monteiro 告诉我们 Pike 中有以下重要变化:
  • 完成了 Policy 代码  https://review.openstack.org/#/c/469954/ 
  • Murano 环境可以选择挂接哪个卷或者卷快照 

15. OpenStack 大数据即服务 (Sahara)

Sahara PTL Telles Nobrega 告诉我们 Pike 中有以下重要变化:
  • Pike 版本的一个主要功能是引入了新的镜像创建和验证系统。我们仍然需要使用 disk image builder 来制作大部分镜像,但是Pike 版本引入了 CDH。它允许用户使用 libguestfs 来创建镜像,而不再依赖于 DIB。 

16. OpenStack 策略即服务 (Congress)

Congress PTL Eric K  告诉我们,Pike 版本聚焦于可使用性,特别是针对刚刚使用的人群。包括:
  • 策略库(Policy library):一个管理员可以自定义和激活包含了一些有用策略的集成库,它允许管理员在学会如何撰写策略之前就能快速从 Congress 获益。
  • 监控面板:这个监控面板一目了然地总结了环境中所有政策违规情况的数量及其严重性,并提供了详细信息。 

17. OpenStack On OpenStack (TripleO) 

TripleO PTL Emilien Macchi 告诉我们以下内容: 
  • Pike 版本周期内所做的主要工作是实现了由 TripleO 部署的服务的容器化
  • 我们还支持从 Ansible 任务驱动的 Ocata 版本的裸机部署升级到 Pike 版本的容器化部署
  • 在以前的版本中 TripleO 支持了可组合角色(Composable roles);现在,TripleO 支持了组合式网络(Composable network),因此运维人员能够根据所配置的角色来完全控制网络配置

18. OpenStack 工作流服务(Mistral)

Mistral PTL Renat Akhmerov 提到了以下几点:

  • 完成了第一个版本的 Actions API(mistral-lib repo)
  • 增强工作流变量发布(publishing workflow variables)功能(不同作用域、更灵活等)
  • Mistral OpenStack actions 现在可以在不同的区域(region)内运行;Mistral action 现在可以直接在引擎(engine)中运行(不需要通过RPC请求executor服务执行)
 
以上就是我们总结的 Pike 版本中 53 项值得重点期待的内容,但是,这些只是 Pike 版本所有内容的一小部分而已。我们一起来期待 Pike 版本吧!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

[译] OpenStack Pike 版本中的 53 个新功能盘点 的相关文章

随机推荐

  • LM358 电路 10倍放大

    如何用LM358将0 3V电压放大10倍 放大倍数 61 1 43 R2 R1 xff0c 放大10倍 xff0c 选择R1 61 2K xff0c R2 61 18K 转载于 https blog 51cto com 990487026
  • Java自定义异常处理——最佳实践[译]

    我们几乎已经在我们的每个行业标准应用的代码中处理java自定义异常了 常见的手段是创建一个语义性的继承基础exception类的自定义异常类 1 Java自定义异常处理 新的方法 1 1 传统异常处理 我们的新方法使用静态内部类来处理每个新
  • hdu 1669 Jamie's Contact Groups

    Jamie 39 s Contact Groups Time Limit 15000 7000 MS Java Others Memory Limit 65535 65535 K Java Others Total Submission s
  • C++11中的Lambda表达式构成之——捕获值列表

    摘抄之 xff1a 捕获值列表 xff0c 是允许我们在Lambda表达式的函数体中直接使用这些值 xff0c 捕获值列表能捕获的值是所有在此作用域可以访问的值 xff0c 包括这个作用域里面的临时变量 xff0c 类的可访问成员 xff0
  • matlab练习程序(c/c++调用matlab<dll>)

    这里的环境是windows7 43 vs2010 43 matlabR2010b 上一篇是通过engine来调用matlab中的语句 xff0c 本篇是通过调用m文件编译成的h lib dll文件而实现的 首先写一个函数mysvd m fu
  • CentOS7 命令行安装teamviewer遇到依赖包问题及完美解决

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 公司新到了几台服务器做Docker集群方面的应用 xff0c 将这几台服务器搭建成一个集群 由于要经常同时操作这几台服务器 xff0c 而我又不喜欢待在机房 TeamVie
  • Windows+VScode配置与使用git,超详细教程,赶紧收藏吧

    目录 第一步 xff1a 安装Git命令行工具 第二步 xff1a 配置VScode中的git 第三步 xff1a 使用 VScode 43 git xff0c 提交到仓库 当我们在VScode中编写代码后 xff0c 需要提交到git仓库
  • Python爬虫开发的3大难题,别上了贼船才发现,水有多深

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 写爬虫 xff0c 是一个非常考验综合实力的活儿 有时候 xff0c 你轻而易举地就抓取到了想要的数据 xff1b 有时候 xff0c 你费尽心思却毫无所获 好多Pytho
  • OpenStack推出最新版本Newton,显著提升单一云平台 对虚拟化、裸机和容器的管理...

    2016 年 10 月 1 0 日 北京 OpenStack社区日前发布其命名为 Newton 的第14个版本 OpenStack是用于构建云的部署最广泛的开源软件 此次推出的新功能包括 xff1a Ironic裸机开通服务 xff0c M
  • BGP Extended Communities for OSPF PE-CE Routing-域ID

    要让OSPF路由的特性能够穿过MPLS 骨干网络 xff0c 就需要额外定义一些BGP扩展团体属性 可以通过MP BGP 传递的OSPF属性包括 xff1a MP BGP 扩展属性可是使得OSPF的路由可以完全的在远端PE路由器上重建 LS
  • ESP32 Arduino http协议digest认证 接入海康威视摄像机

    注意 xff1a 使用的是ArduinoHttpClient xff0c 与ESP32内部的HTTPClient库有较大的差别 海康摄像机http接入时候 xff0c 由于没有认证信息 xff0c 会返回401无权限信息 xff0c 这时需
  • 头条 offer,记一次 JAVA 面试经历和总结

    作者 xff1a 想去大厂的小菜鸡 本文的 我 xff0c 不是我 xff0c 是文中的作者 国庆期间公司的项目很闲 xff0c 很多人觉得没意思陆续走了 xff0c 我也考虑到自己的发展 xff0c 从9月底开始面 xff0c 面到11月
  • Centos6.4部署OpenStack

    现在好多公司都使用Openstack xff0c 我做这个也是小菜鸟一个 xff1b 网上看了一些资料说的都是openstack xff0c 但是现在openstack的版本不一样 所以亲们安装的时候一定要注意看一下你要安装的是那个版本 x
  • 【论文笔记】多任务学习(Multi-Task Learning)

    1 前言 多任务学习 xff08 Multi task learning xff09 是和单任务学习 xff08 single task learning xff09 相对的一种机器学习方法 在机器学习领域 xff0c 标准的算法理论是一次
  • 常用 API 函数(5): 文本和字体函数

    AddFontResource在Windows系统中添加一种字体资源CreateFont用指定的属性创建一种逻辑字体CreateFontIndirect用指定的属性创建一种逻辑字体CreateScalableFontResource为一种T
  • ElasticSearch笔记系列(7)——删除文档和删除索引

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 本文介绍删除文档和删除索引的基本方法 本来想把这几篇合成一篇的 xff0c 但最近事情太多 xff0c 好多比较长的文章总是写了一半便束之高阁 xff0c 其中有几篇还日久
  • 经验分享——嵌入式工程师必看书籍(转载)

    从事嵌入式研发行业十年 xff0c 认为学习就是要不断的吸纳知识 xff0c 在研发过程中 xff0c 经常会遇到一些问题 xff0c 这种发现问题并解决问题的过程就是进步 为什么选择学习嵌入式 xff1f 嵌入式系统无疑是当前最热门最有发
  • VS好用系列之代码片段

    背景 xff1a 同学们 xff0c 我们后台写接口 xff0c 有过没这样的困扰 每个接口都需要写这么一串相似的代码 xff0c 正常都是复制粘贴一下 xff0c 如下图代码所示 xff1a 那么我们有没更好 更方便快捷方法 xff0c
  • 在虚拟机里面安装Linux操作系统

    在这篇文章中以VMware14为例 xff0c Linux操作系统采用CentOS7进行讲解如何在虚拟机中安装Linux操作系统 一 选择创建新的虚拟机 二 在选择虚拟机配置界面选择 自定义 高级 选项 xff0c 然后点击 下一步 三 在
  • [译] OpenStack Pike 版本中的 53 个新功能盘点

    原文 xff1a https www mirantis com blog 53 things to look for in openstack pike 作者 xff1a Mirantis Nick Chase 发布日期 xff1a 08