Centos7中kubernetes-1.11.2基于配置亲和与反亲和
1、题目
通过命令行,创建两个个deployment。
– 需要集群中有2个节点
– 第1个deployment名称为<hwcka-002-app1>,使用nginx镜像,用有2个pod,并配置该deployment自身的pod之间在节点级别反亲和
2、结构图解

2.1、亲和&节点相同label
topologyKey配置相同kubernetes.io/zone=bar,podAffinity
那么:node01和node02为同一整体,所以没有其他规则的话,根据平均负载算法会将其分配至两个节点上,如果目前其中一个节点空闲,那么pod可能会被分配到空闲节点上去。



2.2、亲和&节点不同label
topologyKey配置相同kubernetes.io/hostname,podAffinity
那么:node01和node02为不同整体,由于亲和性规则,所以pod会根据空闲或其他算法被调度到同一节点上去。


2.3、反亲和&节点相同label
topologyKey配置相同kubernetes.io/zone=bar,podAntiAffinity
那么:nodw01和node02为同一整体,那么一个pod被调度其中一个节点后,由于存在反亲和,那么另一个pod是不会被调度到另一个节点上去到。


2.4、反亲和&节点不同label
topologyKey配置相同kubernetes.io/hostname,podAntiAffinity
那么:node01和node02为不同整体,由于反亲和性规则,pod会被分配到不同节点并运行。


3、相关操作
相关操作:
# 打标签
kubectl label nodes node01 kubernetes.io/zone=bar
kubectl label nodes node02 kubernetes.io/zone=bar
# 删除标签
kubectl label nodes node01 kubernetes.io/zone-
kubectl label nodes node02 kubernetes.io/zone- vim hwcka--app1.yaml
topologyKey: kubernetes.io/zone
或者
topologyKey: kubernetes.io/hostname
Centos7中kubernetes-1.11.2基于配置亲和与反亲和的更多相关文章
- Kubernetes调度之亲和与反亲和
		系列目录 部署pod时,大多数情况下kubernetes的调度程序能将pod调度到集群中合适的节点上.但有些情况下用户需要对pod调度到哪个节点上施加更多控制,比如将特定pod部署到拥有SSD存储节点 ... 
- centos7下kubernetes(11。kubernetes-运行一次性任务)
		容器按照持续运行的时间可以分为两类:服务类容器和工作类容器 服务类容器:持续提供服务 工作类容器:一次性任务,处理完后容器就退出 Deployment,replicaset和daemonset都用于管 ... 
- CentOS7中firewall防火墙详解和配置,.xml服务配置详解
		修改防火墙配置文件之前,需要对之前防火墙做好备份 重启防火墙后,需要确认防火墙状态和防火墙规则是否加载,若重启失败或规则加载失败,则所有请求都会被防火墙 1. firewall-cmd --state ... 
- 在CentOS7中安装scala-2.11.12
		从官网下载scala的相关版本 https://www.scala-lang.org/download/2.11.12.html 解压安装包 tar zxf scala-.tgz -C /usr/sc ... 
- Centos7中  文件大小排序
		centos7中根据文件大小排序以及jenkins配置每周删除一次jobs日志信息 https://blog.csdn.net/u013066244/article/details/70232050 
- Centos7中hadoop配置
		Centos7中hadoop配置 1.下载centos7安装教程: http://jingyan.baidu.com/article/a3aad71aa180e7b1fa009676.html (注意 ... 
- centos7中安装、配置、验证、卸载redis
		本文介绍在centos7中安装.配置.验证.卸载redis等操作,以及在使用redis中的一些注意事项. 一 安装redis 1 创建redis的安装目录 利用以下命令,切换到/usr/local路径 ... 
- Centos7部署Kubernetes集群(单工作节点)+配置dashboard可视化UI
		目标:docker+kubernetes+cadvosor+dashboard 一:物理硬件 两台虚拟机(centos7):一台做为主节点(master),一台做为工作节点(node) [root@M ... 
- CentOS7中OpenVPN的配置
		最近需要在openstack中集成openvpn功能,故熟悉了一下openvpn的搭建流程,记录下来,供参考 版本:openvpn-2.3.4.tar.gz 下载地址:http://pan.baidu ... 
随机推荐
- 第一节. .Net Core环境的安装和常用指令
			一. 环境介绍和安装 1. 环境介绍 .Net FrameWork框架:BCL(基础类库 system.dll).CLR(运行时 仅支持:Windows).FCL(一些框架,比如:MVC.WPF) . ... 
- IntelliJ IDEA打包WAR并部署运行(mac osx)将Web项目War包部署到Tomcat服务器基本步骤(完整版)
			用IntelliJ IDEA做web开发体验很好,但导出war包比eclipse麻烦了不少,以下是解决方案: 打包:1.自动打包:File —> Project Structure —> ... 
- MyEclipse打不开  报xxxxxx. log。
			1.找到MyEcliPse安装目录下configuration文件夹 打开 2.删除org.eclipse.update这个文件夹 3.再打开org.eclipse.osgi/.manager 4.删 ... 
- linux oops调试
			参考文章: arm 指令定位错误 https://blog.csdn.net/songcdut/article/details/41383483 linux mips指令学习 https://www. ... 
- vue-router组件重用 路由切换时的问题
			当一个组件被重用时,切换路由,该组件不会被销毁.该组件的created也不会被调用,如果在created中有获取数据的操作,切换路由后,就不会再获取新的数据了,界面上就没有刷新. 其实官方文档就有解决 ... 
- Linux服务器查看外网IP地址的命令
			可以直接输入如下几个命令:1.curl ifconfig.me2.curl cip.cc3.curl icanhazip.com4.curl ident.me5.curl ipecho.net/pla ... 
- day08 文件操作
			1.三种字符串: (1)u'' 普通字符串 ---> u'abc' ---> 默认的文本方式,以字符作为文本的输出方式 (2)b'' 二进制字符串 ---> b'ASCII码' -- ... 
- dataguard丢失归档日志处理
			检查alert日志发现报错如下 Wed Mar 27 15:40:30 2019Managed Standby Recovery not using Real Time ApplyParallel M ... 
- js 刷新父业面
			window.opener.location.reload() 2个方法都是刷新父窗口,但是其中还是有奥妙的哦.window.opener.location.reload();这个方法在强迫父窗口的时 ... 
- vue环境下新建项目
			1.之前电脑上安装了node和npm,查看下版本信息. 2.现在安装vue-cli脚手架,可以全局安装: npm install --global vue-cli 之前自己电脑没有安装过webpac ... 
