首页
Python
Java
前端
数据库
Linux
Chatgpt专题
开发者工具箱
pod专题
k8s调度(pod亲和、反亲和、污点、容忍度)
pod亲和性 针对对象为Pod,目的是实现,新建Pod和目标Pod调度到一起,在同一个Node上。 示例: apiVersion: v1kind: Podmetadata:name: testpod01labels:app: myapp01env: test1spec:containers:- name: testpod01image: nginx:1.23.2---apiVersio
阅读更多...
Kubernetes Scheduler:Pod调度的双步骤—预选(Predicates)和优选(Priorities)
Kubernetes Scheduler:Pod调度的双步骤—预选(Predicates)和优选(Priorities) 1、预选(Predicates)2、优选(Priorities) 💖The Begin💖点点关注,收藏不迷路💖 在Kubernetes中,Pod的调度是由Scheduler负责的。Scheduler通过两个关键步骤——预选(Predicat
阅读更多...
pod install 报错处理
由于墙的原因,pod install 、 pod update经常报错 有效的解决方案(推荐): 以SnapKit为例 找不报错的同事要以下两个文件(指定的版本) 1. /Users/xxx/Library/Caches/CocoaPods/Pods/Release/SnapKit 2. /Users/xxx/Library/Caches/CocoaPods/Pods/Specs
阅读更多...
kubernetes Pod failed to create fsnotify watcher: too many open files
fs.nr_open: 控制单个进程可以打开的文件描述符的最大数量。单个进程的文件描述符限制可以通过 ulimit 命令来设置。 /proc/sys/fs/nr_open 是一个系统级别的全局参数,表示系统中单个进程能够打开的文件描述符总数的限制。/proc/sys/fs/file-max 系统级别,当前系统可打开的最大数量/etc/security/limits.conf 用户级别,指定用户
阅读更多...
K8s的Pv和Pvc就是为了pod数据持久化
一、 1.pv(persistent volume):是k8s虚拟化的存储资源,实际上就是存储,列如本地的硬盘、网络文件系统(Nfs)、lvm、RAID、云存储。 2.pvc:pod对存储资源的请求,定义了需要存储的空间大小,以及对存储空间的访问模式,有了pvc请求之后,再和pv进行匹配,匹配到了之后进行绑定,绑定成功之后就可以使用pv的存储空间。 二、pv和pvc生命周期 1.配置定
阅读更多...
【Kubernetes知识点问答题】Pod 调度
目录 1. 如何将特定 Pod 调度到指定的节点? 2. 什么是节点的亲和性? 3. 什么是污点,它的主要用途是什么? 1. 如何将特定 Pod 调度到指定的节点? 可以使用下列方法中的任何一种来选择 K8s 对特定 Pod 的调度: ① 与节点标签匹配的 nodeSelector: 在 Pod 的规范中使用 nodeSelector 字段来指定节点
阅读更多...
记录k8s的pod生命周期笔记
Pod的生命周期指的是Pod从创建到终止的整个过程。 生命周期包含以下几个重要流程: 创建主容器(containers)是必须的操作,初始化容器(initContainers),容器启动后钩子,启动探测、存活性探测,就绪性探测,容器停止前钩子。 以下是Pod生命周期的主要阶段: Pending:Pod已经被Kubernetes系统接受,但一个或多个容器镜像尚未创建。这可能是因为系统正在为Pod
阅读更多...
pod基础和镜像拉取策略
目录 pod概念 pod的分类 1.基础容器 pause 2.初始化容器 init 实验:定义初始化容器 init容器的作用 实验:如何在容器内部进行挂载 镜像拉取策略 pod概念 pod是k8s里面的最小单位,pod也是最小化运行容器的资源对象。容器是基于pod在k8s集群当中工作的。在k8s集群当中,一个pod就代表着一个运行的进程,k8s的大部分组件都是围绕pod
阅读更多...
pod进阶:
pod进阶: pod的生命周期当中的状态: 1、Running 运行中,pod已经分配到节点上,且pod内的容器正常运行。正常状态(ready 1/1) 2、complete 完成之后退出,容器内的返回码是0 echo $? 表示容器是正常的运行结束 3、pending 挂起状态,pod已经创建好了,但是没有被分配到节点上。 4、Failed 失败:容器内的返回码是非0状态退出,进入失败
阅读更多...
k8s-pod 实战一 (创建pod,启动命令,参数,pod故障排除,拉取命令)
1. 创建一个Pod Pod 是 Kubernetes 中最小的部署单元。它可以包含一个或多个容器。下面是一个简单的 YAML 文件,用于创建一个包含 Nginx 容器的 Pod。 示例 YAML 文件 (nginx-pod.yaml) apiVersion: v1kind: Podmetadata:name: nginx-podspec:containers:- name: ngin
阅读更多...
k8s中pod基础及https密钥、horber仓库
一、pod基础: 1.pod是k8s里面最小单位,pod也是最小化运行容器的资源对象;容器是基于pod在k8s集群中工作;在k8s集群当中,一个pod就代表着一个运行进程,k8s的大部分组件都是围绕pod进行的,对pod进行支持支持和扩展。例如deployment、service都是围绕pod进行部署。 2.k8s的pod有两种使用方式: 一个pod一个容器,这是最常见的方式,k8s管理po
阅读更多...
Kubernetes的Pod的资源配额
一.为什要进行资源配额 我们可以使用一些方法从多个维度保障了服务的可用性,比如调度到不同的机器和机房、配置可靠的健康检查等。但是上述措施都是基于应用级别去做的,如果我们的Kubernetes集群用来运行容器的节点有了故障,带来的影响是很大的,所以在保证应用本身的前提下,也要通过一些措施保障节点的可用性 节点故障大部分都是由于资源分配不合理、超额分配引起的,因此需
阅读更多...
k8s-pod 实战三 (Liveness Probe 和 Readiness Probe 详细分析)
一、Liveness Probe 和 Readiness Probe 详细分析 Liveness Probe Liveness Probe 用于检查容器是否处于健康状态。如果探针失败,Kubernetes 会杀死容器并根据重启策略决定是否重启。这对于检测和恢复应用程序中的死锁或其他致命错误非常有用。 Readiness Probe Readiness Probe 用于检查容器是否准备好接受
阅读更多...
k8s-pod 实战六 (如何在不同的部署环境中调整startupprobe的参数?)
在不同的部署环境中(如开发、测试、生产环境),你可能希望对 startupProbe 的参数进行调整,以适应不同的需求和条件。以下是几种常见的方法和实践: 方法一:使用 Kustomize 1. 目录结构 假设你的项目目录结构如下: my-app/├── base/│ └── deployment.yaml├── overlays/│ ├── development/│
阅读更多...
K8S-pod概念
基本概念 1、容器的本质到底是什么?容器的本质是进程。 2、容器镜像呢?类似这个系统里的“.exe”安装包。 3、Kubernetes呢?Kubernetes 就是操作系统! 4、Pod是什么呢?Pod是Kubernetes 里的原子调度单位。Kubernetes 项目的调度器,是统一按照 Pod 而非容器的资源需求进行计算的。 进程组 在一个真正的操作系统里,进程并不是“孤苦伶仃”地独自运
阅读更多...
【k8s系列】驾驭容器化未来:Kubernetes Pod的全面解析与简单实践
一、前言 在当今快速发展的云计算和容器化技术领域,Kubernetes已经崭露头角,成为自动化容器操作的开源平台。在这个生态系统中,Pod作为Kubernetes的最小和最简单的单元,扮演着至关重要的角色。Pod不仅是容器的集合,更是资源共享和协同工作的基础。作为初探容器化技术的爱好者,笔者也是在k8s学习过程中根据自己的理解分享一下这块的具体内容,希望对感兴趣的小伙伴有所帮助~ 二、Pod的
阅读更多...
【云原生】Kubernetes中常见的Pod故障排查定位与解决方案
✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全栈,前后端开发,小程序开发,人工智能,js逆向,App逆向,网络系统安全,数据分析,Django,fastapi
阅读更多...
Cgroup Driver配置异常导致的节点k8s涉及到的pod无法启动问题的处理
文章目录 前言一、现象二、问题定位1.docker服务检查2.message日志检查3.检查Cgroup Driver的配置4.修改/etc/docker/daemon.json文件 总结 前言 Cgroup Driver配置异常导致的节点k8s涉及到的pod无法启动问题的处理。 同事有台云主机重启之后,发现k8s相关的pod全部都无法自动启动了,进行处理。 一、现象
阅读更多...
【kubernetes】Pod容器健康探测
三种实现容器探测的方法: 1、startupProbe: 探测容器中的应用是否已经启动。如果提供了启动探测(startup probe),则禁用所有其他探测,直到它成功为止。如果启动探测失败,kubelet 将杀死容器,容器服从其重启策略进行重启。如果容器没有提供启动探测,则默认状态为成功Success。 2、livenessprobe: 用指定的方式(exec、tcp、http)检测po
阅读更多...
Kubernetes Pod的创建、管理与删除
Kubernetes Pod的创建、管理与删除 1、Pod的创建2、操作Pod及Node标签3、Pod的删除 💖The Begin💖点点关注,收藏不迷路💖 1、Pod的创建 提交配置:用户通过kubectl或API提交Pod配置到kube-apiserver。存储配置:kube-apiserver将配置存储在ETCD中。调度Pod:Controller Ma
阅读更多...
k8s跨节点后pod无法访问
场景 k8s在node1节点部署nginx后, 除node1外,主节点以及node2节点都无法正常访问nginx 并且主节点以及node2节点都无法ping通node1节点上的pod 网络插件为calico 并且也没有相关路由信息 解决方案 启动tunl0接口,因为calico需要使用tunl0网卡在各个节点通信。 在每个节点都执行以下操作 systemctl rest
阅读更多...
深入探索Kubernetes中的PersistentVolume:Pod数据持久化实践
在Kubernetes中,Pod通常被认为是短暂的,这意味着当Pod被删除时,它所占用的存储空间也会随之消失。然而,在许多场景下,我们需要Pod能够持久化存储数据,即使Pod被重启或重新调度。这时,PersistentVolume(PV)和PersistentVolumeClaim(PVC)就发挥了关键作用。本文将详细介绍如何在Pod中使用PersistentVolume来实现数据的持久化存储。
阅读更多...
Pod 调度基础
1.1.复制控制器 (replicationcontroller rc) : 让你的pod的副本数,保存在你的预期值 , 几乎不用了做副本用 提前编辑好文件 1.创建 kubectl apply -f replicationcontroller-nginx.yaml 2.查看 kubectl get pod 3.删除一个pod并立即查看pod状态 kubectl d
阅读更多...
Pod和Deployment
一、pod Evicted状态: 在Kubernetes中,当节点资源紧张时,Kubelet可能会驱逐节点上的一些Pods以释放资源。当这种情况发生时,Pod的状态会被设置为"Evicted"。 1.pod的探针 1.就绪性探针: 一般用于探测容器内的程序是否健康,容器是否准备好服务请求。 2.存活性探针: 用于探测容器是否运行。如果存活探测失败,则 kubelet 会杀死容器,并且容器将受
阅读更多...
在Kubernetes中通过 pod 打开 pod所在宿主机上的shell
昨日一伙计突然问我 在么把自己打好的 docker镜像 上传到 kubernetes 的 节点的 local 镜像池。 现状大约如下: 1)只有master节点的登录权限; 2)不知道存在哪些worker节点也无法通过 master 借助SSH 登录到 worker节点 (这点我很困惑,难道部署 Kubernetes 集群时不应该打通 部署节点【默认为master1】到其他节点的SSH免密登
阅读更多...
Kubernetes-Pod调度基础
一.复制控制器(ReplicationController,RC) RC用来确保Pod副本数达到预期值,这样可以确保一个或多个同类Pod总是可用的。可以通过扩缩来增加或减少pod。 (1)示例: vim replicationcontroller-nginx.yamlapiVersion: v1kind: ReplicationControllermetadata:
阅读更多...