Kubernetes05: Pod

news2024/11/14 4:05:44

Kubernetes05: Pod

请添加图片描述

1、概述

1)最小部署的单元
2)K8s不会处理容器,而是Pod,Pod里边包含多个容器(一组容器的集合)
3)一个Pod中的容器共享一个网络命名空间
4) Pod是短暂存在的东西(重新创建/启动Pod,其IP是不一致的)
5)每个Pod都有一个称为根容器的Pause容器。Pause容器对应的镜像属于 kubernetes平台的一部分。
6)除了根容器,每个Pod还包含一个或多个紧密相关的用户业务容器。
请添加图片描述
请添加图片描述

2、Pod存在的意义

1)创建容器使用docker,一个docker对应一个容器,一个容器有一个进程,一个容器运行一个应用程序。因为docker容器里边多进程不好管理。
2)Pod是一个多进程的设计,可以运行多个应用程序

  • 一个Pod里边可以有多个容器,一个容器里边运行一个应用程序
    3)Pod存在是为了亲密性应用
  • 两个应用或多个应用之间要进行交互
  • 网络之间的调用,在Pod的中,通过socket或者127.0.0.1就可以交互
  • 两个应用需要频繁调用

3、Pod的实现的机制

1)共享网络

Pod实现共享网络的过程
请添加图片描述
步骤:首先创建Pause容器也就是info容器,然后再创建业务容器,并将业务容器加入info容器,这样将会在同一个namespace之中,并且有同一个 IP、MAC、PORT

*共享网络:通过Pause容器,把其他业务容器加入到Pause容器里面,让所有业务容器在同一个名称空间中,可以实现网络共享
请添加图片描述

2)共享存储

请添加图片描述
*共享存储:引入数据卷概念Volume,使用数据卷进行持久化存储
请添加图片描述

4、Pod镜像拉取的策略

请添加图片描述

5、Pod资源限制

请添加图片描述

本身是由docker做到的

6、Pod重启机制

请添加图片描述
Always:redis
后两个:批量处理任务:kafaka、MQ…

7、Pod的健康检查

容器检查 是否是一个正常运行的状态
当出现java堆内存溢出的时候,容器检查已经不能检查出来
所以需要从应用层面进行健康检查,比如通过127.0.0.1去进行连接
请添加图片描述

不需要去记,在使用中看文档即可

8、Pod的调度策略

请添加图片描述
createpod – apiserver – etcd

scheduler – apiserver – etcd --调度算法,把Pod调度到某个node节点上

在node节点操作

kubectl – apiserver – 读取etcd拿到
分配给当前节点的Pod – docker 创建容器

所有操作都经过 APIServer 用 etcd 做存储

Pod调度

影响调用的属性

1、Pod资源限制对Pod调用会产生影响

请添加图片描述
根据 request 找到足够node节点进行调度

2、节点选择器标签 影响Pod调度

请添加图片描述
请添加图片描述

####### 首先对节点创建标签

#给节点打一个标签将node起名为prod
kubectl label node node1 env_role=prod
kubectl get nodes K8snode1 env_role=dev
请添加图片描述

节点的亲和性对资源调度的影响

请添加图片描述

节点亲和性 nodeAffinity 和之前nodeSelector基本一样的,根据节点上标签约束来决定Pod调度到哪些节点上

1)硬亲和性–约束条件必须满足

请添加图片描述

2)软亲和性–尝试满足,不保证绝对能满足

请添加图片描述

支持常操作符

In :在里边
NotIn:不在里边
Exists :存在
DoesNotExists:不存在
Gt :大于
Lt:小于

反亲和性

DoesNotExists:不存在

影响Pod调度 污点、污点容忍

1、基本介绍

nodeSelector 和 nodeAffinity:Pod调度到某些节点上,Pod属性,调度时候实现
Taint污点:节点不做普通分配调度m , 是节点属性

2、场景

  • 专用节点
  • 配置特定硬件节点
  • 基于Taint驱逐

3、具体演示

1)具体查看污点情况
请添加图片描述

污点中的值主要有三个
  • NoSchedule :表示节点肯定不会被调度
  • PreferNoSchedule:尽量会被调度
  • NoExecute :不会调度,并且还会驱逐Node已有Pod

2)为节点添加污点
kubectl taint node k8snode1 key=value:污点的三个值

#添加污点
kubectl taint k8snodel env role=yes:NoSchedule
#删除镜像
kubectl delete deployment nginx-f8

3)为节点删除污点
kubectl taint node k8snode1 key=value:污点的三个值

请添加图片描述
4)污点的容忍 – 设定污点容忍之后也可能被调度到,但也可能不被调度到
请添加图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/377038.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用shiroshiro整合其他组件

什么是shiro? 一款apache公司出品的Java安全框架,主要用于设计针对应用程序的保护,使用shiro可以完成认证、授权、加密、会话管理等。保证系统稳定性、数据安全性 优势:易于使用、易于理解、兼容性强(可以与其他框架集…

SE-SSD论文阅读

摘要 本文提出了一种基于自集成单级目标检测器(SE-SSD)的室外点云三维目标检测方法。我们的重点是利用我们的公式约束开发软目标和硬目标来联合优化模型,而不引入额外的计算在推理中。具体来说,SE-SSD包含一对teacher 和student ssd,在其中我…

Mac 安装 Java 反编译工具 JD-GUI

Mac 安装 Java 反编译工具 JD-GUI JD-GUI 是一款 Java 反编译工具,可以方便的将编译好的 .class 文件反编译为 .java 源码文件,用于开发调试、源码学习等。 官网地址:http://java-decompiler.github.io Git 地址:https://github…

直播美颜sdk是什么?它是怎么让用户”变美“的?

如今,直播美颜sdk、手机摄影、短视频以及社交软件的盛行,让“拍照”成为人们日常生活中不可或缺的一部分。随着直播美颜sdk技术的不断升级,手机摄影的质量也越来越高。有统计数据显示,2018年中国智能手机用户已经达到了7亿人&…

美国最新调查显示 50% 企业已在用 ChatGPT,其中 48% 已让其代替员工,你怎么看?

美国企业开始使用ChatGPT,我认为这不是什么新闻。 如果美国的企业现在还不使用ChatGPT,那才是个大新闻。 据新闻源显示,已经使用chatGPT的企业中,48%已经让其代替员工工作。 ChatGPT的具体职责包括:客服、代码编写、招…

HTB-remote

HTB-remote信息搜集开机提权信息搜集 nmap 较为感兴趣的端口: 2180nfs 首先尝试21端口,可以看到并没有文件在ftp服务器里面,而且也无法上传文件。 80端口。 在contact里面找到了能够登录的网站。 经过简单的测试发现可能不存在sql注…

逆向、安全、工具集

0、安卓逆向环境 r0env 原味镜像介绍文章:https://mp.weixin.qq.com/s/gBdcaAx8EInRXPUGeJ5ljQ 原味镜像介绍视频:https://www.bilibili.com/video/BV1qQ4y1R7wW/ 百度盘:链接:https://pan.baidu.com/s/1anvG0Ol_qICt8u7q5_eQJw 提取码:3x2a …

【Spring源码】Spring AOP的核心概念

废话版什么是AOP关于什么是AOP,这里还是要简单介绍下AOP,Aspect Oriented Programming,面向切面编程,通过预编译和运行期间提供动态代理的方式实现程序功能的统一维护,使用AOP可以降低各个部分的耦合度,提高…

openfeign负载均衡策略 | Spring Cloud 5

一、Spring Cloud LoadBalancer介绍 Spring Cloud LoadBalancer是Spring Cloud官网提供的一个客户端负载均衡器,功能类似于Ribbon。在Spring Cloud Nacos 2021移除了中Ribbon组件,Spring Cloud在Spring Cloud Commons项目中,添加了Spring Cl…

华为OD机试题,用 Java 解【N 进制减法】问题

最近更新的博客 华为OD机试题,用 Java 解【停车场车辆统计】问题华为OD机试题,用 Java 解【字符串变换最小字符串】问题华为OD机试题,用 Java 解【计算最大乘积】问题华为OD机试题,用 Java 解【DNA 序列】问题华为OD机试 - 组成最大数(Java) | 机试题算法思路 【2023】使…

Linux | 分布式版本控制工具Git【版本管理 + 远程仓库克隆】

文章目录一、前言二、有关git的相关历史介绍三、Git版本管理1、感性理解 —— 大学生实验报告2、程序员与产品经理3、张三的CEO之路 —— 版本管理工具的诞生四、如何在Linux上使用Git1、创建仓库2、将仓库克隆到本地3、git三板斧① git add② git commit③ git push4、有关git…

yarn run serve报错Error: Cannot find module ‘@vue/cli-plugin-babel‘ 的解决办法

问题概述 关于这个问题,是在构建前端工程的时候遇到的,项目构建完成后,“yarn run serve”启动项目时,出现的问题:“ Error: Cannot find module ‘vue/cli-plugin-babel‘ ” 如下图: 具体信息如下&…

(24秋招笔试准备)回溯专题--代码随想录刷题记录

回溯算法理论基础回溯三部曲:编辑切换为居中添加图片注释,不超过 140 字(可选)组合问题https://mp.weixin.qq.com/s/OnBjbLzuipWz_u4QfmgcqQ组合总和https://mp.weixin.qq.com/s/HX7WW6ixbFZJASkRnCTC3whttps://mp.weixin.qq.com/…

Linux系统认知——驱动认知

文章目录一、驱动相关概念1.什么是驱动2.被驱动设备分类3.设备文件的主设备号和次设备号4.设备驱动整体调用过程二、基于框架编写驱动代码1.驱动代码框架2.驱动代码的编译和测试三、树莓派I/O口驱动的编写1.微机的总线地址、物理地址、虚拟地址介绍2.通过树莓派芯片手册确定需要…

zabbix部署

文章目录前言一、zabbix简介二、zabbix下载与部署三、部署完成、访问前端测试前言 一、zabbix简介 Zabbix 是一个企业级分布式开源监控解决方案。Zabbix 软件能够监控众多网络参数和服务器的健康度、完整性。Zabbix 使用灵活的告警机制,允许用户为几乎任何事件配置…

数据结构与算法——4时间复杂度分析(常见的大O阶)

这篇文章是时间复杂度分析的第二篇。在前一篇文章中,我们从0推导出了为什么要用时间复杂度,时间复杂度如何分析以及时间复杂度的表示三部分内容。这篇文章,是对一些常用的时间复杂度进行一个总结,相当于是一个小结论 1.常见的大O…

【LeetCode】剑指 Offer(11)

目录 题目:剑指 Offer 29. 顺时针打印矩阵 - 力扣(Leetcode) 题目的接口: 解题思路: 代码: 过啦!!! 写在最后: 题目:剑指 Offer 29. 顺时针…

西电计算机通信与网络(计网)简答题计算题核心考点汇总(期末真题+核心考点)

文章目录前言一、简答计算题真题概览二、网桥,交换机和路由器三、ARQ协议四、曼彻斯特编码和差分曼彻斯特编码五、CRC六、ARP协议七、LAN相关协议计算前言 主要针对西安电子科技大学《计算机通信与网络》的核心考点进行汇总,包含总共26章的核心简答。 【…

华为OD机试模拟题 用 C++ 实现 - 自动曝光(2023.Q1)

最近更新的博客 【华为OD机试模拟题】用 C++ 实现 - 最多获得的短信条数(2023.Q1)) 文章目录 最近更新的博客使用说明自动曝光题目输入输出描述示例一输入输出说明示例二输入输出说明Code使用说明 参加华为od机试,一定要注意不要完全背诵代码,需要理解之后模仿写出࿰

Ubuntu搭建maven私服

1.安装JDK8 已经是JDK8的需要配置环境变量,如果是更高版本的JDK则需要修改nexus配置文件 2.下载nexus安装包 百度网盘下载:链接:https://pan.baidu.com/s/1DfKqql8tZNQXEBxAEH7UyA 提取码:hx4p安装到有磁盘的目录如下所示&…