非运维学习 kubernetes 的重点是什么?

291 天前
 keepRun

我对 k8s 感兴趣,公司也会用这个部署,平时也会接触到一部分 k8s 的东西,于是买了一本《 kubernetes 权威指南》,书挺好就是太厚了,而且考虑到 k8s 整个生态,这书还仅仅是讲基础 k8s 的。

所以我想问下,各位学习 k8s 重点都是放在哪里?

3410 次点击
所在节点    程序员
41 条回复
hkdcl
291 天前
学个屁。会用 docker 就不错了
keepRun
291 天前
@hkdcl docker 已经会了,基本就是 docker compose 、swarm 一把梭,不过公司里一般还是用 k8s ,特意搞了个 docker desktop 开启 kubernetes 来练练手
hkdcl
291 天前
@keepRun 你是做 Java 的吗
momo24672
291 天前
1 Package docker image and push the image to private registry
2 Understand K8s Deployment, configMap, secrets and service, run the images in k8s (Helm or Kustomize)
3 Try ingress or gateway, expose the service to the public
4 Write the graceful exit, rolling update the service with zero downtime
5 Explore istio service mesh
....
keepRun
291 天前
@hkdcl 是啊,平时也写点 go 、rust
keepRun
291 天前
周末玩了下 istio ,顿时感觉这玩意控制流量的能力太强了
lasuar
291 天前
看看 https://github.com/chaseSpace/k8s-tutorial-cn 能否帮助到你,我正在更新的《 Kubernetes 实战指导》的最新章节也是 istio 。
dcoder
291 天前
docker + k8s 这帮人, 设计这么一大坨复杂玩意, 面相 yaml 编程, 折腾半天, 只能做个 stateless computing cluster. scale 的速度居然还奇慢... 上周公司开会,讨论说往 AWS EKS cluster 加个 EC2 node 要 10 分钟以上, 我都听懵逼了, 我说 EC2 instance 启动瓶颈不是 2 分钟上下吗? DevOps 说是的, 但是 EC2 node 起来后, 往 EKS cluster 里注册非常慢. 我上网搜了下, 确实要加个 EC2 node 要 10 分钟上下... 好烂, 我真的惊了...
所以工作需要的话, 会用常用命令行就行. "研究" 这坨"主流"并"流行"的垃圾, 属于浪费时间.
anubu
291 天前
@dcoder 10 分钟还是太慢了。以我使用腾讯云 TKE 和阿里云 ACK 的经验,绝大部分时候,添加一个节点,5 分钟以内就可以完成了,包含实例创建启动加入集群。
keepRun
291 天前
@lasuar 教程挺详细的,感谢你做的开源贡献
mahone3297
291 天前
@dcoder 注册时要时间,你要觉得慢,可以用 ECI 虚拟节点,启动很快,秒级还是毫秒级,有点忘了
k8s 的优势是 scale 的一整套功能,包括 scale out ,注册,负载均衡等。。。
如果不用 K8s ,用什么? docker swarm ? docker swarm 算是和 k8s 同一种产品,不算。
那么不用 docker swarm ,那你就要自己实现这一整套 scale out 的功能,那就相当于你实现了一个 k8s
keepRun
291 天前
@lasuar 话说你是怎么学习 k8s 的,我看你写了这么多,我看着都有点头大
keepRun
291 天前
@mahone3297 docker swarm 功能还是太弱了,除了 k8s ,其它的替代品都比较原始,k8s 主要问题就是有点复杂
lasuar
291 天前
@keepRun #12 学习方法的话,以我个人方式概括起来就是:
- 以相关权威书籍作为核心,最好找到 2 本+,帮助建立这个知识概念的主框架;
- 以官网文档作为辅助,补齐一些书中未提到的细节;
- 以互联网上有经验之人写的踩坑&总结文章为辅助,吸取他们的实践经验;
- 以源码为辅助,获取部分核心术语&逻辑的根本实现,真正达到拨云见雾,见证真章的程度;

以上供参考,确实比较花时间的,需要感到兴趣才能完整实践。
emSaVya
291 天前
5 年前学 k8s 比较准点。现在再学晚很多了。有点规模的公司 k8s 集群都搭建的七七八八稳定运行了。已经进入基建完善裁人阶段。
mightybruce
291 天前
这贴充分暴露了 V2EX 上不少程序员的水平
kuberenetes 不是 docker, 没有那么快很上手的。

我建议你先学会操作 kubenetes 基础操作和 kubernetes 的各种资源以及概念
基于 kubernetes 的 部署 调试 和微服务,代码改造。

一步一步学习,一定要动手。
mightybruce
291 天前
另外我强调一点 Kubernetes 不是运维需要学习的, 高级一点的业务开发和基础设施开发都是必须要会。上来不要看源码,
docker 和 kuberneets 是两回事,kubernetes 基本不带 docker 玩耍了
一堆人学不明白,麻烦就不要瞎说了。
先实操完了,在搞 Kubernetes 开发,最后结合开发看源码实现。
xianzhe
291 天前
kubernetes in action 这本书,由翻译版,不过稍微老了些,但是用来入门 k8s 真的很不错,看前面几张学会 k8s 里面的概念
dcoder
291 天前
注册 5 分钟也够慢的了... 启动个 EC2 VM 都只需要 1~2 分钟. 这个只能是 k8s 的设计问题, 没得救了.
为啥注册个 VM 还需要额外再加个"ECI 虚拟节点"来加速...

docker+k8s 我上班天天用,自己做项目是绝对不会用的.
我只简单说下这套东西为啥是复杂的工业垃圾:

1. 各个新老语言的 package/dependency/build 工具进步了, 可以在 dependency hash 层面实现 reproducible build. 根
本不需要用 docker 做那种非常重非常笨非常慢的 binary 级别的 reproducible build.

2. docker 本来应该被淘汰的, k8s 基于 docker 所以会继承 docker 的低效, 但是没想到会这么低效. 如果只是实现 stateless computing cluster 这么简单的东西, 你自己写个 cluster manager 就实现了. 那么对于一个 running cluster, new VM registering 就应该是秒级的速度 -- 我 10 年前就写过这样的东西, 在 AWS 上管理几十个 EC2 VMs. 不要轻易说 "那就相当于你实现了一个 k8s", k8s 的情况属于: 拥有大量宣发资源的人, 忽悠出的"主流"技术栈, 最终点错了科技树的情况.
kennylam777
291 天前
@dcoder 你考慮的只是開發的日常, 但是真正有規模的系統, 不是單單講求你個人認為的 building processing 有多快, 重點是你熟識的工具, 還是得讓其他人 reproduce 一次。如果是常用的步驟, Docker 加速的方法多的是, 可能是你家 DevOps 太垃圾。

自己寫 Cluster manager 也笑了, k8s 主要能力是通用度, 不管在哪個 Cloud 都是一樣的作法。而且甚麼自己寫 Cluster manager 的出了 AWS 也是一團廢物, 請問一下的 cluster manager 能處理 BGP 嗎?Layer 2 不通只能用 Layer 3 的網絡上能通嗎? Persistent Volume 當你能調用 EBS 而不是 local storage 好了, 能加上 NFS 嗎? 還有 GPU 需要同時分配 nVidia 及 Intel 的方案也請解決一下, 自己寫 GPU manager 喔?

人家就是有全套的解決方案, 對 scaling 速度有要求的更可以不用 AWS EKS 去玩自建的, 整個 Eco system 就擺著任你用。

不肯合作, 自吹自擂的單打獨鬥派, 任你說得自己的方案多好, 沒人跟你用就是了。

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

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

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

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

© 2021 V2EX