K8S哲学 - cluster

A Kubernetes cluster consists of two types of resources:

  • The Control Plane coordinates the cluster
  • Nodes are the workers that run applications
    The Control Plane is responsible for managing the cluster. The Control Plane coordinates all activities in your cluster, such as scheduling applications, maintaining applications' desired state, scaling applications, and rolling out new updates
    A node is a VM or a physical computer that serves as a worker machine in a Kubernetes cluster. Each node has a Kubelet, which is an agent for managing the node and communicating with the Kubernetes control plane. The node should also have tools for handling container operations, such as containerd or CRI-O. A Kubernetes cluster that handles production traffic shouldhave a minimum of three nodes because if one node goes down, both an etcd member and a control plane instance are lost, and redundancy is compromised. You can mitigate this risk by adding more control plane nodes.

在 Kubernetes 中,kubelet 是运行在每个节点上的一个关键组件,它负责管理该节点上的 Pods 和容器。kubelet 通过 Kubernetes API 与控制平面进行通信,获取调度到该节点的 Pods 的信息,报告节点和 Pods 的状态,以及执行控制平面发出的各种操作,如启动和停止 Pods。

Kubernetes API 是控制平面对外暴露的接口,它定义了一组 RESTful API,用于管理和操作 Kubernetes 集群的各种资源,如 Nodes、Pods、Services 等。除了 kubelet 和其他节点级别的组件,终端用户也可以直接使用 Kubernetes API 来与集群进行交互。例如,当你使用 kubectl 命令行工具时,kubectl 实际上是在后台调用 Kubernetes API 来执行你的命令。

kubelet vs kubectl

Node-level components, such as the kubelet, communicate with the control plane using the Kubernetes API, which the control plane exposes. End users can also use the Kubernetes API directly to interact with the cluster

kubectl apply

kubectl apply 命令用于应用或更新 Kubernetes 资源。它并不是用来启动集群的,而是用来在已经运行的 Kubernetes 集群中创建或更新资源,如 Pods、Services、Deployments 等。

Minikube 是一个轻量级的 Kubernetes 实现,它在你的本地机器上创建一个虚拟机,并在其中部署一个只包含一个节点的简单集群。Minikube 支持 Linux、macOS 和 Windows 系统。Minikube 的命令行接口提供了一些基本的引导操作,用于操作你的集群,包括启动(start)、停止(stop)、查看状态(status)和删除(delete)。

相关推荐
Lumbrologist4 小时前
【零基础部署】Docker 部署 CrewAI 多 Agent 编排框架保姆级教程
运维·docker·容器
Dongwoo Jeong9 小时前
微服务架构(MSA)是如何诞生的?
微服务·云原生·架构
半旧夜夏9 小时前
【保姆级】微服务组件环境搭建(Docker Compose版)
java·linux·spring cloud·微服务·云原生·容器
阿里云云原生9 小时前
实战解析:如何用自然语言驱动混沌工程?Blade AI Agent 实现故障演练全链路自动化
云原生
张忠琳10 小时前
【kubernetes v1.21】(kubelet 1)Kubelet 核心架构与启动流程
云原生·架构·kubernetes·kubelet
宇明一不急11 小时前
k8s HPA storageclass configmap
云原生·容器·kubernetes
ZzzZZzzzZZZzzzz…13 小时前
Docker + K8s集群搭建实战:1 Master+2 Node,含Harbor私有仓库与软路由
docker·云原生·容器·kubernetes·容器编排·集群部署·cri-dockerd
xier_ran14 小时前
【infra之路】模块三:Kubernetes (下) — 阶段一毕业项目:在集群里跑 PyTorch 训练
pytorch·容器·kubernetes
Waay14 小时前
K8s新手实操|emptyDir卷超详细实战(附完整命令+核心理解)
云原生·容器·kubernetes
liux352815 小时前
K8s 核心接口:CNI、CSI、CRI、LB 一篇讲透
云原生·容器·kubernetes