代码编织梦想

亲和性调度
kubernetes提供了一种亲和性调度(Affinity)。它在NodeSelector的基础之上的进行了扩展,可以通过配置的形式,实现优先选择满足条件的Node进行调度,如果没有,也可以调度到不满足条件的节点上,使调度更加灵活。

Affinity主要分为三类:

  • nodeAffinity(node亲和性)∶以node为目标,解决pod可以调度到哪些node的问题
  • podAffinitypod亲和性):以pod为目标,解决pod可以和哪些已存在的pod部署在同一个拓扑域中的问题
  • podAntiAffinity(pod反亲和性):以pod为目标,解决pod不能和哪些已存在pod部署在同一个拓扑域中的问题

关于亲和性(反亲和性)使用场景的说明:
亲和性:如果两个应用频繁交互,那就有必要利用亲和性让两个应用的尽可能的靠近,这样可以减少因网络通信而带来的性能损耗。

反亲和性:当应用的采用多副本部署时,有必要采用反亲和性让各个应用实例打散分布在各个node上,这样可以提高服务的高可用性。
在这里插入图片描述
在这里插入图片描述
硬限制
把xxx改为pro会成功,前面把node1标签改为了pro
在这里插入图片描述

软限制(如果找不到会调度到其他节点)
在这里插入图片描述
在这里插入图片描述

PodAffinity亲和性
在这里插入图片描述

硬限制
在这里插入图片描述
新pod必须要与有标签的nodeenv=xxx或者nodeenv=yyy的pod再同一个node上,显然现在没有在这样的pod,会失败,但是把xxx改为pro会成功

在这里插入图片描述
podAntiAffinity 反亲和性
调度到出来pro的节点
在这里插入图片描述

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接: https://blog.csdn.net/qq_45637155/article/details/111084433

Kubernetes-定向调度-爱代码爱编程

pod调度 在默认情况下,一个Pod在哪个Node节点上运行,是由Scheduler组件采用相应的算法计算出来的,这个过程是不受人工控制的。但是在实际使用中,这并不满足的需求,因为很多情况下,我们想控制某些Pod到达某些节点上,那么应该怎么做呢?这就要求了解kubernetes对Pod的调度规则,kubernetes提供了四大类调度方式: 自动调度:运

Linux直接通过端口号杀对应进程,lsof命令无效-爱代码爱编程

一、查看端口号被谁占用 我的某端口号被占用,想查看该端口号究竟被谁占用了 命令(8080是你想查看的端口号):netstat -anp | grep 8080 运行结果:发现是java的某进程占用了我们的端口 二、直接通过端口号杀对应进程 这方法比上一个还要简单,不用管究竟是谁占用了端口号,都可以强制杀死该进程(8080是你想杀的端口号):下面这一

使用tar --checkpoint提权操作 详解--checkpoint-action的参数及作用-爱代码爱编程

如果管理员给予了某个普通用户tar命令的超级管理员操作: 那么我们可以使用tar命令进行提权,命令如下 sudo -u root tar cf /dev/null exploit --checkpoint=1 --checkpoint-action=exec="/bin/bash" -c:创建新的档案文件,相当于打包(-x,相反的操作,拆包)

强制修改/移除 WordPress 主题底部版权标识-爱代码爱编程

目录: 一、常用的方法——直接在主题编辑器里面改 二、万能的方法——在 Linux 系统中改 php 内容 一、常用的方法——直接在主题编辑器里面改 1、打开 WordPress 后台管理,点击【外观】 2、点击【主题编辑器】 3、在主题文件栏,选中【主题页脚】footer.php,这是页脚的 php 文件 4、找到 printf 函数,将后面括号里的

Linux 内存管理 | 地址映射:分段、分页、段页-爱代码爱编程

文章目录 分段分页多级页表快表(TLB)段页式Linux Linux 内存管理 | 物理内存管理:内存碎片、伙伴系统、slab分配器Linux 内存管理 | 虚拟内存管理:虚拟内存空间、虚拟内存分配 在前两篇博客中,我介绍了虚拟内存与物理内存的管理方式,那么对于操作系统来说,它是如何管理它们两个之间的关系的呢?如何进行地址的映射呢?

Ubuntu 20.04 安装 WPS 2019 及其卸载-爱代码爱编程

Ubuntu 20.04 安装 WPS 2019 1、打开WPS官网( https://linux.wps.cn/ )下载安装包2、下载deb格式 下载好的文件如下图: 3、打开终端 依次输入命令: 我下载的文件在“下载”文件夹当中,默认的也是这个文件夹,用命令『 cd 下载 』打开文件夹,用『ls』命令查看文件是否在该文件夹中 cd 下载

基于Dijkstra算法的武汉地铁路径规划!-爱代码爱编程

前言 最近爬取了武汉地铁线路的信息,通过调用高德地图的api 获得各个站点的进度和纬度信息,使用Dijkstra算法对路径进行规划。 1.数据爬取 首先是需要获得武汉各个地铁的地铁站信息,通过爬虫爬取武汉各个地铁站点的信息,并存储到xlsx文件中 武汉地铁线路图,2021最新武汉地铁线路图,武汉地铁地图-武汉本地宝wh.bendibao.com

Kubernetes-定向调度-爱代码爱编程

pod调度 在默认情况下,一个Pod在哪个Node节点上运行,是由Scheduler组件采用相应的算法计算出来的,这个过程是不受人工控制的。但是在实际使用中,这并不满足的需求,因为很多情况下,我们想控制某些Pod到达某些节点上,那么应该怎么做呢?这就要求了解kubernetes对Pod的调度规则,kubernetes提供了四大类调度方式: 自动调度:运

Kubernetes-容器探测-爱代码爱编程

容器探测 容器探测用于检测容器中的应用实例是否正常工作,是保障业务可用性的一种传统机制。如果经过探测,实例的状态不符合预期,那么kubernetes就会把该问题实例"摘除",不承担业务流量。kubernetes提供了两种探针来实现容器探测,分别是: liveness probes:存活性探针,用于检测应用实例当前是否处于正常运行状态,如果不是,k8s会

Kubeedge 1.5 部署指南-爱代码爱编程

Kubeedge 1.5 部署指南 本文介绍了如何在一台ubuntu18.04和一台装有ubuntu20.04的树莓派4B上部署kubeedge1.5的过程。 其中ubuntu作为cloud节点,树莓派4B作为edge节点。 1. 系统配置 1.1 集群环境 主机名系统ip角色负载master-nodeubuntu18.0410.112.55.6

Docker常用软件安装-爱代码爱编程

Docker常用软件安装(持续更新) docker安装基本操作参考另一篇博客: https://blog.csdn.net/qq_43692950/article/details/107451706 一、Mysql 安装及主从复制 1. mysql安装 查询mysql版本docker search mysql 下载MySQL5.7版

centos7安装docker,阿里云镜像加速,docker的简单使用-爱代码爱编程

一、安装docker 1.1 查看linux版本 cat /etc/redhat-release 1.2 安装需要的库  # yum-utils 提供了 yum-config-manager # device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2 yum install