关于 KubeSphere
CNCF 认证的 Kubernetes 主流开源发行版之一,在 Kubernetes 之上提供多种以容器为资源载体的业务功能模块,如多租户管理、集群运维、应用管理、DevOps、微服务治理等功能。 KubeSphere® 初始安装请参考安装部署指南
如何获取 v3.1.0
新功能及增强
多集群管理
- Member 集群管理服务轻量化,移除 Redis、OpenLDAP 等组件 #3056
- 简化添加集群的操作,并验证集群配置(如 jwtSecret)有效性 #3232
- 可按需配置集群控制器同步时间段 #3213
- 重构集群控制器,优化逻辑 #3234
- 支持以高可用方式运行 Tower 管理和代理服务 #31
- 升级工具箱中的 Kubectl 且与 Kubernetes 集群版本保持一致 #3103
边缘节点管理
#3070
集成 KubeEdge- 支持 KubeEdge 云端组件的安装部署
- 支持 KubeEdge 边缘节点的添加
- 支持边缘节点的日志和监控数据采集
- 支持边缘节点网络配置自动化的加入和退出
- 边缘节点在加入集群时,支持自动添加污点
- 支持通过添加 nodeAffinity 禁止云端工作负载(如 DaemonSet)调度到边缘节点 #1295 #1297 1300
- 支持调度工作负载至边缘节点
认证和权限管理
- 新用户首次登录,提示修改初始密码
- 通过第三方平台登录 KubeSphere,需确认帐户信息
- 支持 CAS 身份提供商 #3047
- 支持 OIDC 身份提供商 #2941
- 支持 IDaaS (Alibaba Cloud Identity as a Service) 身份提供商 #2997
- 支持 Service Account 管理 #3211
- 改善 LDAP 认证插件,支持 LDAPS 和搜索过滤 #2970 #3766
- 改善认证插件,简化身份提供商的配置方式 #2970
多租户管理
网络
可观测性
- 优化集成已有 Prometheus 服务对接方式 #3068 #1164 Guide
- 新增 Thanos Ruler (Thanos v0.18.0) 用于新版告警
- 升级 Prometheus 至 v2.26.0
- 升级 Prometheus Operator 至 v0.42.1
- 升级 kube-state-metrics 至 v1.9.7
- 升级 metrics-server 至 v0.4.2
- 升级 Notification Manager 至 v1.0.0 Releases
- 升级 FluentBit Operator 至 v0.5.0 Releases
- 升级 FluentBit 至 v1.6.9
- 升级 KubeEvents 至 v0.2.0
- 升级 Kube-Auditing 至 v0.1.2
监控
- 支持图形化方式配置 ServiceMonitor #1031
- 支持 PromQL Auto-completion 和 Syntax Highlighting #1307
- 支持集群层级的自定义监控 #3193
- kube-scheduler 与 kube-controller-manager 数据抓取由 HTTP 端口 10251/10252 改为 HTTPS 端口 10259/10257 #1367
告警
通知管理
- 新增钉钉、企业微信、Slack 和 Webhook 通知方式,提供图形化管理 #3066
日志
DevOps
- 支持 GitLab 多分支流水线 #3100
- 可同时启动并运行多条流水线 #1811
- 支持流水线复制 #3053
- 新增权限可控的流水线审核机制 #2483 #3006
- 访问 DevOps 工程首页可查看流水线运行状态 #3007
- 支持通过流水线 Tag 触发流水线运行 #3051
- 支持 S2I Webhook #6
- 优化在输入错误的流水线定时参数时的提示信息 #2919
- 优化创建流水线的交互体验 #1283
- 优化 S2I 错误提示信息 #140
- 升级 Jenkins 至 2.249.1 #2618
- 调整 Jenkins 部署方式为 Jenkins Distribution #2182
应用商店及应用
微服务治理
- 支持图形化流量方向检测,图像化方式显示应用 (Composing App) 流量的流入/流出 #3153
- 支持 Kiali 附加组件,用户可以通过 Kiali 直接管理 Istio #3106
- 支持 NGINX Ingress Gateway 的监控,新增 NGINX Ingress Controller 的监控指标 #1205
- 支持在创建应用时添加应用路由 #1426
- 升级 Istio 至 1.6.10 #3326
计量计费
- 支持集群、企业空间和应用级别的应用消耗量统计 #3062
- 通过 ConfigMap 方式可为计量资源配置计费单价
UI 页面优化
- 优化首页的 Loading 效果
- 优化 kubectl 为独立页面
- 优化可视化流水线的配置显示
- 优化流水线的运行状态的错误显示
- 优化代码仓库的筛选方式
- 优化节点调度策略的设置方式
- 优化部署模式的设置方式
重要的技术调整
- 升级 Kubernetes 版本依赖,从 v1.17 调整至 v1.18 #3274
- 升级 Prometheus client_golang 版本依赖至 v1.5.1,升级 Prometheus 版本依赖至 v1.8.2 3097
- 基于 CRD 重构应用管理框架 OpenPitrix 并修复原有架构导致的问题 #3036 #3001 #2995 #2981 #2954 #2951 #2783 #2713 #2700 #1903
- 告警架构调整,不再使用 MySQL、Redis 和 etcd 等组件以及旧版告警规则格式。改为使用 Thanos Ruler 配合 Prometheus 内置告警规则进行告警管理,新版告警兼容 Prometheus 告警规则。KubeSphere v3.0.0 中旧版告警规则会在升级到 v3.1.0 后自动迁移为新版告警规则
- 通知架构调整,不再使用 MySQL、Redis 和 etcd 等组件。改为使用 Notification Manager 以 CRD 的方式配置通知渠道。通知渠道设置由告警规则级别调整为集群级别,且多集群仅需设置一次通知渠道
废弃或移除的功能
- 依赖 MySQL、Redis 和 etcd 等组件的旧版告警与通知被新版告警与通知替代
- 容器终端 WebSocket API 发生变更 #3041
问题修复
- 修复帐户无法登录的问题 #3132 3357
- 修复容器日志不支持ANSI Color的问题 #1322
- 修复以
kube
起始命名的项目(即 Namespace)下的微服务应用无法获取 Istio 相关的监控数据的问题 #3126 - 修复 Viewer 可进入容器终端的安全隐患 #3041
- 修复级联资源无法被删除的问题 #2912
- 修复 Kubernetes 1.19 及以上版本无法正常使用的问题 #2928 #2928
- 修复微服务应用监控按钮无效的问题 #1394
- 修复灰度发布的服务名不能与微服务应用的标签名相同的问题 #3128
- 修复微服务应用状态无法更新的问题 #3241
- 修复 Host 和 Member 集群在有同名企业空间的情况下,Member 集群下的企业空间被删除的问题 #3169
- 修复通过 Proxy 方式下联邦多集群连接断开的问题 #3202
- 修正多集群状态显示问题 #3135
- 修复 DevOps 流水线中无法部署工作负载的问题 #3112
- 修复 DevOps 工程管理员无法下载 Artifact 的问题 #3088
- 修复 DevOps 无法创建流水线的问题 #3105
- 修复多集群下流水线触发的问题 #2626
- 修复某些情况下编辑流水线时导致的数据丢失问题 #1270
- 修复点击 Docker Container Registry Credentials 时的报错问题 #1269
- 修复英文控制台显示中文代码质量检查结果的问题 #1278
- 修复 Jenkinsfile 中包含布尔值时的显示报错问题 #3043
- 修复当 PVC 不含有
StorageClassName
时存储管理页面无法显示的问题 #1109
计量计费
多通知渠道
流水线模板