3月15日,开源容器平台KubeOperator发布v3.6.0版本。在这一版本中,KubeOperator新增了对Kubernetes v1.20版本的支持,集群部署支持x86-64和ARM64的混合部署。其中,ARM64支持使用Containerd,且可根据CIDR动态计算集群节点数量。同时,KubeOperator v3.6.0优化了存储供应商删除逻辑,支持主机批量更新。

新增功能

1. 集群部署支持x86-64和ARM64混合部署

在KubeOperator v3.6.0版本中,支持部署同时包含x86-64架构和ARM64架构节点的Kubernetes集群,在此集群上您可以同时运行x86-64架构和ARM64架构的应用。使用该功能前,需要准备对应CPU架构的Nexus仓库,以便于在集群部署时可以下载到对应架构的资源,之后在KubeOperator系统设置添加不同架构的仓库信息即可。

例如:

① 可以分别部署两台不同架构的KubeOperator(一台为ARM64架构,一台为x86-64架构);

② 使用x86-64架构的主机作为日常操作的主机;

③ 将ARM64架构的主机作为ARM64仓库使用,并添加到x86-64的KubeOperator系统设置中。

可以在x86平台编译arm类型的容器镜像吗 arm运行x86容器_集群部署

图1 添加不同CPU架构的仓库

可以在x86平台编译arm类型的容器镜像吗 arm运行x86容器_开源_02

图2 查看已添加的仓库

2. 支持Kubernetes v1.20版本

KubeOperator v3.6.0支持Kubernetes v1.20.4版本。注意:Kubernetes不支持跨大版本升级,即不支持将v1.18.x的Kubernetes集群升级至v1.20.4。

可以在x86平台编译arm类型的容器镜像吗 arm运行x86容器_容器_03

图3 Kubernetes版本管理

3. 针对ARM64架构支持Containerd集成

KubeOperator v3.6.0版本支持使用ARM64架构的Containerd部署Kubernetes集群。

4. 集成vSphere CSI存储插件

在KubeOperator v3.6.0版本中,vSphere的存储解决方案由In-tree存储插件更换为Out-of-tree存储插件。关于这两种方式的具体区别如下方表格所示:

可以在x86平台编译arm类型的容器镜像吗 arm运行x86容器_容器_04

5. 集群监控页面重构

KubeOperator v3.6.0版本重构了Kubernetes集群监控页面,同时去除KubeOperator安装时的Grafana,安装包更加轻量化,用户可以通过集群节点、开始时间和结束时间查询监控数据。

可以在x86平台编译arm类型的容器镜像吗 arm运行x86容器_开源_05

图4 KubeOperator集群节点监控页面

优化改进

■ 移除Grafana,添加独立的监控页面;

■ 集群部署支持自定义Yum仓库;

■ 支持根据CIDR动态计算Kubernetes集群节点数量;

■ 支持升级集群的工具组件,例如Kubeapps、Grafana等;

■ Kubernetes版本管理优化(持久化存储与集群版本绑定、详情页显示工具和持久化存储的版本);

■ 支持集群强制删除;

■ 支持存储卷和存储类删除;

■ 主机批量导入功能优化;

■ 集群添加节点功能优化;

■ 创建存储类功能优化;

■ 创建存储提供商任务状态实时同步;

■ 网络插件安装提示信息国际化;

■ 调用Kubernetes API等操作添加到系统日志;

■ 配置文件中密文存储工作密钥和密码;

■ 支持密码多级加密。

BUG修复

■ 解决了删除存储类失败的问题;

■ 解决了OpenStack环境中机器创建失败的问题。