有多少人在 NAS 上跑 K8S,比如 k3s,或者 minikube 或者 kind 来跑 k8s?

336 天前
 xinmans
在 turenas sacle 里默认带的 k3s ,动不动消耗一大部分资源,我的 i3-8100b 带起来很吃力。
所以想看看大家都是如何在 homelab 里跑 k8s ,用什么版本,都跑了什么应用。

目前我用 portainer 管理了几百个 docker ,分布在 unraid ,ubuntu20.04 ( unraid VM ),turenas ,还有一台蜗牛星际上装了 ubuntu 跑 qb docker 做 pt 下载
管理起来不是很方便,来回切换,而且没有高可用。

如果用 k8s 方案,几个问题:
1 ,什么方案比较轻量级,消耗资源少,比较 homelab 配置不会很高
2 ,能实现高可用,比如做不同服务器 node 之间的自动 failure over
3 ,能实现停机快速恢复,停机不损害数据(之前发生过 k8s 开机后挂了,要重新 deploy )
4261 次点击
所在节点    Kubernetes
29 条回复
winson030
335 天前
试试 docker swarm ,用起来还可以,就是要注意 leader 重启
Masoud2023
335 天前
我印象里 k3s 应该已经是最小的了,非要搞这种高可用,要么 docker 那套方案能轻一点?或者 podman 搞 deployment ?
Hieast
335 天前
nas 里跑 docker 就够了,k3s/k8s 在这种场景下不适用
Hieast
335 天前
1. 不知道
2. 这个高可用我理解不是主从、副本的高可用,而是挂了能重启。这样的话你得定义好 livenessprobe ,集群才能感知到重新调度,重新调度就不一定还在原来的 node 上了
3. 停机快速恢复见 2 ,k8s 开机后挂了可能是资源不足,k8s 的 worker node 最好能占用所有机器资源
ryan4yin
335 天前
我出于学习的目的,在 homelab 里跑了四个集群,一个主集群用来跑各种零散应用,另外三个用来测试一些跨集群的高可用、网络架构。

再回答下这几个问题:

1. k3s 已经是非常轻量的方案了,我用的是三台 mini 主机跑的,性能很够用。具体可见: https://github.com/ryan4yin/knowledge/tree/master/homelab

2. 你说的自动 fail over 这不是 k8s 原生的功能么,pod 会自动调度到其他节点。如果是希望内网的域名解析或 IP 也能自动 failover 的话,可以看看 kube-vip ,它提供了链路层的 fail over 能力,这个在局域网用起来很简单也很方便。
3. 我 homelab 中所有的 VM 都每日晚上自动备份,确保环境被我搞坏也能快速恢复。比如你说的启动后 k8s 挂了,对我而言直接在 PVE 页面点两下,就能恢复到上一个可用环境了。
thet
335 天前
我跑 k3s 内存占用还好,不到 1g
xinmans
335 天前
@ryan4yin #3 是指打了 VM 的快照? 4 个 VM 1 个 master+3 个 work ?然后快速恢复?那如果是突然掉点 down 了,如何恢复呀。

3 台 mini 主机是指 mac mini ?
xinmans
335 天前
@thet chart 是渣渣,如果是命令行感觉也是比较耗资源的,而且重启 truenas scale 经常恢复不到正常状态,很坑爹
ryan4yin
335 天前
@xinmans 我给的链接里有详细的描述啊,你点进去看看就明白了
RRyo
335 天前
2 节点
- i5-6500T 189m
- i5-5300U 17m
主要是隔离网络, 5300U 那台的子网的路由是直通没科技的, 用来下载和 BT
一共跑了二十来个 pod, CPU 总负载 200m, 很低,不过内存比较多,总计 7G
zhouu
335 天前
@xinmans 重启恢复不到正常状态是不是因为 openebs 用了 gcr 的镜像,整个网络有科学上网吗?
v2wtf
335 天前
k3s 只是相对轻量,但是对低配置机器来说仍然是重量级,空载就已经经常占 30%以上 CPU 了。

microk8s 稍微好一点,可以试试看,不过这货只支持 Ubuntu 。
ccde8259
335 天前
2666v3 + 64G 配置带 K8S 基本没什么压力,日常 CPU 占用率约 16%,RAM 用了 50%左右……i3 8100 确实不适合带 K3S
mythabc
335 天前
已经把 homelab 堆到 13700+96G 内存的配置了。
asuraa
335 天前
我都不用 K3s k8s 这种重量级的

我用的是 docker swarm 这玩意适合资源少的环境 管理也方便 就用 docker compose 管理 不用像 k8s 一样 写一堆 yml
jackge0323
335 天前
10400 + 32G 内存,unraid 起了三个虚拟机跑 k3s 集群,资源占用倒是还行,就是磁盘写入有点恐怖,平均每天 50G 的写入,磁盘不能放在机械上,慢不说,全天 24 小时磁盘那个响声真是受不了,为此买了块 3.84T 的企业固态。整体来说还是很舒服,有域名和外网服务器的话,frp 服务穿透到家里集群上,省很多钱。
ltkun
335 天前
目前 9900t 128g 没有 k3s 这种 直接 pve 的 lxc 容器嵌套 docker 用 portainer 管理 几十个容器 再加十几个 lxc 和 vm
0987363
335 天前
家用我都 docker shell 或者 compose
fox233
335 天前
大佬推荐个 k8s 教程好嘛
fox233
335 天前
k3s 的也行

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/943837

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX