无需重复造轮子,在 V2EX 给大家推荐非常成熟并且产品化程度高的两个开源项目: KubeSphere 容器平台 + LB 插件 Porter,两个项目都是完全开源的。
KubeSphere 是一个开源的以应用为中心的容器平台,可以部署在 Linux 和 K8s 之上,产品化程度高,也是一个全栈化的平台,覆盖了 Kubernetes 资源的可视化管理、Helm 应用商店、基于 Jenkins 的 DevOps 系统、内置多租户与多维度的监控日志与告警系统(可观察性强)、基于 Istio 的微服务治理与链路追踪,这些功能都是可插拔的。
KubeSphere Installer 不仅能够快速部署一套 Kubernetes 集群环境,还能根据需要开启上述这些可插拔的功能,能够很好地帮助企业在私有场景下快速构建基于云原生技术栈的应用管理平台。
Porter 是一款适用于物理机部署 Kubernetes 的负载均衡器,该负载均衡器使用物理交换机实现,利用 BGP 和 ECMP 从而达到性能最优和高可用性。我们知道在云上部署的 Kubernetes 环境下,通常云服务厂商会提供 cloud LB 插件暴露 Kubernetes 服务到外网,但在物理机部署环境下由于没有云环境,服务暴露给外网非常不方便,Porter 是一个提供用户在物理环境暴露服务和在云上暴露服务一致性体验的插件。
该插件提供两大功能模块:
KubeSphere + Porter 会是最适用于在 IDC 环境下自建 Kubernetes 与可视化运维应用容器的方案,支持在线与离线部署,支持 CPU 与 GPU 节点,支持无缝升级平台本身与 K8s 版本。
![]() | 1 lazyyz 2019-12-16 23:07:34 +08:00 via Android 收藏备用,最近在用 docker 跑应用 |
![]() | 2 Zzdex 2019-12-16 23:33:42 +08:00 via iPhone 设计是真的好看 |
![]() | 3 chendeshen 2019-12-16 23:52:09 +08:00 via Android 这款值得一试 |
![]() | 4 so1n 2019-12-16 23:57:10 +08:00 via Android 看着 ui 都觉得棒 |
![]() | 5 aheadlead 2019-12-17 00:33:37 +08:00 太牛逼了… |
![]() | 6 ss098   2019-12-17 00:36:53 +08:00 via Android 最近在研究 Kubernetes,KubeShape 对比下来确实很厉害。 什么时候可以支持 Kubernetes 1.16 以上的版本啊,测试用的 microk8s 在 1.15 及以下不支持集群模式,想试试集群还比较困难。 |
![]() | 7 aaahhh123 2019-12-17 00:38:17 +08:00 6666 |
![]() | 8 ArJun 2019-12-17 01:01:56 +08:00 支持,界面做的比较好 |
![]() | 9 scyuns 2019-12-17 01:05:47 +08:00 via Android 不错不错 |
![]() | 10 ss098 2019-12-17 01:07:46 +08:00 via Android 忽然发现我楼上的名字拼错了 |
![]() | 11 nrtEBH 2019-12-17 01:08:26 +08:00 青云出品的嘛 |
![]() | 12 mritd 2019-12-17 07:01:50 +08:00 via iPhone 其实我感觉如果这玩意以 dashboard 的方式对接已有 k8s 集群倒是感觉不错,直接用它来部署集群倒是有点门槛,毕竟每个公司的集群状态都不同,我们的 rbac etcd 加密 啊还有 kubelet 参数什么的都得处理,这个一把梭我们是有点子怂的 |
![]() | 13 gok8s OP @mritd KubeSphere 支持部署在 Kubernetes 之上的,你去试试 “Install KubeSphere on Kubernetes”,还可以部署在 GKE、AKS、TKE 那些托管 K8s 上 |
![]() | 16 mritd 2019-12-18 22:41:36 +08:00 @gok8s #14 有点子逗了... 看了下里面是个 shell operator,基于 alpine 打得镜像,operator 使用了 ansible,然后.... ```sh fatal: [localhost]: FAILED! => {"changed": true, "cmd": "/usr/local/bin/helm list\n", "delta": "0:00:01.145946", "end": "2019-12-18 10:54:57.691725", "msg": "non-zero return code", "rc": 1, "start": "2019-12-18 10:54:56.545779", "stderr": "E1218 10:54:57.684540 107 portforward.go:331] an error occurred forwarding 39177 -> 44134: error forwarding port 44134 to pod 6c69ac4945ca7f15ecbae79939ba2a00baf72f7ca627c091bc6755d0e8722334, uid : unable to do port forwarding: socat not found.\nError: transport is closing", "stderr_lines": ["E1218 10:54:57.684540 107 portforward.go:331] an error occurred forwarding 39177 -> 44134: error forwarding port 44134 to pod 6c69ac4945ca7f15ecbae79939ba2a00baf72f7ca627c091bc6755d0e8722334, uid : unable to do port forwarding: socat not found.", "Error: transport is closing"], "stdout": "", "stdout_lines": []} ``` 没测试过这个操作么? |
![]() | 17 mritd 2019-12-18 22:42:21 +08:00 再测试下 markdown... 难不成必须加空格? ``` sh fatal: [localhost]: FAILED! => {"changed": true, "cmd": "/usr/local/bin/helm list\n", "delta": "0:00:01.145946", "end": "2019-12-18 10:54:57.691725", "msg": "non-zero return code", "rc": 1, "start": "2019-12-18 10:54:56.545779", "stderr": "E1218 10:54:57.684540 107 portforward.go:331] an error occurred forwarding 39177 -> 44134: error forwarding port 44134 to pod 6c69ac4945ca7f15ecbae79939ba2a00baf72f7ca627c091bc6755d0e8722334, uid : unable to do port forwarding: socat not found.\nError: transport is closing", "stderr_lines": ["E1218 10:54:57.684540 107 portforward.go:331] an error occurred forwarding 39177 -> 44134: error forwarding port 44134 to pod 6c69ac4945ca7f15ecbae79939ba2a00baf72f7ca627c091bc6755d0e8722334, uid : unable to do port forwarding: socat not found.", "Error: transport is closing"], "stdout": "", "stdout_lines": []} ``` |
![]() | 18 better0332 2020-03-08 22:53:24 +08:00 可以看看:cubepaas.com |
![]() | 19 agentl565 2020-03-14 16:24:54 +08:00 |
![]() | 20 gok8s OP 你发的这不是商业产品么,是在蹭热点么? |