分享我用 K8S 在个人项目上的应用 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
bmpidev2019
V2EX    Kubernetes

分享我用 K8S 在个人项目上的应用

  •  1
     
  •   bmpidev2019
    PRO
    2021-11-11 13:30:22 +08:00 11034 次点击
    这是一个创建于 1428 天前的主题,其中的信息可能已经有所发展或是发生改变。

    文章链接: https://www.bmpi.dev/dev/guide-to-k8s-cloud-native/

    我选择了最便宜的 DigitalOcean 云平台,Master 控制平面基础版(对 SLA 没有高的要求就可以用)是免费的,Worker 节点是新加坡区域的 2 核 4GB 内存的机器($20/月),还有一个 $10/月 的 Load Balancer 费用。一个月总成本是 $30/月。

    由于 Worker 节点需要安装一些 K8S 本身的服务如 kube-proxy 、core-dns 等共计 12 个 pod ,占用 Worker 节点一半的内存。这样供应用调用的资源还剩 2GB 。

    57 条回复    2021-11-29 21:21:37 +08:00
    wandehul
        1
    wandehul  
       2021-11-11 13:32:08 +08:00
    个人项目实在没有必要上 k8s
    wandehul
        2
    wandehul  
       2021-11-11 13:32:38 +08:00
    sorry ,我理解错了,我以为是一个简单的网站之类的, 既然是项目就需要考虑考虑了
    bmpidev2019
        3
    bmpidev2019  
    OP
    PRO
       2021-11-11 13:37:58 +08:00
    @wandehul 还是可以试试的,个人项目如果多了用 k8s 还好管理,如果只是一个小工具,那倒没必要
    raynix
        4
    raynix  
       2021-11-11 14:38:38 +08:00   1
    欢迎上船!

    两年前开始我在家建了一个 k8s 集群,用了自己的和朋友的一共 5 个旧笔记本电脑,对于个人项目和实验学习非常有帮助
    Nitroethane
        5
    Nitroethane  
       2021-11-11 14:49:55 +08:00 via iPhone
    借楼问图使用什么工具画的呀
    ktqFDx9m2Bvfq3y4
        6
    ktqFDx9m2Bvfq3y4  
       2021-11-11 14:49:55 +08:00 via iPhone
    小规模的可以使用 K3S ,我就在用,很爽。不过楼主的方案也不错,托管的更稳定
    huangmingyou
        7
    huangmingyou  
       2021-11-11 14:52:00 +08:00
    minikube 也够用,也能跑 istio 这样的架构
    littlewey
        8
    littlewey  
       2021-11-11 14:52:02 +08:00
    很赞,,可以把自己的 node 添加到这个免费控制平面的集群么?
    hemingway
        9
    hemingway  
       2021-11-11 14:52:20 +08:00
    bmpidev2019
        10
    bmpidev2019  
    OP
    PRO
       2021-11-11 14:53:42 +08:00   1
    bmpidev2019
        11
    bmpidev2019  
    OP
    PRO
       2021-11-11 14:54:21 +08:00
    @littlewey 没试过,可以看看 digitalocean 的文档
    locoz
        12
    locoz  
       2021-11-11 15:10:49 +08:00
    @Chad0000 #6 K3S 我家里用了几个月下来发现有些小问题很坑人,如果不是资源非常少,最好还是直接 K8S 了,省事省心免得找问题找半天还找不到解决方案。目前我的 K8S 集群跑了也快一个月了,之前会在 K3S 上出问题的应用现在啥事都没有。
    locoz
        13
    locoz  
       2021-11-11 15:13:50 +08:00
    @littlewey #8 你这个需求可以看看腾讯云的那个“边缘集群”,也是控制平面免费,就是有点小问题,差不多半年前反馈上去的到目前为止也没见修复,可能因为不是主要业务所以不太重视。
    makelove
        14
    makelove  
       2021-11-11 15:40:00 +08:00
    没用过 k8s ,问一下这个 worker 是指每一个工作节点都要被 k8s 占去一半内存吗?就是说如果我的 app 需要 10 台 4G VPS 支撑,然后用 k8s 就需要 20 台?
    Nitroethane
        15
    Nitroethane  
       2021-11-11 16:02:32 +08:00 via iPhone
    @bmpidev2019 难道我用的是假的?那图里面那些图例是自己画的还是自带的啊?
    arischow
        16
    arischow  
       2021-11-11 16:05:13 +08:00
    @Nitroethane #14
    社区有这些云资源的图标,可以一键加载到 web app
    defunct9
        17
    defunct9  
       2021-11-11 16:05:17 +08:00
    30$ 一个月,可怜我的老破小 vps ,才 10$一年
    bmpidev2019
        18
    bmpidev2019  
    OP
    PRO
       2021-11-11 16:55:27 +08:00 via iPhone   1
    @Nitroethane 有些是 library 里加载的,k8s 图标都是自己画的
    @makelove 应该是这样的,k8s 本身的资源要在每个 node 里安装,根据 digitalocean 官方配置提示,2g 的内存会占用 1g ,单个 node 内存越大性价比越高
    Skmgo
        19
    Skmgo  
       2021-11-11 20:08:56 +08:00
    @defunct9 说下什么 VPS ,最近上项目,测试 K8S 中,Vultr 也有了 K8S, 看起来比楼主的 OC 要贵。。。
    Skmgo
        20
    Skmgo  
       2021-11-11 20:12:04 +08:00
    @raynix 看了你的站点,真是佩服你,薅羊毛技术太牛。。。 能不能加下您的微信,请教下 K8S 之类的问题?
    chaleaoch
        21
    chaleaoch  
       2021-11-11 23:02:57 +08:00
    @raynix 挺费电的吧...
    ktqFDx9m2Bvfq3y4
        22
    ktqFDx9m2Bvfq3y4  
       2021-11-12 01:27:54 +08:00 via iPhone
    @locoz #12 我那个 K3S 跑了快一年了,上面还有一个 elastic search 给电商网站用,比较吃内存和 CPU ,没有出现过问题。
    raynix
        23
    raynix  
       2021-11-12 03:48:12 +08:00
    @Skmgo k8s 问题发在这里更好吧,因为不仅我一个人可以解答。另一方面,解决方案也可以分享给更多人。

    @chaleaoch 我一开始也这样想,不过实测一下发现笔记本待机时功耗在 10 ~ 15w
    Dart
        24
    Dart  
       2021-11-12 09:03:41 +08:00
    楼主厉害!
    shenlanAZ
        25
    shenlanAZ  
       2021-11-12 09:13:06 +08:00
    cloudflare 再去代理 vercel 感觉有点降速度。

    另外一条路 k3s 可以节省点资源,尤其是 CPU 配额不是很多的这种场景。
    WildCat
        26
    WildCat  
       2021-11-12 09:14:15 +08:00
    k3s 挺不错的,我单机 k3s 把很多东西都服务化了感觉很舒服。
    bmpidev2019
        27
    bmpidev2019  
    OP
    PRO
       2021-11-12 09:47:59 +08:00 via iPhone
    @shenlanAZ cloudflare 托管的 DNS 。K3S 需要自己配置 master ,digitalOcean 的 master 是免费的,只需要 worker 的资源就可以了啊
    defunct9
        28
    defunct9  
       2021-11-12 10:03:47 +08:00
    @Skmgo justhost 老毛子的 vps ,话说自己的 k8s 和朋友公司的阿里云 ack ,感觉都重。systemted + go 是现在的最爱。
    sy20030260
        29
    sy20030260  
       2021-11-12 10:43:29 +08:00 via Android
    很棒的文章!最近刚好也在搞个人项目的 infra ,很受用。另外想问下楼主有尝试过用 AWS lambda 之类的来托管后端吗?目前打算 all in lambda
    bmpidev2019
        30
    bmpidev2019  
    OP
    PRO
       2021-11-12 10:48:57 +08:00 via iPhone   2
    @sy20030260 https://www.bmpi.dev/dev/guide-to-serverless/ 这是我尝试的 serverless ,它们适合的产品形态和场景还是不一样的,我全都在用
    bmpidev2019
        31
    bmpidev2019  
    OP
    PRO
       2021-11-12 10:50:16 +08:00 via iPhone
    @defunct9 k8s 的扩展性和可用性是单机没法给的啊,除非简单的服务,而且每次 provison 新的服务器也麻烦,还得做 IaC ,k8s 一条龙解决方案给你了
    defunct9
        32
    defunct9  
       2021-11-12 11:12:43 +08:00
    @bmpidev2019 你说的很有道理。作为一名运维,我的做法是 k8s 自建从头搭起,那么操心的问题就更深一步,要解决掉 DigitalOcean 或者 aws 要处理的问题,我要用什么做 ELB ,要用什么搞 network overlay ,要怎么实现卷的持久化。一套东西弄下来,命没了半条。所以干脆 systemd+go
    bmpidev2019
        33
    bmpidev2019  
    OP
    PRO
       2021-11-12 11:14:28 +08:00 via iPhone
    @defunct9 是啊,自己搞 master 很难达到那么高的 SLA ,所以我选择 managed k8s service ,而且还是免费的。
    defunct9
        34
    defunct9  
       2021-11-12 11:18:23 +08:00
    @bmpidev2019 托管的也很鬼畜啊,阿里的 ACK 你是用不了他 k8s 的 ETCD 的,只能又跑了个单副本的 ETCD ,持久化到 OSS 去,避免用它的配置管理还得交钱。用到 logstore 和 logtail ,又得交钱。
    bmpidev2019
        35
    bmpidev2019  
    OP
    PRO
       2021-11-12 11:2:02 +08:00 via iPhone
    @defunct9 阿里这么鬼畜啊,digitalocean 我没发现这些问题呢,aws/azure 之流都太贵了,有钱可以用
    mogging
        36
    mogging  
       2021-11-12 12:39:34 +08:00 via Android
    笔记本用 vagrant 加 kubeadm 搭建 k8s 集群,总感觉是玩玩而已,云上才是真集群不过成本真的高,现在域名都很贵了
    jingslunt
        37
    jingslunt  
       2021-11-12 14:26:22 +08:00   1
    可以做成 helm 迭代比较简单,再搞 istio 管理流量、灰度发布,再搞成 knative 做成 faas
    raysmond
        38
    raysmond  
       2021-11-12 15:46:34 +08:00
    有点意思
    Dogtler
        39
    Dogtler  
       2021-11-12 20:39:23 +08:00
    有实操步骤之类的 记录么,好奇。要是可以分享出来 那就太感谢了。。
    Dogtler
        40
    Dogtler  
       2021-11-12 20:40:14 +08:00
    @Dogtler 不好意思 ,刚刚又看了一遍 有文章链接的。
    littlewey
        41
    littlewey  
       2021-11-12 21:31:50 +08:00
    @locoz 感谢,请问这个 “脚本增加节点” 就是您说的这个对不?
    https://cloud.tencent.com/document/product/457/42890#.E8.84.9A.E6.9C.AC.E6.B7.BB.E5.8A.A0.E8.8A.82.E7.82.B9
    locoz
        42
    locoz  
       2021-11-13 09:02:01 +08:00   1
    @littlewey #41 对的,是这个
    locoz
        43
    locoz  
       2021-11-13 09:08:08 +08:00
    @Chad0000 #22 是不是没有用 CRD 之类的高级功能,而是只单纯用来做容器部署?我这出问题的地方都是在一些利用 CRD 做的高级操作上,比如 kasten 的快照、kubevirt 的虚拟机镜像之类的。
    ktqFDx9m2Bvfq3y4
        44
    ktqFDx9m2Bvfq3y4  
       2021-11-13 09:21:47 +08:00 via iPhone
    @locoz #43 对,没有使用什么高级功能。我的目的就是尽量保持容器化,方便部署和以后上云。
    xth12138
        45
    xth12138  
       2021-11-14 01:01:59 +08:00
    很棒的方案,已经开始抄 lz 作业了
    liuxu
        46
    liuxu  
       2021-11-16 10:35:53 +08:00
    巧了,差不多,不过我的 ssl 是 cf 的,http 回源,而且不是 DO 的 k8s ,是自建 k3s
    liuxu
        47
    liuxu  
       2021-11-16 10:37:28 +08:00
    我一年的成本$30 ,hosthatch 的 2H8G 配置,洛杉矶的服务器
    lancelock
        48
    lancelock  
       2021-11-16 11:04:54 +08:00
    太贵了
    timothyye
        49
    timothyye  
       2021-11-16 22:08:20 +08:00 via Android
    @liuxu 现在 hosthatch 还有这种配置吗
    liuxu
        50
    liuxu  
       2021-11-16 23:03:34 +08:00
    @timothyye 看看黑五吧,应该有
    timothyye
        51
    timothyye  
       2021-11-16 23:10:25 +08:00
    @liuxu Hosthatch ,我看网上的推广文章都在推他们的新加坡机房,不过官网上看不到新加坡的机房
    liuxu
        52
    liuxu  
       2021-11-16 23:12:28 +08:00   1
    @timothyye 做活动的时候有特定购买链接,hosthatch 有 2 个比较香的节点,一个是瑞典,一个是香港,其他的能用,但是加价转卖比较难
    timothyye
        53
    timothyye  
       2021-11-17 01:29:37 +08:00
    @liuxu 谢谢老司机推荐
    Skmgo
        54
    Skmgo  
       2021-11-21 15:12:40 +08:00
    @liuxu hosthatch 的 1 个节点还是 3 个 node 30/年? 方便留个联系方式请教问题吗?
    liuxu
        55
    liuxu  
       2021-11-21 23:03:32 +08:00
    @Skmgo 1 个,直接问
    liuxu
        56
    liuxu  
       2021-11-29 21:19:52 +08:00   1
    @timothyye hosthatch 出活动了,2 年 120 刀,3C16G80GNVME ,10T 流量,平均一个月 5 刀,https://cloud.hosthatch.com/sale/cherry-jam
    timothyye
        57
    timothyye  
       2021-11-29 21:21:37 +08:00 via Android
    @liuxu 感谢感谢
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1035 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 34ms UTC 17:59 PVG 01:59 LAX 10:59 JFK 13:59
    Do have faith in what you're doing.
    ubao 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