支持集群异常状态诊断及修复,支持Istio,KubeOperator v3.5.0发布丨Release Notes

发布于 2021年01月18日

1月18日,开源容器平台KubeOperator发布v3.5.0版本。在这一版本中,KubeOperator新增了集群异常状态诊断及修复功能,其他新增功能包括微服务治理新增支持Istio、在自动模式下创建主机支持IP池、支持自定义Ansible任务超时时间和并发参数、版本管理支持上传Kubernetes离线包、集群工具栏支持Grafana等。

新增功能

1. 支持集群异常状态诊断及修复

通过KubeOperator的集群状态诊断功能,可以快速诊断出集群的异常问题。例如,Kubernetes集群Token出错,无法获取Token、集群界面无法打开、Web Kubectl无法访问、APIServer服务异常等问题,同时还可以对诊断出来的异常问题进行一键修复。

▲图1 Kubernetes 集群诊断

2. 支持Istio v1.8.0 

Istio是一个开源的独立服务网格,可以为您成功运行分布式微服务架构提供所需的基础。随着各组织越来越多地采用云平台,开发者必须使用微服务设计架构以实现可移植性,而运营者必须管理包含混合云和多云部署的大型分布式部署。

Istio采用一种一致的方式来保护、连接和监控微服务,降低了管理微服务部署的复杂性。在KubeOperator v3.5.0版本中,用户可以直接配置使用Istio。目前KubeOperator通过Helm安装Istio核心组件istio-pilot、istio-ingress和istio-egress。

▲图2 配置Istio

3. 自动模式创建主机支持IP池

在自动部署模式下,不论是使用OpenStack、VMware vSphere,还是FusionCompute,通过IP池功能,可以更加合理、有效地管理可用IP地址,同时还可以手动控制单个IP地址是否可用,从而避免IP网段中因部分IP地址重复配置导致IP冲突等网络问题。

▲图3 IP池IP管理

4. 支持自定义Ansible任务超时时间和并发参数

通过修改KubeOperator安装目录中的conf/kobe.yml文件,可以自定义Ansible任务超时时间和任务执行的并发数量。修改Ansible任务超时时间,可以避免因为硬件或网络环境慢导致的任务执行失败。修改并发数可以有效缩短Kubernetes集群任务的执行时间,例如集群安装、集群扩容、集群升级等任务。

参数配置如下:

$ cat conf/app.yamljob:  timeout: 60 #任务超时时间$ cat conf/kobe.ymlansible:  forks: 20   # 任务并发数
▲图4 Ansible参数配置

5. 版本管理支持上传Kubernetes离线包

在离线网络环境下,默认KubeOperator离线包只包含两个最新版本,如果想要使用低版本的离线包对之前的Kubernetes集群进行扩容等操作,用户可以通过提供的构建脚本在公网环境中自动构建Kubernetes对应版本的离线包,之后将完整的Kubernetes离线包拷贝到内网环境中的KubeOperator服务器上进行上传。

详细操作请参考以下链接:

参考文档:https://kubeoperator.io/docs/user_manual/version/

项目地址:https://github.com/KubeOperator/K8SVersionManage.git

▲图5 Kubernetes版本管理

6. 支持Grafana

在KubeOperator v3.5.0版本中,支持通过KubeOperator自动化部署Grafana,启用Grafana之前需要先启用Prometheus,将Prometheus作为Grafana的数据源。

开启之后用户还可以访问、自定义配置Prometheus和Grafana,之后通过Grafana的可视化UI快速查看Kubernetes集群的监控信息。

▲图6 工具栏启用Grafana

优化改进

■ 优化Kubernetes集群的升级流程;

■ 优化Kubernetes集群创建时的选项;

■ 优化用户密码加密方式;

■ 优化集群Namespace的删除操作;

■ 优化集群安装、升级时错误信息的显示;

■ vSphere模版支持多磁盘;

■ 创建可用区时,vSphere Datastore支持多选;

■ 手动集群卸载和创建存储供应商时均可查看日志;

■ 备份账号授权支持项目多选。

Bug修复

■ 解决了集群节点操作系统为CentOS 7.4时,集群安装失败的问题;

■ 解决了FusionCompute创建虚机失败的问题;

■ 解决了SSH到安装有Helm3的Master节点提示Warning信息的问题;

■ 解决了ARM64离线包缺失Registry镜像的问题;

■ 解决了OceanStor存储类初始化失败的问题。