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

有人实现家用 NAS 全栈 k8s(k3s)?

  •  1
     
  •   xinmans · 13 天前 via iPhone · 3473 次点击
    有人实现吗?
    41 条回复    2024-04-17 11:07:24 +08:00
    iloveayu
        1
    iloveayu  
       13 天前   ❤️ 1
    k3s 单点就可以上啊,家用 NAS 搞这干啥,这不是徒增复杂度么?
    cnightmare
        2
    cnightmare  
       13 天前
    true nas ?
    0x663
        3
    0x663  
       13 天前
    TrueNAS 不就有个 k3s 吗
    BeautifulSoap
        4
    BeautifulSoap  
       13 天前
    家里一台 NAS 装 k8s/k3s?是图啥....开几个虚拟机练手吗
    zfjdif
        5
    zfjdif  
       13 天前
    我的 pve 装了 3 结点 k3s ,但是纯粹是为了练手,k3s 结点的机器一般不开机
    whileFalse
        6
    whileFalse  
       13 天前 via Android
    单机用 docker compose 不好吗
    bumblebeek
        7
    bumblebeek  
       13 天前
    是不是有点太重了
    superchijinpeng
        8
    superchijinpeng  
       13 天前
    完全没必要
    corvofeng
        9
    corvofeng  
       13 天前
    我有的, 用 zerotier+k3s 搭了集群, 顺便把之前买的 cvm 和 ec2 也集成到了集群中, 部署的时候可以用 node selector 来指定机器. 总共跑了几十个服务, 不过你真的需要吗? 这一整套太重了
    anubu
        10
    anubu  
       13 天前
    有在用,但的确复杂度太高,心智负担有点大。需要保持稳定和家人共用的服务还是切到 Docker 部署了。
    用 k8s 最大的需求是 IaC 、GitOps ,所谓的基础设施和部署状态管理,这 2 个方向 k8s 的生态更好一些。自己拿来学习练手的玩具,无可无不可。
    xuegy
        11
    xuegy  
       13 天前 via iPhone
    这不就是 TrueNAS scale 吗?家庭环境简单问题复杂化。用群晖那种的直接跑 docker 镜像它不香吗?
    libook
        12
    libook  
       13 天前
    尝试搞过,后来觉得太复杂了,家用场景收益不明显,于是换回纯 Docker 了。
    xinmans
        13
    xinmans  
    OP
       13 天前 via iPhone
    @corvofeng 延时还好吗?还搞混合云?
    xinmans
        14
    xinmans  
    OP
       13 天前 via iPhone
    @anubu docker 太多了,而且平时自己写的也不少,搞一些自动化。nas 设备也有好几台,有的有显卡,整个部署发布起来 k3s 更加方便,代码管理,发布流程都更好。docker-compose 管理单个 docker 没问题,但是一台机器上上百个 docker 就很麻烦了,版本管理都很麻烦
    xinmans
        15
    xinmans  
    OP
       13 天前 via iPhone
    @xuegy 我默认把 truenas sclae 里的关闭了,不好用,他改了很多东西。
    ccde8259
        16
    ccde8259  
       13 天前
    K8S 挺好的,从写命令行到 YAML 工程师,家用 NAS 进程管理全靠 K8S……
    rockxsj
        17
    rockxsj  
       13 天前
    podman-compose
    lozzow
        18
    lozzow  
       13 天前
    我也觉得 k8s 更简单,管理起来更方便(相对只用 docker 来部署服务的话),比如 ingress 这些东西
    Zzdex
        19
    Zzdex  
       13 天前   ❤️ 1


    运行良好
    nullico
        20
    nullico  
       13 天前   ❤️ 1
    曾经给你一样 k8s ,现在还是换回 docker 了,写几个 run.sh 来管理下 docker 就行了。为什么?

    1. 太重了,家里用不到这么复杂的架构。越复杂的东西越容易出错,一旦出错,会花费大量的时间来处理。而且跑 k8s 对设备性能要求也不低,不信你看看你 node 空载下的负载。k3s 默认是用的 sqlite ,你要是机械盘,嘿嘿,说多了都是泪。
    2. 存储问题,家里用,你搞一个 k8s/k3s, 存储是一个问题,大部分都是 nfs 吧。你试试部署一个 gitea 这种对文件系统依赖高的试试。

    至于练手啥的,单独搞几个 vm 来随便折腾也能练手。反而 nas 上搞这么一套,出问题了浪费一堆精力去弄他
    juzisang
        21
    juzisang  
       13 天前
    在 k3s ,docker swarm 来来回回切了好几次,每次都使用了好几个月,最后还是用的 docker swarm ,配置部署都很方便,没有一堆概念,该有的功能都有,自己一个人用心智负担也很小
    corvofeng
        22
    corvofeng  
       13 天前
    @xinmans 家用服务还会在乎延时吗, 不过用 zerotier 来做底层网络 配合 k8s 的 iptables 管理 确实没那么稳定,这种时候我用 frp 配合转发来做的
    juzisang
        23
    juzisang  
       13 天前
    总共六个节点,都是云服务优惠的时候买的,只有一个是家里的机器,个人使用很满意
    corvofeng
        24
    corvofeng  
       13 天前
    我之前也用 swarm 搞过一套 但是更熟悉 k8s 所以换成了 k3s 我觉得这一套东西要能做到半自动化的扩容 以及支持 intra as code 才算结束, 目前我就是自己去维护一套工具. 利用 ansible+github action 来做 IAC , 同时顺便也加入 cert 自动刷新 内外网域名分离的功能, 还有快捷的服务发布,和维护. 这一套做下来 应该一个小型团队都够用了, 我也逐步把一些功能也提供给朋友们来用
    Navee
        25
    Navee  
       13 天前
    太浪费资源了,不如 docker stack 或者 compose
    Unboundwill
        26
    Unboundwill  
       13 天前
    我一直是用 Portainer 管理 docker compose 的,Portainer 可以方便地用一个管理节点,管理多台服务器,复杂度在可接受的范围内。

    我也在计划切换到 kubernetes ,主要是管理 HTTPS 证书、反向代理等比较有优势。现在要手动搞反向代理、更新证书、更新 DNS 快吐了。
    xinmans
        27
    xinmans  
    OP
       13 天前 via iPhone
    @corvofeng 我看你不是纳管 ec2 么,是作为 worker node 来管理的吗?
    xinmans
        28
    xinmans  
    OP
       13 天前 via iPhone
    @corvofeng 我是用 terraform+gitea+gitea action 做 cicd ,基本实现了自动化发布,扩容 node 用 ansible ,可以一起交流下呀。
    xinmans
        29
    xinmans  
    OP
       13 天前 via iPhone
    @Unboundwill 一开始是用 portainer ,他的容器搜索功能都没打通,HA 功能有限,不如 k3s 的调度方便
    xinmans
        30
    xinmans  
    OP
       13 天前 via iPhone
    @Unboundwill 成长为 yaml 资深工程师,一切都配置化了,其实不是很复杂。问题调查确实有点麻烦。我现在出问题就一键还原到正常的备份,用 pbs 备份 pve 里的 vm node ,非常方便
    xinmans
        31
    xinmans  
    OP
       13 天前 via iPhone
    @juzisang swarm 没用过,看起来可以解决集中管理多台 VM 的 docker 的问题,有时间研究下。
    xinmans
        32
    xinmans  
    OP
       13 天前 via iPhone
    @juzisang volume sharing 如何解决的呀
    juzisang
        33
    juzisang  
       13 天前
    @xinmans #32 如果是共享配置文件或者证书密钥啥的
    有 docker config ,docker secret ,对应 k8s 的 configmap 、secret 。
    volume 的话有也有 docker device ,我目前只用过 sshfs ,nfs ,其它的可以查查,跨机器共享 volume 我用得不多。
    Garasu
        34
    Garasu  
       13 天前
    搭了一套 3 节点 kubesphere , 本来想直接用自带的 devops ,但是太重了,然后自己单独部署 jenkins 。
    现在也就是还在玩着用,没敢全上,方便是方便些,但是确实太重了,存储还是用的 nfs....
    创个群吧,看看其他佬们都怎么玩的。
    corvofeng
        35
    corvofeng  
       13 天前
    @xinmans 是的, ec2 都是作为 k3s 节点来管理的, 跑 daemonset 跑自己服务都很方便
    corvofeng
        36
    corvofeng  
       13 天前
    @xinmans 这个方案和我差不多吧, ansible 也是我的核心驱动, 初始化和扩容 node, 还有服务器证书刷新, 服务部署, 也是走了 ansible 的不同 role
    noclin
        37
    noclin  
       13 天前
    提供一个基于 docker-compose 的开箱即用方案

    https://github.com/homeinfra-org/infra
    cdlnls
        38
    cdlnls  
       13 天前
    @juzisang 现在还在用 swarm 的不多了。。以前公司生产环境项目也是跑在 swarm 集群里面的,轻度使用使用是没啥问题的,swarm 用起来也是简单好理解。
    cdlnls
        39
    cdlnls  
       13 天前
    我感觉这个场景用 k8s 没啥必要的,但是如果是以学习使用 k8s 为目的,那怎么折腾怎么来。
    wm5d8b
        40
    wm5d8b  
       12 天前 via Android
    k3s 莫名占用 CPU 的问题,那么多年了一直没能解决,运行几天后,就会出现一个核占用 100%的情况
    sunocean
        41
    sunocean  
       12 天前
    smb+docker 能就足够了,没必要增加系统的复杂性。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1109 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 18:27 · PVG 02:27 · LAX 11:27 · JFK 14:27
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.