Kubernetes
文章平均质量分 89
小肖同学..
当笔记写,记录日常学习内容,和工作内容
展开
-
【云原生|Kubernetes】15-Kubernetes的污点和容忍详解
污点(Taint)是指标记节点的一种机制,用于告诉 Kubernetes 集群这个节点上的 Pod 是有问题的,例如某些节点资源已经不足等。当节点被标记为污点时,Kubernetes 调度器将不会将新的 Pod 分配到这个节点上,除非这个 Pod 明确地声明了它可以容忍这个节点上的污点。污点通常用于保证某些节点上运行的应用程序不会被新的 Pod 占用。 容忍度(Toleration)是指告诉 Kubernetes 集群一个 Pod 可以容忍哪些节点上存在的污点。原创 2023-08-21 16:28:12 · 2021 阅读 · 5 评论 -
【云原生|Kubernetes】14-DaemonSet资源控制器详解
在 Kubernetes 中,DaemonSet 是一种用于在节点上运行指定的 Pod 的控制器(Controller)。与 ReplicaSet 或 Deployment 不同,DaemonSet 不是为了扩展 Pod 数量而创建的,而是为了在每个节点上运行一个实例或多个实例的 Pod。 DaemonSet 通常用于在 Kubernetes 集群中运行一些系统级别的服务或者网络代理,例如日志收集器、监控代理、网络插件等。原创 2023-08-09 09:15:57 · 1434 阅读 · 0 评论 -
【云原生|Kubernetes】13-Deployment资源控制器详解
kubernetes中有很多资源控制器,这些资源控制器我们只说一些重要且常用的。在介绍Deploymen之前,我们会逐个介绍这些控制器。 Pod控制器是用于实现管理pod的中间层,确保pod资源符合预期的状态,pod的资源出现故障时,会尝试 进行重启,当根据重启策略无效,则会重新新建pod的资源。ReplicaSet 的目的是维护一组在任何时候都处于运行状态的 Pod 副本的稳定集合。因此,它通常用来保证给定数量的、完全相同的 Pod 的可用性一个 Deployment 为Pod和ReplicaSet。原创 2023-07-11 09:38:06 · 2595 阅读 · 2 评论 -
【云原生|Kubernetes】12-容器生命周期的回调(PreStart和PreStop)
我们知道,K8S可以在应用容器启动之前先执行一些预定义的操作,比如事先生成一些数据,以便于应用容器在启动的时候使用。这种方式可以通过init container技术实现。那么事实上,在实际生产中,还有一种需求,就是我们需要在应用容器启动后执行一些初始化操作,比如设置容器的dns参数等,说到这里就不得不多提一句,k8s到目前为止尚不支持通过为kubelet添加参数的方式为应用容器设置dns的options。原创 2023-07-05 09:18:23 · 2266 阅读 · 0 评论 -
【云原生|Kubernetes】10-Namespace的cpu和内存的请求与限制
以下是配置命名空间的cpu和内存的默认值,以及最大,最小值metadata:spec:limits:- default:cpu: 1cpu: 0.8max:cpu: 2min:cpu: 0.6显示如下pod中的容器不指定cpu,内存的限制和请求时,将使用命名空间设置的默认值;pod中的容器只设置cpu或者内存的请求时,容器的 CPU 和内存的限制被设置为命名空间的默认 CPU CPU 和内存限制值;pod中的容器只设置cpu或者内存的限制时。原创 2023-06-13 20:52:07 · 2820 阅读 · 8 评论 -
【云原生|Kubernetes】08-Pod中的Init容器
Init 容器是一种特殊容器,在 Pod内的应用容器启动之前运行。Init 容器可以包括一些应用镜像中不存在的实用工具和安装脚本。你可以在 Pod 的spec中与用来描述应用容器的containers数组平行的位置指定 Init 容器。Init 容器的状态在字段中以容器状态数组的格式返回 (类似字段)。原创 2023-06-07 17:33:51 · 1756 阅读 · 6 评论 -
【云原生|Kubernetes】07-Pod健康检查和服务可用性检查
这篇文章介绍如何给容器配置存活(Liveness)、就绪(Readiness)和启动(Startup)探针。Exec探针: Exec探针是一种通过在容器内部运行命令并检查其退出代码来检测容器是否处于活动状态的Liveness存活探针;http探针:HTTP存活探针是一种用于检测Web服务器是否处于活动状态的探针;TCP探针:TCP存活探针是一种用于检测TCP端口是否处于活动状态的探针;有时候,会有一些现有的应用在启动时需要较长的初始化时间。原创 2023-05-28 21:45:36 · 1193 阅读 · 1 评论 -
【云原生|Kubernetes】06-Pod的生命周期和重启策略
从 API 服务器处获得的 YAML 通常包含一些创建 Pod 所用的 YAML 中不存在的行,这是正常的。从 API 服务器处获得的 YAML 通常包含一些创建 Pod 所用的 YAML 中不存在的行,这是正常的。 接下来就要检查的是 API 服务器上的 Pod 与你所期望创建的是否匹配 (例如,你原本使用本机上的一个 YAML 文件来创建 Pod)。Pod在整个生命周期中被系统定义了各种状态,熟悉Pod的各种状态对于理解如何设置Pod的调度策略,重启策略和排查pod的启动异常事很有必要的。原创 2023-05-26 18:28:02 · 1319 阅读 · 5 评论 -
【云原生|Kubernetes】03-Pod详解
Kubernetes的资源文件有很多如pod,Deployment,DaemonSet,ReplicaSet,Cronjob,job,StatefulSet,ConfigMap,PVC,Seceret。学习kubernetes的核心,就是学习如何对集群上的Pod、Pod控制器、Service、存储等各种资源进行操作;后面我们将逐个介绍这些资源类型;本章我们详细说说-Pod在 Kubernetes 中,Pod是最小的可部署的单位,它是一个或多个容器的集合,它们共享同一个网络命名空间和存储卷。原创 2023-05-17 21:04:06 · 1635 阅读 · 0 评论 -
【云原生|kubernetes】04-解决kubectl无法tab补齐指令
【代码】【云原生|kubernetes】04-解决kubectl无法tab补齐指令。原创 2023-05-17 21:05:42 · 321 阅读 · 0 评论 -
【云原生Kubernetes】01-Kubernetes简介
我们在说Kubernetes之前已经详细说了docker的相关内容,在说docker的时候,大多数情况下都是在单机使用,这显然不符合实际生产需求,因此需要使用集群,前面说过docker官方的多机编排docker-swarm,接下来我们将说另外的容器多机编排系统-Kubernetes。Kubernetes 是一个可移植、可扩展的开源平台,用于管理容器化工作负载和服务,可促进声明式配置和自动化。它有一个庞大的、快速发展的生态系统。Kubernetes 服务、支持和工具广泛可用。原创 2023-04-27 17:18:40 · 2005 阅读 · 0 评论 -
【云原生|Kubernetes】02-Kubeadm安装部署Kubernetes集群
前面简单介绍了Kubernetes的相关架构及其组件,这一章节我们将介绍如何快速搭建Kubernetes的集群,这里我们将使用官方支持的用于部署 Kubernetes 的工具—kubeadm。主机名ip地址节点类型系统版本centos7.xnode1centos7.xnode2centos7.x在所有节点上安装kubeadm,kubectl,kubelet。kubeadm: 安装kubernetes集群的安装工具,(安装master和node上的组件)原创 2023-05-04 15:35:07 · 2095 阅读 · 0 评论