Kubernetes 资源与学习路径总结

需求 👀 与其重要的,是对 kubernetes 资源的收集。 ⚠️ 所有资源均是采用外链连接,书本资源或不放连接,其他均为自己感受和总结。如有侵权请联系删除。 CloudNative 学习途径 关于kubernetes: 官网 GitHub 社区维护的 kubernetes 学习资源合集 Kubernetes源码必读的 Google 大规模集群管理器 Borg etcd:从应用场景到实现原理的全方位解读 和 ZooKeeper典型应用场景一览 关于 CNCF 的贡献,你需要签署 CLA Kubernetes CLA 的签署流程 官方开发者向导 markdown 文件 Kubernetes ownes 所有者md介绍 自己写作的一些资源: 云原生学习 golang 学习 都收纳到 awesome 仓库中,覆盖 📚 菜鸟成长手册🚀 CS系列 、云原生系列、区块链系列、web3系列🔥、Golang系列💡…… 访问 GitHub👀 https://github.com/cubxxw/awesome-cs-cloudnative-blockchain ⏬⏬⏬ GitHub - cubxxw/awesome-cs-cloudnative-blockchain: 📚 菜鸟成长手册🚀 CS系列 、云原生系列、区块链系列、web3系列🔥、Golang系列💡…… 最好需要什么 如果说第一步的话,那必须要了解 docker 容器底层原理和 Linux 内核基础相关。 先理解理解完架构了,读起来就比较快了。 学会使用它,不会使用,永远无法理解它的设计理念。 读源码还得带着问题去读,不然会很枯燥。一定要带着问题去读,不然就会很枯燥,然后陷入细节中去 读源码还得有一定积累量,比如你已经读过很多基础包的源码比如 net/http grpc-go 等等 要尝试着调试,要尝试着练习,要尝试着理解和分析产品理念,更要学会自己设计。 Kubernetes 工程师的学习顺序推荐 graph LR; 微服务 --> Docker; Docker --> Kubernetes; Kubernetes --> Knative; Knative --> Prometheus; Knative --> Jaeger; Knative --> EFK; Knative --> DevOps; Prometheus --> KVM; Jaeger --> KVM; EFK --> KVM; DevOps --> KVM; KVM --> Istio; Istio --> Kafka; Kafka --> Etcd; Etcd --> Tyk; 推荐的学习资源整理:...

August 6, 2024 · 2 分钟 · 423 字 · 熊鑫伟,我

Kubernetes 的 CNI,CRI,CSI 详解

容器运行时 容器运行时(Container Runtime),运行于Kubernetes (k8s)集群的每个节点中,负责容器的整 个生命周期。其中Docker是目前应用最广的。随着容器云的发展,越来越多的容器运行时涌现。为了 解决这些容器运行时和Kubernetes的集成问题,在Kubernetes 1.5版本中,社区推出了CRI ( Container Runtime Interface,容器运行时接口)以支持更多的容器运行时。 什么是 CRI CRI 是 Kubernetes 定义的一组 gRPC 服务。 kubelet 作为客户端,基于 gRPC 框架,通过 Socket 和容器运行时通信。它包括两类服务: 镜像服务(Image Service):提供下载、检查和删除镜像的远程程序调用; 运行时服务(Runtime Service):包含用于管理容器生命周期,以及与容器交互的调用(exec/ attach / port-forward)的远程程序调用。 运行时的层级 容器运行时可以分为高层和低层的运行时: Dockershime,containerd 和 CRI-O 都是遵循 CRI 的容器运行时,我们称之为 高级运行时。 OCI 定义了创建容器的格式和运行时的开源行业标准,包括 镜像规范(Image Specification) 和 容器运行时规范 (runtime specification) 镜像规范定义了 OCI 镜像标准,高层级运行时 将会下载一个 OCI 镜像,并且将它解压为 OCI 运行时文件系统包(file system bundle) 运行时规范描述了如何从 OCI 运行时文件系统包运行容器程序。并且定义它的配置,运行环境和生命周期。如何为新的容器设置命名空间(namespace)和控制组(cgroup) ,以及挂载根文件系统(rootfs)等等操作,都是在这里定义的。它的一个参考实现是 runc,我们称其为 低层级运行时(Low-level Runtime) 高层级运行时(High-level Runtime):主要包括 Docker,containerd 和 CRI-O 低层级运行时(Low-level Runtime):包含了 runc, kata,以及 gVisor。 低层运行时 kata 和 gVisor 都还处于小规模落地或者实验阶段,其生态成熟度和使用案例都比较欠缺,所以除非有特殊的需求,否则 runc 几乎是必然的选择。因此在对容器运行时的选择上,主要是聚焦于上层运行时的选择。...

September 28, 2023 · 11 分钟 · 2200 字 · 熊鑫伟,我