私有化部署与运维 Kubernetes 推荐方案 https://www.v2ex.com/t/629625#reply7
https://www.v2ex.com/t/629625#reply7
无需重复造轮子,在 V2EX 给大家推荐非常成熟并且产品化程度高的两个开源项目: KubeSphere 容器平台 + LB 插件 Porter,两个项目都是完全开源的。
KubeSphere 有什么优势
KubeSphere 是一个开源的以应用为中心的容器平台,可以部署在 Linux 和 K8s 之上,产品化程度高,也是一个全栈化的平台,覆盖了 Kubernetes 资源的可视化管理、Helm 应用商店、基于 Jenkins 的 DevOps 系统、内置多租户与多维度的监控日志与告警系统(可观察性强)、基于 Istio 的微服务治理与链路追踪,这些功能都是可插拔的。
KubeSphere Installer 不仅能够快速部署一套 Kubernetes 集群环境,还能根据需要开启上述这些可插拔的功能,能够很好地帮助企业在私有场景下快速构建基于云原生技术栈的应用管理平台。
Porter 是什么
Porter 是一款适用于物理机部署 Kubernetes 的负载均衡器,该负载均衡器使用物理交换机实现,利用 BGP 和 ECMP 从而达到性能最优和高可用性。我们知道在云上部署的 Kubernetes 环境下,通常云服务厂商会提供 cloud LB 插件暴露 Kubernetes 服务到外网,但在物理机部署环境下由于没有云环境,服务暴露给外网非常不方便,Porter 是一个提供用户在物理环境暴露服务和在云上暴露服务一致性体验的插件。
该插件提供两大功能模块:
- LB controller 和 agent: controller 负责同步 BGP 路由到物理交换机; agent 以 DaemonSet 方式部署到节点上负责维护引流规则;
- EIP service,包括 EIP pool 管理和 EIP controller,controller 会负责更新服务的 EIP 信息。
自建 Kubernetes 最佳方案
KubeSphere + Porter 会是最适用于在 IDC 环境下自建 Kubernetes 与可视化运维应用容器的方案,支持在线与离线部署,支持 CPU 与 GPU 节点,支持无缝升级平台本身与 K8s 版本。