有没有什么好的本地集群方案? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
cocong
V2EX    程序员

有没有什么好的本地集群方案?

  •  
  •   cocong
    hzh-cocong 2022-05-04 23:13:05 +08:00 4628 次点击
    这是一个创建于 1324 天前的主题,其中的信息可能已经有所发展或是发生改变。

    本人本地开发测试通常是用 Docker ,虽然 Docker 轻量,但那是在 Docker 里面装的环境轻量,Docker 本身却是个庞然大物,每次我要启动 Nginx ,都要先启动这个庞然大物,这我电脑内存不够,虽然说有虚拟内存,但是我心理就是有点膈应。

    后来用 VirtualBox ,这个后台运行其实是很省内存的,不过我也就学习 Linux 的时候用。还有,这玩意很不稳定,每次电脑升级,它总要出问题,隔段时间就得修修,浪费时间。

    所以最近就想着,能不能再买台电脑,甚至是多台电脑,来做测试机,以后要学习什么东西就不用在原有的电脑上装了,直接远程测试机,想怎么搞怎么搞,搞坏了就直接重装,不用有什么顾虑。

    其实用阿里云那些更合适,只是我觉得太贵了,我又不是天天用,浪费钱,而且我没有宽带,手机流量不多。大家有什么既便宜又省电的主机推荐吗?

    第 1 条附言    2022-05-05 18:42:24 +08:00
    感谢大家的推荐,目前收集到的方法有很多,这里总结一下:

    1. 自己买零件组装(优点是灵活,缺点是体积大,丑)
    2. 购买 deskmini / nuc 等迷你主机,即不带屏幕键盘(优点是体积小,缺点是价格要一两千,我是觉得还不够便宜,另外功耗也不知道怎么样)
    3. 树莓派 等开发板(没搞过,说不出有点,缺点是价格也不便宜,现在都涨到上千了,我记得我以前搜过只要一两百的,甚至几十都有,另外性能应该不行)
    4. 使用 Virtualbox 或 Docker 等虚拟化(优点是省钱,因为不需要额外购买设备,缺点是无法真实模拟集群环境(个人看法,现在还没试过))

    因为刚刚把 Virtualbox 修好了,暂时就不打算瞎搞了。个人还是推荐使用 Virtualbox ,直接后台运行只占用几百 M 的内存,不像 Docker 一启动就吃掉几个 G 。另外推荐一个自己开发的 Virtualbox Alfred 插件,用它可以很方便的后台开启和关闭虚拟机,GitHub 地址: https://github.com/hzh-cocong/VM-Manager
    54 条回复    2022-05-06 18:10:13 +08:00
    itechify
        1
    itechify  
    PRO
       2022-05-04 23:16:11 +08:00 via Android
    买个 E5 CPU 搞虚拟化?
    cocong
        2
    cocong  
    OP
       2022-05-04 23:18:01 +08:00
    @oneisall8955 光有 CPU 怎么跑?
    cocong
        3
    cocong  
    OP
       2022-05-04 23:19:30 +08:00
    便宜是为了能多买几台,省电是因为租房电费贵,希望可以一直开着。因为是远程使用,所以屏幕、音响、键盘什么的都不需要,但 CPU 和 内存肯定是要的。
    cocong
        4
    cocong  
    OP
       2022-05-04 23:20:50 +08:00
    有没有人这么搞过?这样学习 k8s ,Zookeeper 什么的就方便多了。
    hawei
        5
    hawei  
       2022-05-04 23:20:56 +08:00 via iPhone
    我是自己一台 Mac 有一台华硕笔记本作为堡垒机运行 ubuntu 做比较重的操作
    cocong
        6
    cocong  
    OP
       2022-05-04 23:23:10 +08:00
    @hawei 我也有一台联想的,用了十年了,现在跑不太动了,我总觉得电池要爆炸。
    lhx2008
        7
    lhx2008  
       2022-05-04 23:24:12 +08:00
    dockerd 不用多少资源吧,不至于
    hawei
        8
    hawei  
       2022-05-04 23:25:01 +08:00 via iPhone
    @hawei 基本上就当作常驻服务器 5200U 8G 内存 500g 固态 妥妥的
    itechify
        9
    itechify  
    PRO
       2022-05-04 23:25:24 +08:00 via Android
    @cocong 是啊,光有 CPU 怎么跑,还得买内存硬盘电源机箱啊
    cocong
        10
    cocong  
    OP
       2022-05-04 23:25:52 +08:00
    @lhx2008 其实也还好,但是真的很占内存,我电脑只有 16G ,真实后悔以前为了省钱,悔不当初啊。
    xQmQ
        11
    xQmQ  
       2022-05-04 23:26:13 +08:00 via iPhone
    树莓派或者那种开发板?这样行不行
    cocong
        12
    cocong  
    OP
       2022-05-04 23:27:25 +08:00
    @oneisall8955 你的意思是自己组装?没这个经验啊,不过感觉可以试试。或者有没有像 Mac mini 那种 mini 的主机,最主要是要便宜。
    cocong
        13
    cocong  
    OP
       2022-05-04 23:28:18 +08:00
    @xQmQ 可以吗?没试过,是个不错的想法。要是一百块一个那可以买十份,那玩集群就爽了。
    xQmQ
        14
    xQmQ  
       2022-05-04 23:43:54 +08:00 via iPhone
    @cocong #13 我的想法就是,看看开发板的硬件和配置,然后用那种 tf 卡统一拷环境。估计性能上不太行,但是能玩起来
    主要是我也没玩过开发板,不知道行不行
    itechify
        15
    itechify  
    PRO
       2022-05-04 23:58:57 +08:00 via Android
    @cocong 是的,自己组装。不过还要折腾虚拟化,pve 或 esxi 系统,还有功耗电费这方面需要考量值不值得。小白来说,学习成本比较高,毕竟连软硬件都是从头开始。如果没那么多服务,不如买个轻量云什么
    ration
        16
    ration  
       2022-05-05 00:13:20 +08:00 via Android
    docker 没占多少内存啊,16g 咋就不够用了?我以前买的服务器 1g 都能跑 docker 。你是 windows 环境吗
    musi
        17
    musi  
       2022-05-05 07:40:15 +08:00 via iPhone
    @cocong #13 树莓派现在已经炒到一千一个了吧
    ysicing
        18
    ysicing  
       2022-05-05 09:14:12 +08:00
    搞个 minipc 真香
    tqccc
        19
    tqccc  
       2022-05-05 09:21:11 +08:00 via Android
    我用 vagrant 管理本地多个虚拟机,但是需要 virtual box 或者 vmvare
    qping
        20
    qping  
       2022-05-05 09:25:13 +08:00
    配了一台 deskmini+5700g+64G 内存的主机,安装 pve ,费用大概是 4500
    zedpass
        21
    zedpass  
       2022-05-05 10:02:32 +08:00
    i5 12400 套装+64G 内存就行了
    fiveStarLaoliang
        22
    fiveStarLaoliang  
       2022-05-05 10:28:31 +08:00
    你可以看看阿里云的抢占式服务器,那个类型的价格只有普通的云服务器价格的五分之一,只要不是跑那种特别吃 CPU 和内存的应用,完全可以拿来做开发测试机
    Proxy233
        23
    Proxy233  
       2022-05-05 11:42:17 +08:00
    用 podman 代替 docker 试试呢,只是要自己监控状态,或者整个 service
    lujiaosama
        24
    lujiaosama  
       2022-05-05 12:31:43 +08:00
    deskmini 或者 nuc 可以看一下.
    libook
        25
    libook  
       2022-05-05 12:31:47 +08:00
    宿主机用的 Windows 或 MacOS 的话,因为原生不支持 Docker ,所以 Docker Desktop 方案实际上是在本地起了一个虚拟机跑了 Linux 来跑 Docker 的,性能差、bug 多、商业化私货多。

    如果你宿主机原本就是 Linux 发行版,跑 Docker 应该很快、很轻。
    Licsber
        26
    Licsber  
       2022-05-05 12:48:34 +08:00
    我是 4H4G 4Gswap 的小轻量跑了个 k3s 当测试环境用 如果需要更高配置的话估计价格够呛
    aloxaf
        27
    aloxaf  
       2022-05-05 15:16:24 +08:00
    启动 docker 很占内存?
    LZ 你该不会是在 macOS/Windows 上跑 docker 吧……
    ltkun
        28
    ltkun  
       2022-05-05 15:57:57 +08:00
    pve 试试 docker 其实本身可以集群的 只是不够智能
    caixiaomao
        29
    caixiaomao  
       2022-05-05 16:35:13 +08:00
    @tqccc vagrant 好用吗,尝试了一下,win11 下总是遇到很奇怪的问题,启动就卡很久,慢的要死,不知道是不是我使用姿势不对
    cocong
        30
    cocong  
    OP
       2022-05-05 17:11:44 +08:00
    @aloxaf 我是用 macOS ,难道真有人个人电脑完全用 Ubuntu ?
    defunct9
        31
    defunct9  
       2022-05-05 17:33:30 +08:00
    @cocong 我就是 Ubuntu
    defunct9
        32
    defunct9  
       2022-05-05 17:34:53 +08:00
    @cocong 鬼畜的是,我是用 CentOS 和 kvm|docker 生产虚机的,Ubuntu 下从不生产虚机。
    ykb8121
        33
    ykb8121  
       2022-05-05 17:36:59 +08:00
    推荐一下我自用的捡垃圾配置吧:
    1.主板:华南金牌 X99 + E5 2680V4 14 核 28 线程 2.4GHz +寒冰 A700 风扇 1000 块
    2.镁光内存 32G * 2 2133GHz 780 块
    3.二手 450w 电源 + 硬盘架 + NVS300 (亮机卡)+ 机箱(其实裸奔鞋盒也行) 300 块
    4.固态和硬盘看需求,个人鼓捣私有云买了比较大的容量,只是普通玩 docker 、k8s 一个 240g 固态装系统 + 一块机械足矣

    不算存储 2000 搞定,存储随便从旧电脑、垃圾机器上卸下来用就好

    然后就是搭 PVE ,虚拟化各种系统就完事了,我搭 3 台 CentOS 、一台 Ubuntu 、一台 openSUSE 、一台 win10 、一台 win11 内存还有 20 来个 G 、核数也完全够用,想怎么折腾都够了
    cocong
        34
    cocong  
    OP
       2022-05-05 17:41:31 +08:00
    @defunct9 那说明你平时还是 MacOS 用的多,不然你为啥不直接在 Ubuntu 上装 Docker 。所以这不能算是 个人电脑完全用 Ubuntu 。
    cocong
        35
    cocong  
    OP
       2022-05-05 17:42:11 +08:00
    @ykb8121 牛逼,不过我 Virtualbox 现在修好了,感觉还是不错了,暂时不瞎折腾了。
    aloxaf
        36
    aloxaf  
       2022-05-05 17:55:45 +08:00
    @cocong 那得看你怎么定义「完全用」了,至少日常开发都使用 Linux 的人应该不在少数。我个人是只有 wine 玩不了的游戏才会开 Windows 。

    其他供参考的数据:StackOverflow 2021 开发者调查中,主要使用 Linux 工作的开发者约占 1/4 ; Steam 每月调查中,Linux 份额为 1.14%( macOS 为 2.55%)
    wenwei1202k
        37
    wenwei1202k  
       2022-05-05 17:57:33 +08:00
    E3 v5 + x150 主板+ 32/64G ECC 内存,cpu 可以买不带集显的,买个亮机卡,安装完系统可以拔了显卡, 这样的配置现在成本很低,EXSI, PVE, KVM 虚拟化一下,就可以搞集群,这种搞着玩的集群实际没什么负载,虚拟化主要是内存需求大点,cpu 负载一般很低。CPU 买低功耗的,不带很多机械盘的话,功率也不高,三四十瓦左右的功率。 单机的风险就是如果搞了比较复杂的集群, 不小心搞掉电的时候,重启可能一切顺利,也可能一堆错误,不过搞集群了注定是折腾了。我现在的机子上就跑了 nas 和一个 k8s 集群用来测试用的。 其实只是测试的话,intel 的 nuc 也很方便, 搞 16G 的内存, 基本测试玩玩也够了,功率很低平常基本上小于 10W ( NUC5i5 )。
    junjie2028
        38
    junjie2028  
       2022-05-05 18:09:09 +08:00
    我有两台物理机,一台放公司,一台放家里,两台的配置都是一样的,都装的 pve 系统,虚拟化出了 5 个虚拟机,虚拟机装了 CentOS7 ,搭建了 k8s 集群,还虚拟了一个 OpenWRT ,用作旁路由,我虚拟机的网关设置成了这个 OpenWRT 系统,这样我再使用我的虚拟机时,就不用每个软件都设置一次代理了。

    安装 K8S 内部服务,我用的是 Helm ,暴露 K8S 内部网络,我使用了 Wireguard ,目前运行良好,家里的那台,一个月电费大约 100 块( 1.5 元一度)
    jabari
        39
    jabari  
       2022-05-05 18:10:10 +08:00
    准系统 thinkstation c30(支持 v2 XEON) 2000 块,CPU 2 块 E5-2690v2 1640 块, 内存三星 32G DDR3 ECC REG 4 条 微博看到的
    pepesii
        40
    pepesii  
       2022-05-05 18:18:47 +08:00
    podman 可以不
    cocong
        41
    cocong  
    OP
       2022-05-05 18:27:25 +08:00
    @aloxaf 我是见过一个个人笔记本是 Windows ,然后在里面装 Virtualbox ,再在 Virtualbox 里装 Ubuntu ,最后在 Ubuntu 上搞开发,你别说,一点也不卡。所以后来我也跟着学,结果卡的不行,不过不要界面,直接后台运行,真的很省资源,可能是我没在上面装多少东西的缘故吧。
    reorx
        42
    reorx  
       2022-05-05 20:04:01 +08:00 via iPhone
    一台 2000 左右的 NAS ,可以满足所有工作和娱乐需求
    KagurazakaNyaa
        43
    KagurazakaNyaa  
       2022-05-05 20:12:19 +08:00
    我是直接搞了台洋垃圾 DELL T620 ,E5-2680 v2*2 ,192G 的内存,9T 的 RAID6 存储,用 ESXi 6.5U3 ,基本上常见的服务都能跑
    wangyongbo
        44
    wangyongbo  
       2022-05-05 20:46:30 +08:00
    >不像 Docker 一启动就吃掉几个 G

    为什么你的 docker 需要这么多内存呀? 很奇怪。
    wuyiccc
        45
    wuyiccc  
       2022-05-05 20:52:25 +08:00
    给自己的电脑升级内存到 32G
    cocong
        46
    cocong  
    OP
       2022-05-05 21:19:08 +08:00
    @wangyongbo 你不说我还忘了,这个是可以设置的,我之前设置的是 4G ,那时为了在本地跑 Gitlab 和 Confluence ,得调大才跑得动,不过平时基本都不启动它们。我现在改成最小 1 G 了,果然现在看着就舒服多了。
    cocong
        47
    cocong  
    OP
       2022-05-05 21:22:44 +08:00
    @wuyiccc 查了一下,macOS 没法升级内存。
    cocong
        48
    cocong  
    OP
       2022-05-05 21:24:08 +08:00
    @wuyiccc 其实内存小也没什么影响,从来都不卡,只是怕影响 SSD 寿命
    wuyiccc
        49
    wuyiccc  
       2022-05-05 22:34:26 +08:00
    @cocong 怕影响 ssd 寿命的话,外挂一个移动 ssd 不就可以了
    fsdrw08
        50
    fsdrw08  
       2022-05-05 23:31:53 +08:00 via Android
    都说是集群了,堆资源肯定是跑不了的,我本地搭的集群: 基于 hyper-v ,路由器用 vyos ,内部安装 clash ,接装网络,一边接 hyper-v default switch, 一边接一个 hyper v 纯内部虚拟交换机,dns 和 dhcp 用 technitium dns 在本地电脑装, 集群节点用 alpine Linux ,装 k3s
    fsdrw08
        51
    fsdrw08  
       2022-05-05 23:33:41 +08:00 via Android
    上述 vyos 和 alpine Linux 的镜像均用 packer 用 ISO 开始构建,打包成 vagrant box
    fsdrw08
        52
    fsdrw08  
       2022-05-05 23:34:26 +08:00 via Android
    电脑内存建议 16g 以上,32g 最好
    dayeye2006199
        53
    dayeye2006199  
       2022-05-06 07:14:47 +08:00
    LZ 你的问题是需要换个系统,换到 linux 下 -- docker 容器化比 virtualbox 虚拟化还吃资源是不太现实的。

    需要即开即用和随意销毁的开发测试环境的话,用 vagrant 是很方便的,随便弄也不怕搞坏。可以配合 virtualbox 或者 docker 使用。
    需要学习一些分布式软件的话,vagrant 也支持启动多台虚拟机组网的功能。
    abbottcn
        54
    abbottcn  
       2022-05-06 18:10:13 +08:00 via iPhone
    singularity
    现在叫 apptainer

    可以当作开发用的虚拟机来用……
    不过又不是虚拟机……
    CSDN hpc4you 有一点点内容可以参考……
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1272 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 35ms UTC 17:13 PVG 01:13 LAX 09:13 JFK 12:13
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86