V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
gok8s
V2EX  ›  Kubernetes

私有化部署与运维 Kubernetes 推荐方案

  •  3
     
  •   gok8s · 2019-12-16 22:28:40 +08:00 · 11322 次点击
    这是一个创建于 1586 天前的主题,其中的信息可能已经有所发展或是发生改变。

    无需重复造轮子,在 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 版本。

    20 条回复    2020-04-07 22:09:03 +08:00
    lazyyz
        1
    lazyyz  
       2019-12-16 23:07:34 +08:00 via Android
    收藏备用,最近在用 docker 跑应用
    Zzdex
        2
    Zzdex  
       2019-12-16 23:33:42 +08:00 via iPhone
    设计是真的好看
    chendeshen
        3
    chendeshen  
       2019-12-16 23:52:09 +08:00 via Android
    这款值得一试
    so1n
        4
    so1n  
       2019-12-16 23:57:10 +08:00 via Android
    看着 ui 都觉得棒
    aheadlead
        5
    aheadlead  
       2019-12-17 00:33:37 +08:00
    太牛逼了…
    ss098
        6
    ss098  
       2019-12-17 00:36:53 +08:00 via Android
    最近在研究 Kubernetes,KubeShape 对比下来确实很厉害。

    什么时候可以支持 Kubernetes 1.16 以上的版本啊,测试用的 microk8s 在 1.15 及以下不支持集群模式,想试试集群还比较困难。
    aaahhh123
        7
    aaahhh123  
       2019-12-17 00:38:17 +08:00
    6666
    ArJun
        8
    ArJun  
       2019-12-17 01:01:56 +08:00
    支持,界面做的比较好
    scyuns
        9
    scyuns  
       2019-12-17 01:05:47 +08:00 via Android
    不错不错
    ss098
        10
    ss098  
       2019-12-17 01:07:46 +08:00 via Android
    😂 忽然发现我楼上的名字拼错了
    nrtEBH
        11
    nrtEBH  
       2019-12-17 01:08:26 +08:00
    青云出品的嘛
    mritd
        12
    mritd  
       2019-12-17 07:01:50 +08:00 via iPhone
    其实我感觉如果这玩意以 dashboard 的方式对接已有 k8s 集群倒是感觉不错,直接用它来部署集群倒是有点门槛,毕竟每个公司的集群状态都不同,我们的 rbac etcd 加密 啊还有 kubelet 参数什么的都得处理,这个一把梭我们是有点子怂的
    gok8s
        13
    gok8s  
    OP
       2019-12-17 22:10:56 +08:00
    @mritd KubeSphere 支持部署在 Kubernetes 之上的,你去试试 “Install KubeSphere on Kubernetes”,还可以部署在 GKE、AKS、TKE 那些托管 K8s 上
    gok8s
        14
    gok8s  
    OP
       2019-12-17 22:12:09 +08:00
    @ss098 下个版本呀,预计 2 周内
    mritd
        15
    mritd  
       2019-12-18 18:47:29 +08:00
    @gok8s #13 刚看了一下 helm 3 已经没有 Tiller 了,不知道 KubeSphere 会不会受到影响
    mritd
        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": []}
    ```

    没测试过这个操作么?
    mritd
        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": []}
    ```
    better0332
        18
    better0332  
       2020-03-08 22:53:24 +08:00
    可以看看:cubepaas.com
    agentl565
        19
    agentl565  
       2020-03-14 16:24:54 +08:00
    blog.tyun.cn

    这里有不少 kubernetes 技术文章可以参考
    gok8s
        20
    gok8s  
    OP
       2020-04-07 22:09:03 +08:00
    你发的这不是商业产品么,是在蹭热点么?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   914 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 20:49 · PVG 04:49 · LAX 13:49 · JFK 16:49
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.