morize
V2EX  ›  问与答

请问如何规划 12 台普通 PC 组成 k8s 集群?

  •  
  •   morize · Jan 4, 2020 · 3442 views
    This topic created in 2325 days ago, the information mentioned may be changed or developed.
    实验室有 12 台 i7-7700, 16G, 4T 的 PC 闲置,想组一个 k8s 集群跑 jupyterhub 和 spark。
    目前先拿两台试装遇到一个问题,请教一下各位大佬。
    我想要为集群配置持久存储卷,目前通过 google 了解到可以用 NFS 或 Ceph 存储集群的方式。

    NFS 的方式根据我查阅到的资料和我实作下来的理解,请问是不是只能用一台电脑提供储存?
    Ceph 集群的方式,目前还没有试验成功,但是也苦于如果建 Ceph 集群,就要分几台电脑专门跑,造成资源浪费。

    请问各位配置集群节点分布的建议,甚至是其他的解决方案?感谢!
    16 replies    2020-01-05 17:39:05 +08:00
    F281M6Dh8DXpD1g2
        1
    F281M6Dh8DXpD1g2  
       Jan 4, 2020 via iPhone
    跑 spark 还不如装个 hadoop
    存储执行一块解决了
    morize
        2
    morize  
    OP
       Jan 4, 2020
    @liprais 本来已经有一个 spark 集群了,只是查资料的时候发现 spark 新版支持了 k8s 所以才列为日后用途之一。目前规划另一个主要用途就是建 jupyterhub 给 lab 同学和老师一起用,个人顺便学习一下新技术。
    ArJun
        3
    ArJun  
       Jan 4, 2020
    感觉这么多机器,性能有点过剩吧
    abbottcn
        4
    abbottcn  
       Jan 4, 2020 via iPhone
    你说的场景我不懂,但是用于高性能计算的集群,一般采用 NFS 方式,把存储共享给所有机器,至少其中一台机器承担 NFS 服务端,共享存储的快慢取决于存储的读写和网络带宽。 其他未涉及过,不晓得。
    momocraft
        5
    momocraft  
       Jan 4, 2020
    k8s 支持不少种 volume 啊 只提这两个有什么原因吗?
    xupefei
        6
    xupefei  
       Jan 4, 2020
    NFS 可以换成 HDFS,多跑几个 datanode 做负载平衡。
    你甚至可以每台机器在 k8s 里面跑 HDFS datanode + Spark worker。

    操作 HDFS 可以在 k8s mater 上进行,用 port-forward 把端口搞出来就可以了。
    xupefei
        7
    xupefei  
       Jan 4, 2020
    另外我推荐装一个 https://rancher.com ,贼好用
    morize
        8
    morize  
    OP
       Jan 4, 2020
    @momocraft 因为刚刚才开始接触 k8s,很多东西不了解,google 到的资料都是这两种较多,我的出发点是不浪费 worker node 的硬盘空间,想找一种方法把所有的硬盘交给 master node 按需分配的方法。如果有其他的方法,我也想尝试看看。
    morize
        9
    morize  
    OP
       Jan 4, 2020
    @xupefei 感谢,我来研究一下
    mikumkf
        10
    mikumkf  
       Jan 5, 2020
    我这边的需求的安装基于 K8S 的 OpenPAI 系统并且分配 GPU,但是没折腾好,老哥交流下?
    limao693
        11
    limao693  
       Jan 5, 2020 via iPhone
    第一反应是这些机器装个 openstack,然后就可以起任意规格的虚拟机了
    lhx2008
        12
    lhx2008  
       Jan 5, 2020 via Android
    NFS 不太灵活,ceph 吧,应该可以不要配备份
    tyit
        13
    tyit  
       Jan 5, 2020 via iPhone
    12=3 台 K8s Master 节点,3 台 Ceph 节点,剩余的 K8s Worker 节点?
    morize
        14
    morize  
    OP
       Jan 5, 2020
    @limao693 感谢提供思路,看了一下这个还蛮实用的,之前一直用 gcp 和 aws 的云主机,原来这种 IaaS 自己也能搞出来👍🏻
    morize
        15
    morize  
    OP
       Jan 5, 2020
    @mikumkf
    折腾无止境,一起进步吧。不过 GPU 分配的平台听起来挺酷的,先搞完现在的有机会再学习。
    goodryb
        16
    goodryb  
       Jan 5, 2020
    如果只是跑 k8s,没必要再套一层 OpenStack,性能损耗

    我理解部署 k8s 和 ceph 可以复用机器吧,ceph 主要用存储,k8s 用计算资源
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5891 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 51ms · UTC 01:41 · PVG 09:41 · LAX 18:41 · JFK 21:41
    ♥ Do have faith in what you're doing.