一、关于 KubeOperator
1 什么是 KubeOperator?
KubeOperator 是一个开源项目,在离线网络环境下,通过可视化 Web UI 在 VMware、Openstack 或者物理机上规划、部署和运营生产级别的 Kubernetes 集群。KubeOperator 是 Jumpserver 明星开源团队在 Kubernetes 领域的的又一全新力作。
注: KubeOperator 已通过云原生基金会(CNCF)的 Kubernetes 软件一致性认证。
2 KubeOperator 的整体架构
KubeOperator 使用 Terraform 在 IaaS 平台上自动创建主机(用户也可以自行准备主机,比如物理机或者虚机),通过 Ansible 完成自动化部署和变更操作,支持 Kubernetes 集群 从 Day 0 规划,到 Day 1 部署,到 Day 2 运营的全生命周期管理。
3 KubeOperator 的技术优势
- 简单易用:提供可视化的 Web UI,极大降低部署和管理门槛;
- 离线部署:持续更新包括 Kubernetes 及常用组件(即内置应用)的离线包;
- 按需创建:调用云平台 API,一键快速创建和部署 Kubernetes 集群;
- 按需伸缩:快速伸缩 Kubernetes 集群,优化资源使用效率;
- 按需修补:快速升级和修补 Kubernetes 集群,并与社区最新版本同步,保证安全性;
- 自我修复:通过重建故障节点确保集群可用性;
- 全栈监控:提供从Pod、Node到集群的事件、监控、告警、和日志方案;
- Multi-AZ 支持:通过把 Kubernetes 集群 Master 节点分布在不同的故障域上确保的高可用;
4 KubeOperator 的功能列表
集群 Day 0 规划 | 集群模式 | 1 个 Master 节点 n 个 Worker 节点模式:适合开发测试用途 |
3 个 Master 节点 n 个 Worker 节点模式:适合生产用途 | ||
计算方案 | 独立主机:支持自行准备的虚机和物理机 | |
vSphere 平台:支持自动创建主机(使用 Terraform) | ||
Openstack 平台:支持自动创建主机 (使用 Terraform) | ||
存储方案 | 独立主机:支持 NFS / Ceph RBD (通过 Rook) | |
vSphere 平台:支持 vSphere Datastore (vSAN 及 vSphere 兼容的集中存储) | ||
Openstack 平台:支持 Openstack Cinder (Ceph 及 Cinder 兼容的集中存储) | ||
网络方案 | 支持 Flannel / Calico 网络插件 | |
支持通过 F5 Big IP 对外暴露服务 | ||
支持 Traefik | ||
支持 CoreDNS | ||
操作系统 | 支持 CentOS 7.4 / 7.5 / 7.6 / 7.7 | |
集群 Day 1 部署 | 部署 | 提供离线环境下的完整安装包 |
支持可视化方式展示部署过程 | ||
支持一键自动化部署(使用 Ansible) | ||
集群 Day 2 运营 | 管理 | 内置 K8s 官方的 Dashboard 管理应用 |
内置 Weave Scope 管理应用 | ||
提供 Web Kubectl 界面 | ||
内置 Helm | ||
可观察性 | 内置 Promethus,支持对集群、节点、Pod、Container的全方位监控和告警 | |
内置 Loki 日志方案 | ||
内置 Grafana 作为监控和日志展示 | ||
在 Web UI 上面查看集群事件,并可以通过钉钉、微信进行通知; | ||
升级 | 支持集群升级 | |
伸缩 | 支持增加或者减少 Worker 节点 | |
备份 | 支持 etcd 定期备份 | |
合规 | 使用 Sonobuoy 进行合规检查并可视化展示结果 | |
应用商店 | 集成 KubeApps 应用商店 |
具体版本路线图请参考:Roadmap
当前内容版权归 KubeOperator 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 KubeOperator .