k8s相关背景

本文将探讨Kubernetes的相关知识背景,重点介绍其丰富的Resource类型,如Pod、ReplicaSet等,构成了Kubernetes复杂的数据模型。Kubectl作为与API Server交互的客户端工具,通过与Controller Manager协作,实现对集群中各个节点的控制。Kubectl的实现原理涉及Builder和Visitor模式,解析用户输入并转化为API Server可处理的结构。
摘要由CSDN通过智能技术生成

接下来,我们再来了解一下相关的知识背景:

  • 对于Kubernetes,其抽象了很多种的Resource,比如:Pod, ReplicaSet, ConfigMap, Volumes, Namespace, Roles …. 种类非常繁多,这些东西构成为了Kubernetes的数据模型(点击 Kubernetes Resources 地图 查看其有多复杂)
  • kubectl 是Kubernetes中的一个客户端命令,操作人员用这个命令来操作Kubernetes。kubectl 会联系到 Kubernetes 的API Server,API Server会联系每个节点上的 kubelet ,从而达到控制每个结点。
  • kubectl 主要的工作是处理用户提交的东西(包括,命令行参数,yaml文件等),然后其会把用户提交的这些东西组织成一个数据结构体,然后把其发送给 API Server。
  • 相关的源代码在 src/k8s.io/cli-runtime/pkg/resource/visitor.go 中(源码链接

kubectl 的代码比较复杂,不过,其本原理简单来说,它从命令行和yaml文件中获取信息,通过Builder模式并把其转成一系列的资源,最后用 Visitor 模式模式来迭代处理这些Reources

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值