
K8S系列
文章平均质量分 94
K8S系列,主要分享k8s的相关知识,持续更新中,欢迎订阅
颜淡慕潇
985硕士,资深高级研发工程师;优快云认证专家博主,优快云内容战略合伙人,新星计划导师,全栈开发领域杰出内容创作者,同时荣获阿里云专家博主及星级博主殊荣。
平时就爱捣鼓后端及前端技术,分享干货,承蒙厚爱,感谢支持! 希望和大家一起努力,成为更好的自己!
展开
-
【K8S系列】Kubernetes 中如何检查Service和Pod的标签是否匹配?
在 Kubernetes 中,检查 Service 和 Pod 的标签是否匹配是确保服务正常工作的关键步骤。以下是详细的检查方法和步骤:原创 2024-10-31 14:53:40 · 15814 阅读 · 3 评论 -
【K8S系列】Kubernetes 集群中的网络常见面试题
在 Kubernetes 面试中,网络是一个重要的主题。理解 Kubernetes 网络模型、服务发现、网络策略等概念对候选人来说至关重要。以下是一些常见的 Kubernetes 网络面试题及其答案,帮助你准备面试。原创 2024-10-08 10:50:01 · 7112 阅读 · 40 评论 -
【K8S系列】深入解析 Kubernetes 网络策略(二)
在现代微服务架构中,服务之间的通信变得日益复杂,如何有效管理和保护这些通信是一个重要课题。Kubernetes网络策略提供了一种强大的方式来控制 Pod 之间的流量,确保集群的安全性和可靠性。本文将深入探讨 Kubernetes网络策略的工作原理、创建示例、最佳实践以及局限性。原创 2024-09-30 15:14:54 · 15898 阅读 · 10 评论 -
深入解析Kaniko:高效的项目容器化部署实践
Kaniko 是一个开源工具,用于在 Kubernetes 环境中构建容器镜像。它的设计目标是能够在不依赖 Docker守护进程的情况下,构建和推送镜像,这使得它特别适合在云原生环境中使用。本文将深入探讨 Kaniko 的背景、核心特性、工作原理以及应用场景。原创 2024-09-19 16:43:17 · 12369 阅读 · 1 评论 -
【K8S系列】深入解析K8S中PV 和PVC
在 Kubernetes 中,PV(持久卷)和 PVC(持久卷声明)之间的关系是一种动态匹配和绑定关系,用于实现 Pod 与存储资源的解耦。PV 和 PVC 之间的关系是一种动态的匹配和绑定关系,它们使得 Pod 与存储资源的具体实现解耦,提高了灵活性和可移植性。原创 2024-04-20 17:41:16 · 11861 阅读 · 27 评论 -
【K8S系列】深入解析k8s 网络插件—kube-router
kube-router是一个高性能、可扩展的Kubernetes网络插件,适用于大规模和安全敏感的生产环境。虽然它的配置和部署可能有一定的复杂性,但它提供了出色的性能和自动化特性,可以大大简化Kubernetes集群的网络管理。在选择网络插件时,考虑到您的集群规模和性能需求,kube-router可能是一个非常好的选择。原创 2023-10-10 13:57:13 · 34150 阅读 · 116 评论 -
【K8S系列】深入解析k8s 网络插件—Antrea
Antrea 是一个 Kubernetes 网络插件,它提供了强大的网络功能,包括网络策略、路由、连接等任务,同时也是一个可观察性解决方案。Antrea 基于 Flannel 和 Calico,借用了 Flannel 的网络策略和 Calico 的网络可观察性优势。原创 2023-10-07 11:26:37 · 69000 阅读 · 128 评论 -
【K8S系列】深入解析k8s网络插件—Canal
Canal 提供了网络功能,使得 Kubernetes 集群中的 Pod 可以相互通信,并与集群外部的服务进行通信。它通过网络插件的方式,为每个 Pod 分配唯一的 IP 地址,并管理网络流量的路由和转发。此外,Canal 还支持网络策略,用于定义 Pod 之间的通信规则和安全策略。Canal 基于 Calico 和 Flannel 项目,结合了二者的优点。它使用 Calico 的数据平面,提供高性能的网络转发和安全特性,同时使用 Flannel 的控制平面,实现 IP 地址管理和网络策略的配置。原创 2023-09-12 19:24:41 · 37491 阅读 · 171 评论 -
【K8S系列】深入解析k8s网络插件—Cilium
总结起来,Cilium是一个强大的Kubernetes网络插件,通过eBPF技术提供高性能和高级的网络功能。尽管它可能具有一定的学习曲线和复杂性,但对于需要高性能和安全性的组织来说,它是一个有价值的选择。通过了解其概念、优缺点、实现原理、使用场景、使用方法以及解决常见问题的方法,可以更好地利用Cilium来管理和保护Kubernetes集群中的网络通信。原创 2023-09-02 14:43:19 · 35506 阅读 · 115 评论 -
【K8S系列】Weave Net 故障排除的常见问题和解决方案
当使用 Weave Net 进行容器网络配置时,可能会遇到一些常见的故障情况。以下是一些常见问题及其解决方案:原创 2023-08-18 09:18:26 · 44417 阅读 · 78 评论 -
【K8S系列】深入解析k8s网络插件—Weave Net
总体而言,Weave Net 是一个功能强大且易于使用的 Kubernetes 网络插件,它提供了简单的网络配置和管理方式,并具有跨主机容器通信、动态网络拓扑和安全性等优点。然而,它也存在一些性能开销和单点故障的缺点,需要用户在使用之前了解和权衡。原创 2023-08-13 22:52:40 · 55857 阅读 · 144 评论 -
【K8S系列】深入解析k8s网络插件—Calico
Calico是一个强大的开源容器网络和网络安全解决方案,广泛应用于Kubernetes集群和其他容器编排平台。它通过利用BGP(Border Gateway Protocol)协议和Linux网络命名空间来实现高性能的容器间通信和网络策略控制。原创 2023-07-20 14:04:13 · 23565 阅读 · 51 评论 -
【K8S系列】深入解析k8s网络插件—Flannel
Flannel是一个简单、轻量级且可靠的容器网络解决方案,特别适合用于初级部署或者对网络要求不是特别苛刻的场景。它在Kubernetes社区中得到广泛的应用和支持,并且与其他网络解决方案(如Calico、Weave等)相互兼容,可以根据需求进行灵活选择。原创 2023-07-20 13:26:58 · 19864 阅读 · 68 评论 -
【K8S系列】深入解析K8S监控
【深入解析k8s】专栏主要是深入解析每个知识点,帮助大家完全掌握k8s,以下是已更新的章节【深入解析K8S专栏介绍】Kubernetes是一个分布式系统,能够管理和编排容器化应用程序。其中,监控是一个非常重要的方面,可以帮助用户了解集群的健康状态、性能和可用性。在本文中,将详细介绍Kubernetes监控的监控类型监控详解监控软件安装监问题思考在Kubernetes中,监控是一个非常重要的方面,可以帮助用户了解集群的健康状态、性能和可用性。原创 2023-07-06 21:11:20 · 31338 阅读 · 133 评论 -
【K8S系列】深入解析K8S调度
Kubernetes调度是Kubernetes的核心功能之一,它能够自动将Pod分配到最合适的节点上,并确保Pod在所选节点上正常运行。调度器通过算法选择最佳的节点,并将Pod绑定到该节点上。调度器选择节点的依据包括节点的资源使用情况、Pod的资源需求、亲和性和反亲和性等。管理员可以根据自己的需求选择不同的调度算法,并监视调度器的日志以确保集群的正常运行。原创 2023-06-28 18:35:57 · 31845 阅读 · 147 评论 -
【K8S系列】深入解析K8S存储
在 Kubernetes 中,存储具有非常广泛的应用场景。可以根据实际需求选择适合自己的存储方案,以便更好地管理容器化应用程序中的数据和资源。本文会从以下三个方面,带你了解k8s存储:1.k8s存储类型;2.存储使用场景;3.存储使用案例原创 2023-06-25 16:13:51 · 24047 阅读 · 147 评论 -
【面试题系列】关于K8s—Job的2个问题
job执行完之后不会立刻从k8s面板里删除,你可以看到有很多留存状态的记录,如果cronjob频次很高,留下的这些job记录就会增长,有没有隐患?原创 2023-06-25 15:10:04 · 11976 阅读 · 46 评论 -
【K8S系列】如何高效查看 k8s日志
高效查看 Kubernetes 日志需要选择合适的工具和方法,并且需要根据实际情况进行调整和优化在实际使用中,建议使用多种方法来查看 Kubernetes 日志,以便更全面地了解容器的运行情况。原创 2023-06-19 17:10:15 · 44094 阅读 · 93 评论 -
【K8S系列】深入解析k8s网络之—网络故障
网络故障是Kubernetes中常见的问题之一,可能会影响应用程序的正常运行。以下是一些网络故障的常见原因和解决方法的总结:原创 2023-06-14 08:09:23 · 23049 阅读 · 148 评论 -
【K8S系列】快速初始化⼀个最⼩集群
k8s作为⼀个相对⽐较复杂的系统,它有⼀定的⼊⻔⻔槛,我曾浏览它的⽂档很多次,光是在安装的环节上就耗费很久,劝退指数极⾼,但是我们不需要⼀开始就花费很多的时间从安装开始接触它所以我们可以借⽤Docker-Desktop快速启动⼀个本地化最⼩集群,能让我们快速上⼿演练,随着对k8s的理解加深,安装的部分也就迎刃⽽解了。原创 2023-05-12 16:00:19 · 21199 阅读 · 141 评论 -
【K8S系列】深入解析k8s网络
Kubernetes 提供了多种网络插件,可以根据不同的网络需求和环境来选择适合的网络方案。需要注意的是,在进行网络插件的选择和部署时,需要考虑网络的可靠性、性能和安全性等因素。原创 2023-05-05 21:13:33 · 32596 阅读 · 76 评论 -
【K8S系列】深入解析Service
Kubernetes的Service是一种抽象,用于定义一组Pods的访问方式。Service可以为Pods提供稳定的网络终结点,以便其他应用程序可以通过Service来访问这些Pods。总结一下Kubernetes Service知识点:Service类型:Kubernetes支持多种Service类型,包括ClusterIP、NodePort、LoadBalancer和ExternalName。每种Service类型都有不同的用途和特点,可以根据实际需求进行选择。Service端口:Service原创 2023-04-24 17:12:32 · 36557 阅读 · 88 评论 -
【K8S系列】深入解析DNS
在 Kubernetes 中,有两种常见的 DNS 服务器:kube-dns 也是(Cluster DNS)CoreDNS这两个都是 Kubernetes 集群中的默认 DNS 服务器,用于为 Pod 和 Service 提供域名解析服务。原创 2023-04-20 16:56:38 · 34041 阅读 · 63 评论 -
【K8S系列】深入解析etcd
etcd是一个分布式、高可用性的键值存储系统,由CoreOS开发并开源。它使用Raft算法来保证其高可用性和一致性,并可以在集群中的多个节点上部署。每个etcd节点都包含完整的数据副本,并与其他节点进行复制和同步,以确保数据的一致性和可用性。在Kubernetes中,etcd存储了所有的Kubernetes对象(如Pod、Service、Deployment等)以及集群的状态信息。Kubernetes的各个组件(如API Server、Controller Manager、Scheduler等)原创 2023-04-17 14:18:00 · 31926 阅读 · 55 评论 -
【K8S系列】深入解析Job
k8s中的Job和CronJob是两种不同的控制器类型,用于在k8s集群中运行任务。我们总结一下它们的技术总结和使用场景总结。Job的使用场景:1,在集群中运行一次性任务,例如批处理作业、数据导入等。2,任务需要确保只运行一次,并且可以自动重新启动任务。CronJob的使用场景:1,在集群中定期运行任务,例如备份、数据清理等。2,任务需要按照一定的调度计划运行。原创 2023-04-13 22:49:56 · 29149 阅读 · 64 评论 -
【K8S系列】深入解析DaemonSet
Kubernetes是一个容器编排平台,其中DaemonSet是Kubernetes中的一个重要概念。DaemonSet是一种控制器,用于在集群内运行一组Pod,并确保每个节点上都有一个Pod副本在运行。1.2 常用特性下面是一些DaemonSet的常用特性:只在特定的节点上运行Pod:可以使用NodeSelector或者NodeAffinity来限制DaemonSet的Pod只在特定的节点上运行。根据节点的标签更新Pod:如果在集群中添加或删除了节点,Kubernetes会通过DaemonS原创 2023-04-10 19:56:45 · 38846 阅读 · 73 评论 -
【K8S系列】深入解析StatefulSet(二)
StatefulSet 为每一个 Pod 分配并创建一个同样编号的 PVC。这样,Kubernetes 就可以通过 Persistent Volume 机制为这个 PVC 绑定上对应的 PV,从而保证了每一个 Pod 都拥有一个独立的 Volume。有了唯一编号之后,StatefulSet 就使用 Kubernetes 里的两个标准功能:Headless Service、PV/PVC,实现了对 Pod 的拓扑状态和存储状态的维护。原创 2023-04-06 21:06:13 · 31345 阅读 · 56 评论 -
【K8S系列】深入解析StatefulSet(一)
简单介绍一下这个专栏要做的事:主要是深入解析每个知识点,帮助大家完全掌握k8s,Kubernetes StatefulSet是一种用于运行有状态应用的控制器。StatefulSet是一个有序的、可标识的Pod组,并且每个Pod都有一个独特的标识符。这使得StatefulSet能够管理有状态应用程序,例如数据库或队列服务,这些应用程序需要稳定的网络标识符或持久性存储,并且需要有序的、逐个更新的部署方式。应用实例之间有不对等关系实例对外部数据有依赖关系的应用就被称为“有状态应用。原创 2023-04-04 09:20:14 · 41135 阅读 · 58 评论 -
【K8S系列】深入解析滚动升级
Kubernetes是一个流行的容器编排平台,其中的控制器是Kubernetes的核心组件之一,它可以控制Pod的部署和管理。滚动升级是Kubernetes中的一种重要的控制器操作,可以让用户在不中断服务的情况下对应用程序进行升级。本文将深入解析Kubernetes控制器滚动升级的原理和实现方法。滚动升级是指在不中断服务的情况下对应用程序进行升级的操作。在Kubernetes中,滚动升级是通过控制器来实现的。原创 2023-03-31 21:46:34 · 31961 阅读 · 65 评论 -
【K8S系列】深入解析 ReplicaSet
Kubernetes ReplicaSet 是 Kubernetes 中的一个重要组件,它用于确保指定数量的 Pod 副本正在运行。在本节中,我们将深入探讨 Kubernetes ReplicaSet 的一些关键特性和使用方法。原创 2023-03-30 22:20:14 · 41326 阅读 · 39 评论 -
【K8S系列】深入解析控制器
回忆一下,我和你详细介绍了 Pod 的用法,讲解了 Pod 这个 API 对象的各个字段。而接下来,我们就一起来看看“编排”这个 Kubernetes 项目最核心的功能吧。实际上,你可能已经有所感悟:Pod 这个看似复杂的 API 对象,实际上就是对容器的进一步抽象和封装而已。说得更形象些,“容器”镜像虽然好用,但是容器这样一个“沙盒”的概念,对于描述应用来说,还是太过简单了。这就好比,集装箱固然好用,但是如果它四面都光秃秃的,吊车还怎么把这个集装箱吊起来并摆放好呢?所以,原创 2023-03-29 13:33:59 · 30816 阅读 · 54 评论 -
【K8S系列】深入解析无状态服务
无状态服务是一种不需要保存任何数据状态的服务,也不需要维护任何会话信息的服务。这些服务通常被设计为可扩展和高可用性的,因为它们可以在任何时间点部署或删除,而不会对应用程序的可用性产生影响。无状态服务并不适用于所有的应用程序。一些应用程序可能需要维护会话信息、状态信息或持久化数据,这就需要使用有状态服务。因此,在设计应用程序时,需要考虑应用程序的特定要求,以确定应该使用无状态服务还是有状态服务。DeploymentDeployment资源控制器。原创 2023-03-27 15:26:00 · 16533 阅读 · 34 评论 -
【K8S系列】深入解析有状态服务
在 Kubernetes 中,有状态服务可以使用StatefulSet 来进行部署和管理。StatefulSet 可以确保有状态服务的有序部署和缩放,并在节点失败时自动重新启动实例。与 Deployment 不同,StatefulSet 提供了稳定的网络标识符和稳定的存储卷名称,以确保有状态服务在重新调度后仍能够保持其身份和数据。原创 2023-03-27 09:27:16 · 21513 阅读 · 41 评论 -
【K8S系列】深入解析Pod对象(二)
Kubernetes(k8s)中的Volume 是一种抽象概念,用于表示容器中的存储设备。Volume 可以包含多个容器,以便它们可以在容器之间共享数据。Volume 在容器内部进行挂载,从而使容器中的应用程序可以像使用本地存储设备一样使用它们。Kubernetes 中的 Volume 具有以下特点:生命周期:Volume 可以独立于容器而存在,因此可以在容器之间共享和重用数据。类型:Kubernetes 中支持多种类型的 Volume,例如等等。原创 2023-03-23 10:31:20 · 19476 阅读 · 45 评论 -
【K8S系列】深入解析Pod对象(一)
目录序言1.问题引入1.1 问题描述 2 问题解答2.1 pod 属性2.1.1 NodeSelector2.1.2 HostAliases2.1.3 shareProcessNamespace2.1.4 其他pod属性2.2 容器属性2.2.1 ImagePullPolicy2.2.2 Lifecycle下面先介绍 Pod 中几个重要字段的含义和用法原创 2023-03-22 09:27:58 · 17226 阅读 · 49 评论 -
【K8S系列】Pod详解
Kubernetes(简称k8s)是一个流行的开源容器编排系统,它能够简化应用程序部署、管理和扩展。在Kubernetes中,Pod是最基本的部署单元。本文将对Kubernetes Pod进行详细介绍。Pod是Kubernetes中最小的可部署单元,它是一个或多个紧密关联的容器的组合,这些容器共享同一个网络命名空间和存储卷。Pod提供了一个抽象层,它封装了容器在节点上的运行环境,例如存储、网络和运行时环境。原创 2023-03-20 09:28:09 · 15742 阅读 · 80 评论 -
【K8S系列】深入解析 k8s:入门指南(二)
在使用Kubernetes时,需要熟悉Kubernetes的核心概念和机制,并学习如何使用API和CLI工具进行操作。同时,还需要掌握Docker等容器技术,以便将应用程序打包成容器镜像,并部署Kubernetes集群中。Kubernetes是一种强大的容器编排平台,它可以帮助开发者更轻松地管理容器化应用程序。学习之路也是任重而道远,大家一起加油吧!!原创 2023-03-17 16:22:48 · 28749 阅读 · 33 评论 -
【K8S系列】深入解析 k8s:入门指南(一)
了解容器技术、k8s、各大厂商使用k8s的情况理解掌握k8s的核心对象、架构层面掌握k8s的安装方式k8s常见问题的解决方案有了前面内容的铺垫,现在我们来正式看下Kubernetes 是什么吧他简称k8s,是谷歌开源的容器集群管理系统,他的前身Borg是一直以来都被誉为 Google 公司内部最强大的“秘密武器”。这个说法,虽然有些夸张,但不算是吹牛可以看到,上图中,Borg处于架构最底层。原创 2023-03-16 21:38:42 · 19382 阅读 · 48 评论 -
【K8S系列】第十四讲:初识K8s架构之服务器的变迁
在介绍K8S架构之前,先介绍一下服务器的演变过程:物理机时代虚拟机时代容器化时代一台物理机上可以部署多个虚拟机一个虚拟机,可以运行多个容器资源的利用单元,越来越小容器编排是指自动化容器的部署、管理、扩展和联网。容器编排可以为需要部署和管理成百上千个容器和主机的企业提供便利。置备和部署配置和调度资源分配容器可用性根据平衡基础架构中的工作负载而扩展或删除容器负载平衡和流量路由监控容器的健康状况根据运行应用的容器来配置应用保持容器间交互的安全。原创 2023-02-28 10:45:15 · 6944 阅读 · 39 评论 -
【K8S系列】Pod重启策略及重启可能原因
1 重启策略1.1AlwaysPod中的容器,不管因为什么原因停止,都会自动重启。该为默认策略,没有定义重启策略时,默认的就是always1.2OnFailurePod中的容器,非正常停止/异常退出时,会自动重启容器,如果是正常停止,则不会1.3NerverPod中容器不管以什么原因退出,都不会自动重启容器自动重启的可能原因:1.Xms超出了k8s分配2.docker容器的内存限制3.出现OOMKilled事件原创 2023-01-30 18:32:48 · 14824 阅读 · 65 评论