大家现实 k8s 环境的技术组合是什么? docker/Podman/containerd...的选择是什么?

2023-03-23 13:07:48 +08:00
 OldCarMan

rt,自从 kubernetes 1.24 正式移除了 dockershim 组件已经过去一段时间了,想了解一下大家现在 k8s 环境的各类技术组合是什么?


当然,即使 dockershim 被移除,如果你还想继续使用 docker 引擎,还是可以使用 cri-docker 来适配的。

关于上面说的 k8s 技术组合比较泛,举个例子,比如:

...

PS: 另外大佬们回复的技术组合在实际应用中存在哪些问题?谢谢大家回复。

6554 次点击
所在节点    Kubernetes
53 条回复
godsoul
2023-03-23 21:28:41 +08:00
flannel 性能比较差,建议使用类似 calico 这种,ingress 也可以不用,直接跑个网关暴露给 slb ,CoreDNS 最要也加个 local dns cache
XiLingHost
2023-03-23 22:27:27 +08:00
@OldCarMan 主要是很多情况下必须把 master 上修 bug 的提交合并到它们的镜像里用,不然每次遇到 bug 一看 issue 都发现是在最近的一个 release 后提交的 fix
OldCarMan
2023-03-23 22:36:44 +08:00
@godsoul 谢谢分享,哈哈,我看有些人直接跑个,ingress-nginx 。
@XiLingHost 使用 kubespray 可以避免这个问题吗,还是另外一个意思?
XiLingHost
2023-03-24 01:14:34 +08:00
@OldCarMan 意思是,kubespray 本身的问题。
它的测试其实是不完全的,在一些少见的情况(比如 containerd 的私有 registry 配置)有时候会出错。
虽然修复一般很快,但是他们的 docker 镜像是跟随 release 的。
因此遇到这种情况,就必须从 master 上把修复的内容在镜像里应用来解决问题。
richangfan
2023-03-24 02:21:16 +08:00
我开了几台虚拟机搭 k8s 集群,用 containerd 老是掉线,用 cri-o 就没问题,也不用另外安装 cni ,挂了一天都没重启一次
wangxiaoaer
2023-03-24 08:21:25 +08:00
感觉有点跟不上了,最初 docker 、docker-compose 、docker-swarm 觉得还挺简单。结果后来 k8s 后,什么 pod 啥的都出来了,再看看 op 提问里面那些名词超过 2/3 没听过,有点恐惧。

有没有扫盲文档给理一下思路?
mritd
2023-03-24 08:52:33 +08:00
k3s 一把梭
Cola98
2023-03-24 09:16:45 +08:00
rancher 容器云管理 CRI 是 docker CSI 是 xksy 监控是 prometheus ,日志 elk
cheng6563
2023-03-24 09:20:09 +08:00
回复:有点意外,之前以为大家可能使用 minikube 之类的多点(不过单节点)

k3s 比 minikube 开销还低些,而且可单可群,不用担心 k8s.gcr.io 墙的问题,为何不用
baiyi
2023-03-24 10:09:07 +08:00
建议直接用 containerd ,如果要用 docker 也尽量用新版本,docker 的问题还是挺多的
fioncat
2023-03-24 10:10:59 +08:00
kvm (逃
iwdmb
2023-03-24 10:31:24 +08:00
aaronkk
2023-03-24 10:55:15 +08:00
基本都是用 kubectl 去管理的,移除 dockershim 感觉也没啥影响,至少通过 cri 直接调用 contained 性能还提升了不少,有 docker 习惯的话 nerdctl 过渡下,问题也不大
iwdmb
2023-03-24 10:57:35 +08:00
K3s 也進 CNCF 了
flexbug
2023-03-24 14:22:27 +08:00
@wangxiaoaer #26 https://landscape.cncf.io/ 看这个就行了
cnbattle
2023-03-24 14:27:09 +08:00
投 K3S 一票
OldCarMan
2023-03-24 16:27:22 +08:00
@XiLingHost soga,release 确实有点坑
@richangfan nice ,我记得 containerd 是默认 cri,掉线是不是哪里没设置好。
@wangxiaoaer 技术这玩意日新月异,大变化基本几年一个周期。
@mritd @iwdmb @cnbattle 看来 k3s 深得人心
@Cola98 nice,这个搭配有遇到过什么问题吗?
@cheng6563 “k3s 不用担心 k8s.gcr.io 墙的问题”,是默认都采用了国内镜像吗?还是它在国内有自己的镜像仓库?
@baiyi docker 对于很多像我一样的人主要是历史包袱,是从 docker 开始接触 devops 的
@fioncat 新方式 get ✔
@aaronkk 确实
cnbattle
2023-03-24 16:42:36 +08:00
@OldCarMan k3s 是基于部署包部署的(依赖的软件和 images 都在离线包里),不是直接拉取 gcr 的镜像,
问题在于 运行安装脚本时 ,要在线下载部署包 还是 自己先下载好,在线安装从 github 下载相关文件

有国内的镜像部署脚本,直接运行安装,我习惯自己下载离线部署包, 安装

可以看下 https://blog.csdn.net/d7185540/article/details/107675616
OldCarMan
2023-03-24 16:48:51 +08:00
@wangxiaoaer 可以先从主要架构看起,推荐看看这下面这几个:

1.https://devopscube.com/kubernetes-architecture-explained/
2.https://kubernetes.io/docs/concepts/overview/components/ (官网)
3.https://d33wubrfki0l68.cloudfront.net/f740b41ed02348ac1aaa43732d8eff3427ae28a1/47c0e/docs/images/diagram-guide-example-3.svg

至于主要功能节点有哪些对应的方案实现,可以看这里:
https://landscape.cncf.io/
https://kubernetes.io/docs/concepts/cluster-administration/addons/

技术方案可以参考大厂实践方案(不一定要用人家的服务,看看别人的技术方案就行了,特别是一些细分领域的),比如阿里的:
https://help.aliyun.com/document_detail/126295.html
OldCarMan
2023-03-24 16:53:18 +08:00
@cnbattle soga, 谢谢。离线部署就担心一个可选择性问题还有一个镜像安全问题。不过哈哈,这么多使用,加开源,一般问题不大。如果镜像来自 GitHub 其实还好,就担心镜像源不统一,从而导致一些仓库镜像版本的问题。

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

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

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

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

© 2021 V2EX