当前位置:首页 > 每日看点 > 正文内容

运维总监怒怼开发:你真的需要 K8s 吗?

卡卷网1年前 (2024-12-25)每日看点223

我最近几年待过的公司,我只要一进公司,基本上都是主导或力推全面容器化、k8s 化,不论业务体量(当然,微服务是必须的)。

对于连续用了4年k8s的我来说,哪怕你只有三台服务器,我也要给你部个k8s。

如果你只有一台物理机,我恨不得给你虚拟化三台机器出来再装个 k8s(只是恨不得而已)。

如果你说没必要,我下意识的感觉就是你肯定还不熟悉k8s。

下面简单说一下我已经离不开 k8s 的理由。

从线上费用来讲,各种云已经有托管 master 的集群在售,你直接买 node 就行,一个 node 和 一个 ecs 的费用相差也不大(同等配置)。

从线下费用来讲,不管你用不用 k8s,服务器是必须的吧,这个无论如何免不了。

从服务器维护来讲,相对传统的公司服务器一般会用 esxi 等虚拟化技术将物理机分配成若干个虚拟机,而你用了 k8s 之后,你直接可以将物理机作为集群的一个 node,免去虚拟化的时间和维护成本,新购机器直接作为 node 加入资源池。

从维护难度来讲,你只要能熟练使用 kubectl,你的大部分运维工作都可以免去 ssh 这个操作了。

我要运行一个应用:

kubectl create deploy xx --image=xxx

我要让服务可以外部访问:

kubectl expose deploy xx --type xx --target-port xx --port xx

我的应用要扩展一下副本,做下负载均衡:

kubectl scale deploy xx --replicas xx

我要配下域名、转发、黑白名单:

kubectl edit ing ...

对于ci/cd、服务发布更新:

kubectl set image xxx app image=xxx 或 helm upgrade ...

回想一下多年以前你写了一个 300 行的 shell 只为所谓的平滑更新一个应用的版本,k8s 依然只要你 kubectl 一下。

再进阶一点,你如果稍具开发技能,对接一下 k8s 的 api,把上面的这些操作做到 ui 让开发点点点,你会发现,如果你公司本来有 10 个运维,这么一搞可能两个就够了(留一个陪另一个吃饭)。

额,写到这里的时候重新看了下题,是对开发来讲的哈。。那我只能说,k8s 真的牛逼。。。


--- 另外补充一点(2023-12-26 15:00)---

据我这几年的感受而言,运维的工作时长很大一部分是耗在和开发扯皮这点。


所以要减轻运维工作量以达到 10 人 -> 2 人的目标,在标准化和自动化做好后,肯定要需要一个平台支撑(运开这个角色必须了)。


这个平台的核心作用就是将开发和运维隔开,比如现在还有不知道多少公司还在巴巴等着运维发版,流程大概是这样:
1. 开发:我代码提交了,构建好了,a 服务构建好的镜像 tag 是 001,b 服务的镜像 tag 是 002,运维你去发下版;
2. 运维:好的好的,我去更新,然后运维去一通 kubectl edit a 或者 kubectl set image,修改 tag 为 001,然后修改 b 服务的 tag 为 002(可能还有 c、d、e)。。。
3. 运维:修改完之后还要盯着 Pod 能不能过健康检查,如果没过,还要回头 call 开发,哪个服务是哪个开发负责,找到对应的开发,啊开发老弟你的服务挂了;
4. 开发:好的好的我去修一修,若干分钟后,修好了(这段时间运维处于干等状态),运维你再去构建发版一下;
5. 运维:重复 2;

所以这个平台要必须要具备的功能:
- 开发能自信的发版;
- 发版即便失败了也不要影响旧版本(正好 deployment 只有起了新的健康 pod 才会删旧版本 pod);
- 开发能够第一时间知道发版的结果(成功或失败);
- 如果发版失败了,开发能基于平台排错重新发版,比如让开发能够自己看 Pod 日志和进终端;

而且这个平台一旦落地,解决的并不只是扯皮问题,沟通时间省去了,你会发现整体发版效率都提高了超级多。

最近闲着没事的时候我开始尝试写一个尽量通用一点的平台能够完成上述操作,感兴趣可以关注:
github.com/zze326/devop

(其实我在当前在职的公司已经写好了一个相对成熟 devops 平台,但几乎是对公司环境定制的所以开源出来也没啥意义)

目前完成了简单的 CI 功能(可以替换掉 Jenkins,但是依赖于 k8s)和堡垒机功能;
更新可能有点慢,因为咱也是搬砖人,比较闲的时候有兴致的时候才写;
如果公司有 devops 平台的开发需求基于它二开我觉得是个不错的选择;

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2024/12/5503.html

分享给朋友:

相关文章

你手机里有哪些堪称神器的 App?

你手机里有哪些堪称神器的 App?

嗨嗨,我是赢酱~首先我认为对于我们有用的提升自我的都是手机里的神器 App。 一个人应该什么样子呢?在我从女孩子的角度看来,自律,上进,会打扮,情商高,会挣钱,独立,落落大方,这才是应该有的样子,我们可以借助手机不断学习改变今天给大家准备的...

计算机专业不干互联网不热爱技术,还能转行干什么?

转行的思路,无非也就是那几个。我们顺着每个思路,一路捋一遍,基本上,大致可行的方向,也就有了。一、跟对口职业和岗位业务链条相邻的职业和岗位计算机专业如果找到了对口的技术岗位,跟技术工作联系最紧密的岗位是什么?产品经理。当然,大多数产品经理也...

如何看待台积电,三星相继停供大陆7nm及更先进芯片?

在这个事出来之前,我就看到过一个说法,两家Foundry可以在中东建厂,让中东的Fab去干“脏活”。本质上是国内企业搞几个中东的代理人,装作是中东的初创Fabless企业去下单,人家Foundry大概率睁一只眼闭一只眼,只管数钱。然而,紧接...

腾讯云为何在云服务市场败给了阿里云?

IDC领域,2010年以前,万网、新网互联、新网,三家公司瓜分天下,其中万网市场份额最高,排名第一。当时,万网的域名是http://www.net.cn,通过该域名就可以判断万网的地位。2010年阿里云成立,直接收购了万网,大量用户直接流向...

你见过哪些有趣的偏微分方程组?

你见过哪些有趣的偏微分方程组?

说说我一直在做的一个偏微分方程系统吧,该模型为生物领域的趋化性(chemotaxis)模型,也叫Keller-Segel模型,由该二人于1971年左右提出,用于刻画细胞或者细菌的趋化机制。解释一下趋化性(chemotaxis):趋化性是指单...

什么时候你意识到做技术永无出路?

什么时候你意识到做技术永无出路?

2016年,帮一个朋友的忙,写了个软件给他的工作室用, 象征性的收了5000块钱。大概过了三四年吧,他酒后吐真言,这个软件在他这个细分行业,很有用,他这几年把我写的这个软件卖了很多份出去,收益远超30万。因为是离线软件,给他的就是一个exe...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。