刚刚,OpenStack 第 19 个版本来了,附28项特性详细解读!
OpenStack Stein版本引入了新的多云编排功能,以及帮助实现边缘计算用例的增强功能。
OpenStack由一系列相互关联的项目组成,这些项目可以以不同的组合方式组合在一起,以实现完整的云部署。在OpenStack Stein里程碑中,有多个项目集成了新功能和增强功能,以及有益于云运营商的新项目。新项目包括OpenStack Placement服务,使运营商能够更有效地跟踪云资源清单。Stein版本中的Heat编排项目得益于支持跨多个OpenStack云编排新的工作负载部署。“OpenStack Stein在稳定性,性能和可用性方面进行了相当多的改进,”Canonical的产品经理Marcin Bednarz告诉eWEEK。“这证明了OpenStack的成熟程度以及它如何发展以应对新的应用场景,例如跨多个OpenStack云的Heat堆栈编排。”
自从2010年由NASA和Rackspace首次推出以来,Stein是OpenStack平台的第19个版本。Stein更新是2019年首次OpenStack更新,并遵循2018年8月推出的Rocky里程碑。OpenStack是多利益相关方的努力,包括Canonical/Ubuntu,SUSE,VMware和Red Hat等多家供应商,提供商业支持的OpenStack产品。此外,还有多个由OpenStack 提供支持的云服务,包括Oracle,Rackspace,Telefonica,OVH,vScaler和City Network。
当OpenStack开始时,只有两个项目,Swift存储和Nova计算。新的OpenStack Placement服务是最初属于Nova的一部分,但现在已经被分离到了它自己的项目中。根据发布说明,Placement服务的目标是跟踪云资源清单和用法,以帮助其他服务有效地管理和分配其资源。作为其自己的项目,OpenStack开发人员声称,对于常见的调度操作,API的性能提高了50%。
“OpenStack Placement为OpenStack中资源分配的内部机制提供了有趣的可能性,”Bednarz说。“随着性能的提高和Nova与Placement之间功能的明确划分,云运营商似乎可以从中受益,尤其是在更容易维护OpenStack服务方面。”
(推荐阅读:openstack的历史版本有哪些)
Keystone身份
OpenStack中的Keystone Identity项目受益于Stein版本中的几项重要增强功能,包括多重身份验证。SUSE的高级产品经理TR Bosworth告诉 eWEEK,Stein的多因素身份验证功能真正完成了2017年2月推出的OpenStack Ocata版本的工作。
“这是正确的方法,因为您进行多因素身份验证-您提供了一种身份验证,然后您将获得一个'half-token',表示您已完成部分身份验证,然后当您使用身份验证的第二部分时提供所需要的手机号或key。“博斯沃思说。“这是一个已经实施的挑战响应机制。”
人工智能与边缘
对于Red Hat产品管理高级经理Sean Cohen来说,Stein版本中有一些关键亮点可用于帮助企业在灵活,可扩展的私有云上提供新的差异化应用程序和服务。
科恩告诉eWEEK,“随着组织希望从日益数字化的经济中提取更多的利益,斯坦因增加了专注于支持新工作负载和用例的能力。” “例如,通过Stein,人工智能/机器学习(AI/ML),通过OpenStack和TensorFlow之间的协作简化了面部识别等工作负载,提供了更加动态,多媒体的用户体验。”
新兴的Edge Computing概念也得到了OpenStack Stein版本的推动。借助Edge Computing,计算可以扩展到网络的边缘,而不是位于中央核心的所有计算资源。Cohen指出,分布式计算增强功能也是Stein的一部分,为用户提供采用边缘计算策略的新方法。
“通过推动计算和存储功能更接近数据源,OpenStack Stein可以更好地分配IT架构,有助于减少关键应用程序的延迟,同时降低带宽和运营成本,”Cohen说。
刚刚,OpenStack 第 19 个版本来了,附28项特性详细解读!
Stein 发布亮点详细介绍
刚刚,OpenStack 第 19 个版本来了,附28项特性详细解读!
(推荐阅读:21版本OpenStack Ussuri以发布,有哪些新变化?)
- Barbican-密钥管理器服务
Barbican 是 OpenStack 的密钥key管理组件,定位在使用 REST API 来安全存储、提供和管理"密钥"。
Notes:
对Vault后端进行了一些增强。现在可以指定KV挂载点并使用AppRoles来管理身份验证。
我们现在运行Barbican特定的Octavia gate来验证Octavia负载平衡方案。
修改了PKCS#11插件以允许配置hmac_keywrap_mechanism。通过此更改,Barbican可以与Ultimaco HSM一起部署。
现在可以通过TripleO使用Thales或ATOS HSM部署Barbican和pkcs#11后端。
此次修复是为了确保用于密钥轮换的barbican-manage命令适用于PKCS#11插件。
- Blazar-资源预订服务
Blazar的目标是在OpenStack云中为不同的资源类型提供资源预留,包括虚拟(实例,卷等)和物理(主机,存储等)。
Notes:
引入了新的资源分配API,允许运营商查询其云资源的保留状态。
添加了对实例预留的亲和性和非亲和性策略的支持,允许将同一类预留的多个实例安排调度到同一个虚拟机管理程序(hypervisor)。
添加了一个用于预留浮动IP的新插件。此新功能可作为预览版提供,并将在下一版本中完整实现。
集成了许多错误修复,以提高可靠性。
(推荐阅读:OpenStack Liberty版本有哪些新突破)
- Cinder-块存储服务
提供 REST API 使用户能够查询和管理 volume、volume snapshot 以及 volume type,提供 scheduler 调度 volume 创建请求,合理优化存储资源的分配。通过 driver 架构支持多种 back-end(后端)存储方式,包括 LVM,NFS,Ceph 和其他诸如 EMC、IBM 等商业存储产品和方案。
Notes:
为RBD驱动程序添加了multiattach和延迟删除支持。
已经完成了许多错误修复来解决稳定性和可靠性问题。
针对驱动程序初始化,卷传输期间保留的数据以及命令返回的信息的用户体验进行改进。
备份服务的持续改进。
- Congress-治理服务
Congress是一个基于异构云环境的策略声明、监控、实施、审计的框架(policy-as-a-service)。Congress从云中不同的服务获取数据,输入到congress的策略引擎,从而验证云中的各服务状态是否按照设置的策略运行。
Notes:
通过在Nova,Tacker和Monasca的集成中添加多项新功能,实现以及增强NFV故障管理功能。
新的JGress框架通过使JSON API提供的云状态可用于策略评估来解锁全新的策略使用类。通过采用JSON查询语言直接在JSON API数据上表达策略,JGress使部署人员能够插入新数据源,而不受集成驱动程序可用性的限制。
与每个版本一样,我们继续通过错误修复和内部改进使congress比以往更加强大和稳定。
- Cyborg-加速器生命周期管理
提供通用的硬件加速管理框架。加速的硬件包括加密卡,GPU,FPGA,NVMe/NOF SSDs,DPDK/SPDK,eBPF/XDP等等。
添加FPGA编程支持
添加GPU驱动程序
DB重构从而开始与NOVA Placement api策略保持一致
- Designate-DNS服务
Designate并没有实现DNS协议,而是管理了实现DNS协议的软件,例如BIND9,PowerDNS等。Designate将这些软件与OpenStack连接了起来,通过一套自己提供的API,控制底层的DNS软件,完成例如创建DNS Zone,写入Resource Record等DNS操作。所以,Designate本身只是一个软件框架,一个适配多种DNS软件的软件框架。
Notes:
CAA为托管DNS区域添加了CA授权的记录集类型
添加了NAPTR服务链和SIP管理的记录集类型
更新配额时验证项目ID
添加了新命令以帮助升级。designate-status upgrade check
- Heat-编排服务
编排Heat主要功能是自动化部署应用,自动化管理应用的整个生命周期。对于云计算来说,自动化管理是一个必不可少的部分,heat就是这部分功能的实现。AWS的EC2是通过提供CloudFormation格式的模板来实现Orchestration。Heat不仅100%兼容CloudFormation格式,同时支持自己的Hot(heat orchestration template)格式。Heat 可以通常可用于解决客户Paas层的需求。
Notes:
Heat现在支持在远程OpenStack云中编排堆栈,同时使用用户在Barbican中存储的凭证。
现在,通过尝试使用与现有资源冲突的版本进行替换当前资源,从而可以更轻松地进行恢复。
Heat中的新资源类型增加了对Neutron Layer 2 Gateways,Blazar和Tap-as-a-Service的支持。
支持通过Glance Web下载Glance镜像的资源类型,允许从URL获取镜像,而无需将其预先加载。
- Horizon-图形化管理服务
为所有OpenStack服务提供可扩展的统一的基于Web的用户界面,从而可以简化运维管理操作。
Notes:
现在支持Cinder Generic Groups管理面板
增加了缓解漏洞***的选项
添加了upgrade_check管理命令
支持clouds.yaml和openrc文件的自定义模板
- Ironic-裸机服务
OpenStack Ironic是一个进行裸机部署安装的项目。所谓裸机,就是指没有配置操作系统的计算机。 Ironic实现的功能,就是可以很方便的对指定的一台或多台裸机,执行以上一系列的操作。例如部署大数据群集需要同时部署多台物理机,就可以使用Ironic来实现。Ironic可以实现硬件基础设施资源的快速交付。
Notes:
添加了用于管理硬件的其他接口,包括Redfish BIOS设置,显式iPXE引导接口选择选项和其他硬件支持。
增强了用户的功能和选项,包括部署模板,改进了并行conductor workers和磁盘擦除流程,部署的节点保护和描述,以及使用本地HTTP或HTTPS服务器来提供镜像。
改进了standalone模式用户的选项,来请求分配裸机节点并提交配置数据,而不需要预先形成配置驱动器。另外,Ironic允许使用JSON-RPC而不是AMQP消息总线。
- Karbor-数据保护协调服务
让各个厂商的数据保护软件通过标准接口接入OpenStack,为OpenStack提供增强的备份、复制、迁移等数据保护即服务(Data Protection as a Service)能力,Karbor致力于解决虚拟机备份难、无标准备份的接口的现状。
Notes:
支持将checkpoint重置为指定状态
使用volume_glance_plugin支持跨站点备份和还原
不同银行案例中checkpoint管理的优化
- Keystone-身份认证服务
是OpenStack框架中负责管理身份验证、服务访问规则和服务令牌功能的组件。用户访问资源需要验证用户的身份与权限,服务执行操作也需要进行权限检测,这些都需要通过 Keystone 来处理。Keystone 类似一个服务总线, 或者说是整个 Openstack 框架的注册表,OpenStack 服务通过 Keystone 来注册其 Endpoint(服务访问的URL),任何服务之间的相互调用,都需要先经过 Keystone 的身份验证,获得目标服务的 Endpoint ,然后再调用。
Notes:
此版本引入了多重身份验证功能(Multi-Factor),这有助于在使用MFA时更加自然顺畅以及安全。
限制API现在除了支持Project之外还支持Domain,因此可以将资源配额分配给顶级域并在子项目中分配。
JSON Web令牌作为新的令牌格式与fernet令牌一起添加,支持互联网标准格式。JSON Web令牌是非对称签名的,因此这种令牌格式不再需要在部署keystone服务的服务器之间同步私钥。
多个keystone API现在支持系统范围作为策略目标,这减少了对自定义策略的需求,以防止对具有任何项目的管理角色的用户进行全局访问。
多个keystone API现在使用默认的reader,member和admin角色而不是catch-all角色,这减少了为特定用户创建只读访问的自定义策略的需要。
- Kolla-容器化部署
Kolla聚焦于如何使用Docker容器部署 OpenStack服务。Kolla 显著的特点是「开箱即用」和「简易升级」,前者由编排工具(Ansible/Kubernetes)提供自动化支撑,后者则完全是 Container 的功劳。Kolla 追求为每一个 OpenStack Service 都构建相应的 Container,将升级/回滚的粒度(隔离依赖关系集)降维到 Service 或 Project 级别,实现升级/回滚的原子性。假若升级失败,则直接启动 Old Version Container 完成回滚。
Notes:
为Monasca的OpenStack监控服务完成了容器镜像和playbooks的添加。
为OpenStack Placement服务添加了一个容器镜像和playbooks,该服务已从Nova中提取到一个单独的项目中。
添加了对执行MariaDB数据库的完整备份和增量备份的支持。
- Kuryr-容器网络管理服务
其主要目标是通过该项目来整合 OpenStack 与 Kubernetes 的网络。该项目在 Kubernetes 中实作了原生Neutron-based的网络,因此使用Kuryr-Kubernetes可以让你的OpenStack VM 与Kubernetes Pods 能够选择在同一个子网上运作,并且能够使用 Neutron 的 L3 与 Security Group 来对网络进行路由,以及阻挡特定来源 Port。
Notes:
添加了对kubernetes处理和响应网络策略事件的支持,允许Kuryr-Kubernetes根据它们动态来处理安全组规则。
添加了对配置为使用CRI-O的K8s的支持,这是基于Open Container Initiative的Kubernetes Container Runtime Interface实现的容器。
增强readiness健康检查以验证处理程序资源的配额,提高整体性能和稳定性,并在需要时将其标记为不健康。
改进了对DPDK和SRIOV支持。
- Manila-共享文件系统服务
为多租户云环境中的共享文件系统管理提供一组服务,类似于OpenStack通过Cinder项目提供基于块的存储管理的方式。
Notes:
扩展支持对DHSS=True模式的共享和快照的管理/非管理支持,并为共享服务器添加管理/非管理支持。
- Neutron-网络服务
允许创建和管理网络对象, 如网络、子网和端口, 其他 OpenStack 服务可以使用。插件可以实现, 以适应不同的网络设备和软件, 为 OpenStack 的体系结构和部署提供灵活性。neutron, 提供了一个 API, 使您可以定义网络连接并在云中寻址。网络服务还提供了一个 API 来配置和管理各种网络服务, 包括从 L3 转发和 NAT 到负载平衡、边界防火墙和虚拟专用网络。
Notes:
支持严格的基于最小带宽的调度。通过此功能,nova实例可以调度到满足其端口的QoS策略定义的实例的最低带宽要求的计算主机上。
网络段范围管理。此功能使云管理员能够通过新的API扩展动态管理网段范围,而不是之前编辑配置文件的方法。此功能针对StarlingX和边缘使用的案例,使其易于管理。
加快Neutron端口批量创建。目标是针对containers/k8s用例,其中端口是按组创建的。
(FWaaS)FWaaS v1已被删除。自Newton发布以来,FWaaS v2可用,它涵盖了FWaaS v1中的所有功能。提供了一个迁移脚本,用于将现有的FWaaS v1对象转换为FWaaS v2模型。
- Nova-计算服务
是OpenStack的核心服务,负责维护和管理云环境的计算资源,同时管理虚拟机生命周期。
Notes:
现在可以使用最新1.0.0版placement服务运行Nova,该服务由其自己的repository托管。请注意,在所有部署工具中尚未完全实现placement服务的安装/升级。在继续之前,用户应检查其特定的部署工具以获得支持。有关更多详细信息,请参阅placement安装和升级文档。在Stein,用户可以选择继续使用Nova repository中的集成placement服务,但是应该开始计划通过在Train版本中迁移到最新的placement服务,因为计划在Train版本发布中删除Nova集成placement的部分代码。
用户现在可以在创建虚机服务时指定卷类型。
计算API现在可以容忍部署中的瞬态条件,例如部分基础架构故障,例如无法访问的单元。
用户现在可以创建具有Neutron端口的虚拟机,这些端口具有QOS最小带宽规则。
用户现在可以使用Nova配置文件或Placement API设置超卖。
计算驱动程序功能现在自动作为展示Placement API中的特性公开,它们可用于通过 flavor extra specs和镜像属性进行调度。
现在,VMware驱动程序支持实时迁移。
- Octavia-负载均衡器服务
是OpenStack LBAAS的支持的一种后台程序,提供为虚拟机流量的负载均衡。实质是类似于trove,调用 Nova 以及Neutron的api生成一台安装好haproxy和keepalived软件的虚拟机,并连接到目标网路,从而实现高性能的安全负载均衡的功能。
Notes:
Octavia现在支持负载均衡器“flavors”。这允许操作员创建自定义负载均衡器“flavors”,用户可以在创建负载均衡器时进行选择。
您现在可以在使用TERMINATED_HTTPS侦听器时启用TLS客户端身份验证。
Octavia现在支持对成员服务器连接的后端重新加密。
现在可以将元数据标签分配给Octavia负载均衡器。
- OpenStack Ansible-针对OpenStack的Ansible playbooks和roles 部署
从源码中部署OpenStack的方式使其可扩展,同时还易于操作,升级和管理。
Notes:
已经完成工具优化,这将导致更快,更可靠的部署。
添加Ubuntu Bionic支持。
添加Mistral支持。
添加Manila支持。
添加Masakari支持。
- Oslo-公共库
生成一组包含OpenStack项目共享代码的python库。这些库提供的API应该是高质量,稳定,一致,记录和普遍适用的。通过这些公共库,可以很容易弄出一个完善鉴权、分布式、易配置、带调用链日志的REST服务。
Notes:
添加了Castellan配置驱动程序,允许将密钥从磁盘配置文件移动到任何与Castellan兼容的密钥库。该驱动程序存在于Castellan项目中,因此必须安装Castellan才能使用它。
添加了一个配置驱动程序来读取环境变量中的值,这允许在容器中配置服务而无需注入文件。默认情况下,在oslo.config中启用此驱动程序。
添加了配置验证工具oslo-config-validator。这使用oslo-config-generator数据查找配置文件中未在服务中定义的选项。
- Placement-资源跟踪展示服务
跟踪云资源清单和使用情况,以帮助其他服务有效地管理和分配其资源。
Notes:
Placement服务是从Nova项目中分离出的,并成为一个名为Placement的新官方OpenStack项目。
添加了定位候选资源提供程序的功能,简化了指定主机以进行工作负载迁移的功能。
对于常见的调度操作,API性能提高了50%。
通过消除不必要的复杂性简化代码,简化未来的维护。
- Sahara-大数据处理服务
该项目旨在使用用户能够在Openstack平台上便于创建和管理Hadoop以及其他计算框架集群,实现类似AWS的EMR(Amazon Elastic MapReduce service)服务。用户只需要提供简单的参数,如版本信息、集群拓扑、节点硬件信息等,利用Sahara服务能够在数分钟时间内快速地部署Hadoop、Spark、Storm集群。Sahara还支持节点的弹性扩展,能够方便地按需增加或者减少计算节点,实现弹性数据计算服务。它特别适合开发人员或者QA在Openstack平台上快速部署大数据处理计算集群。
Notes:
Sahara插件将从核心代码中删除,以便于维护和升级。
APIv2稳定发布。
从卷功能启动的改进。
- Searchlight-搜索服务
在多租户云资源中提供高级和可扩展的索引和搜索。
Notes:
Searchlight现在可以与Elasticsearch 5.x一起使用
我们发布了一个新的愿景,使Searchlight成为一个多云应用程序
功能测试设置已得到改进
Searchlight现在可以使用Python 3.7进行测试
- Senlin-集群服务
定义了一套集群管理的框架,以管理由其他OpenStack服务公开的同类对象组。
Notes:
提高性能,使Senlin操作执行速度提高了几个数量级。
Health policy v1.1版本现在允许用户指定多种类型的检测模式。
Senlin API现在在cluster/node锁定,冷却效果或操作冲突的情况下发出同步失败。
操作员现在可以使用senlin-manage工具中的action-purge子命令删除已完成的操作。这对于在数据库中累积了大量操作的长时间运行的集群非常有用。
- Storlets-在对象存储服务中进行计算
为了在OpenStack Swift中的数据附近执行以存储为中心的用户定义函数,实现用户友好,经济高效的可扩展和安全方式。
Notes:
支持用户代码的Python3运行
- Swift-对象存储服务
提供了弹性可伸缩、高可用的分布式对象存储服务,适合存储大规模非结构化数据。
Notes:
对S3 API兼容性层进行了大量改进。
对数据加密中间件的一些修复和改进,包括允许多个keymaster中间件。这允许从一个密钥提供者迁移到另一个。
用户可以使用新的databases_per_second配置选项更好地控制帐户和container后台守护程序I/O使用情况。
现在可以将擦除编码数据重建为切换节点。当磁盘故障长时间未得到补救时,这可以提高数据持久性。
- Tripleo-部署服务
开发和维护能够在生产中部署OpenStack的工具和基础架构,尽可能使用OpenStack。主要目标就是使用oepnstack来管理openstack,达到安装、维护、升级的目标。
Notes:
添加了对容器和容器镜像的podman和buildah的支持。
现在,虚拟网络(OVN)是默认的网络配置。
改进的可组合网络支持,用于创建L3路由网络和IPV6网络支持。
- Vitrage-RCA(根本原因分析)服务
用来组织、分析和扩展openstack的告警和事件,对问题产生的根本原因进行推导,为系统产生推导后的告警或者设置推导后的状态。
Notes:
新而简化的模板语言!新模板更短,更容易理解和重用。
添加了一个Trove数据源和一个Zaqar通知程序。
用于查询Vitrage服务和资源计数的新API。
性能改进和更快的数据检索。内存签名和处理运行时间显着减少。
- Watcher-基础结构优化服务
Watcher的目标是为基于OpenStack的多租户云提供灵活且可扩展的资源优化服务。Watcher提供一个完整的优化循环链:从度量接收器,到优化处理器和操作计划应用程序。Watcher的目标在于提供一个强大的框架,可以实现广泛的云优化目标,包括减少数据中心运营成本,通过智能虚拟机迁移提高系统性能,提高能源效率等。此外,Watcher可供用户定制丰富的资源优化目标与策略算法。
Notes:
Watcher支持API微转换。
Watcher使用Nova通知来更新其内部计算CDM(群集数据模型)。
根据审计范围构建计算CDM。
将start_time和end_time字段添加到CONTINUOUS审计。
添加了新的配置选项'action_execution_rule'。
最后是前十代码的贡献图
刚刚,OpenStack 第 19 个版本来了,附28项特性详细解读!
翻译自:
1.https://www.eweek.com/cloud/openstack-stein-improves-cloud-identity-and-orchestration
2.https://releases.openstack.org/stein/highlights.html
翻译整理:祝祥 新钛云服运维架构师
十年运维经验,曾任刻通云运维工程师、微烛云和某互联网金融平台首席运维架构师。拥有OpenStack、CCIE、阿里云、ZStack等技术认证。有上万台云主机,PB级别分布式存储运维经验。熟悉各种虚拟化技术,软硬件,网络,容器编排等技术,拥有python开发经验。热爱各种开源技术。