随笔分类 - 黄嘉波-笔记汇总
摘要:K8S(Kubernetes)是一个开源的容器编排和管理平台,它提供了容器部署、扩展、管理以及服务发现等功能。K8S的架构可以大致分为控制平面(Control Plane)和工作节点(Worker Nodes)两部分。以下是对K8S架构的详细陈述: 一、控制平面(Control Plane) 控制平
阅读全文
摘要:在Kubernetes(K8S)中,Pod污点(Taints)和容忍度(Tolerations)是两种用于控制Pod调度到特定节点的机制。它们相互配合,允许集群管理员更精细地控制Pod的部署位置,以确保资源的高效利用和服务的稳定运行。 一、Pod污点(Taints) 定义与目的: 污点是一种应用于节
阅读全文
摘要:在Kubernetes中,Pod亲和性(Pod Affinity)是一种策略,它允许你根据特定的规则来控制Pod在集群中的分布。使用Pod亲和性,你可以定义Pod应该或不应该与哪些节点或Pod一起运行。这有助于优化资源使用、提高应用性能、确保数据的局部性以及满足特定的业务需求。 Pod亲和性主要有以
阅读全文
摘要:在Kubernetes中,Flannel负责为Pod提供跨节点的网络连接,但它本身并不直接分配Pod的IP地址。Pod的IP地址是由Kubernetes的网络插件分配的,Flannel只是在这个过程中起到辅助作用。然而,Flannel可以配置为使用特定的网络模式,以支持更灵活的IP地址管理。 以下是
阅读全文
摘要:在Kubernetes(K8S)中,Flannel作为一个流行的容器网络接口(CNI)插件,用于为集群中的容器提供网络互通能力。Flannel支持多种模式来实现其网络功能,主要包括以下几种常见模式: 1. VXLAN模式 描述:VXLAN(Virtual Extensible LAN)是Flanne
阅读全文
摘要:在Kubernetes(K8S)中,有状态应用(StatefulSets)和无状态应用(Stateless applications)是两种不同的应用部署和管理方式,它们在设计和运行时考虑了应用的状态管理需求。 1. 无状态应用(Stateless Applications) 定义:无状态应用是指应
阅读全文
摘要:在Kubernetes(K8S)中,DaemonSet是一种控制器资源对象,它具有一系列独特的资源特性,这些特性使得DaemonSet特别适用于在集群的每个节点上运行守护进程或服务。以下是DaemonSet类型资源特性的详细阐述: 1. 确保每个节点上运行Pod副本 节点级部署:DaemonSet确
阅读全文
摘要:在Kubernetes中,PersistentVolume(PV)的生命周期状态有以下几种: Available(可用):表示该PV已经准备好被Pod使用。它可能处于空闲状态,或者已经被绑定到一个PVC上。 Bound(已绑定):表示该PV已经被一个PVC绑定,并且正在被某个Pod使用。此时,PV上
阅读全文
摘要:在Kubernetes(K8S)中,PV(PersistentVolume)和PVC(PersistentVolumeClaim)是两个核心概念,用于实现数据的持久化存储。它们之间的关系是一种动态匹配和绑定关系,用于实现Pod与存储资源的解耦。以下是对PV和PVC的详细解释: 1. PV(Persi
阅读全文
摘要:在K8S中,数据持久化主要通过Persistent Volumes (PV)、Persistent Volume Claims (PVC)和StorageClass等组件实现。以下是K8S如何实现数据持久化的详细解释: Persistent Volumes (PV):PV是集群级别的资源,代表一段预
阅读全文
摘要:在Kubernetes(K8S)中,Service是一种抽象,它定义了一组逻辑上的Pods以及访问这些Pods的策略。Service解决了Pods的生命周期管理和通信问题,提供了稳定的网络端点和负载均衡机制,确保应用程序的高可用性和可扩展性。Kubernetes支持多种类型的Service,每种类型
阅读全文
摘要:在Kubernetes中,Deployment 和 StatefulSet 都是用来管理应用的资源对象,但是它们的设计目的和服务场景有所不同。下面详细解释这两种资源的区别: 1. Deployment 用途: Deployment 主要用于管理无状态应用,即那些不需要持久化数据或者不需要唯一网络标识
阅读全文
摘要:在Kubernetes中,Deployment 提供了一种非常强大的方式来更新应用,同时保持应用的可用性。以下是使用 Deployment 进行应用升级的过程,包括滚动更新、回滚、暂停和恢复更新等操作。 1. 升级过程 准备工作: 确保你有一个现有的 Deployment。 准备新的容器镜像或者其他
阅读全文
摘要:在Kubernetes(K8S)中,Deployment的创建过程是一个涉及多个组件和步骤的复杂流程。以下是一个详细的步骤说明,包括从创建Deployment配置文件到Pod在集群中实际运行的整个过程: 1. 创建Deployment配置文件 首先,需要准备一个YAML格式的配置文件,用于定义Dep
阅读全文
摘要:在Kubernetes中,Deployment 是用来声明式地管理无状态应用的声明周期的API对象。一个典型的Deployment YAML 文件包含了一系列的字段,用于定义应用的期望状态。以下是编写Deployment YAML 文件的基本步骤和要点: 定义API版本 (apiVersion):
阅读全文
摘要:在K8S中,API Server(kube-apiserver)的高可用性是通过冗余部署、负载均衡、共享存储、健康检查与自动恢复以及同步时间等策略来实现的。下面将详细阐述每一种实现机制,并探讨它们如何共同确保集群在面对故障时能够保持服务的连续性和稳定性: 冗余部署 无状态特性:kube-apiser
阅读全文
摘要:在 Kubernetes (K8S) 中,有两种主要的安装方法:二进制安装和使用 kubeadm 安装。这两种方法各有优缺点,适用于不同的场景和需求。下面详细解释这两种安装方法的区别: 1. 二进制安装 定义 二进制安装 是指手动下载 Kubernetes 组件(如 kubelet、kube-api
阅读全文
摘要:在 Kubernetes (K8S) 中,Pods 可以根据其创建和管理的方式分为几类。下面是三种常见的 Pod 类型:静态 Pod、自主式 Pod 和动态 Pod。 1. 静态 Pod (Static Pods) 定义: 静态 Pod 是一种特殊的 Pod 类型,它们不是通过 Kubernetes
阅读全文
摘要:在 Kubernetes (K8S) 中,Pod 的生命周期涉及多个状态,这些状态反映了 Pod 从创建到终止的各个阶段。以下是 Pod 生命周期中的主要状态: Pending (挂起): Pod 已经被创建,但至少有一个容器镜像尚未创建。 这个状态还包括 Pod 被调度到节点之前的时间,以及等待镜
阅读全文
摘要:在 Kubernetes (K8S) 中,镜像的更新策略主要由 imagePullPolicy 参数控制。当 Pod 中的容器镜像需要更新时,Kubernetes 会根据这个策略决定如何处理镜像的拉取行为。imagePullPolicy 是 Pod 规范的一部分,它影响着容器镜像的拉取方式。以下是
阅读全文

浙公网安备 33010602011771号