k8s-RC副本机制
一、libeness probe的三种检测机制
- HTTP GET:对容器的IP(指定的端口和路径)执行HTTP GET请求,收到响应并返回状态码不代表错误(2xx/3xx),成功
- TCP socket:与容器指定端口建立TCP链接,建立链接成功,表示检测成功
- Exec:在容器内执行自定义命令,退出状态码是0,检测成功
二、liveness probe探测机制
- kubernetes会在容器崩溃或健康检测失败时(默认连续3次检测都失败,则认为检测失败)通过重启容器保持运行
- 当容器被强制终止时,会创建一个新的容器(而不是重启原来的容器)
- 探测附加属性:
delay(延迟):容器启动后延迟多久开始监控检测(务必设置一个合理的延迟时间,否则在容器进程为完全运行前,检测已经失败,导致容器进入重启死循环)
timeout(超时):容器的响应时间,超过设定值则超时
period(周期):间隔多久进行下一次检测
failure(失败):连续失败多少次后判定检测失败 - 检测的准确行:仅检测容器自身进程,(web前段正常,后端故障,重启前段无法恢复问题)
- 检测的轻量:资源消耗低、运行时间短(保证容器的轻量的同时不影响容器的运行质量)
- 健康检测重启pod是通过节点kubectl完成的(若节点故障则无法恢复)
四、ReplicationController(简称:RC)
- RC是一种资源,确保他的pod始终运行在期望的状态(用户指定的pod数量,即:几副本状态)
- RC会持续监控正在运行的pod列表
- 当RC的pod无论因何种数量发生变化,RC会根据模板新建,或删除一定数量的pod,已确保pod运行在期望的状态
- 通过RC可以实现pod的手动/自动伸缩
- label selector:标签选择器,用于确定RC作用域中有哪些pod(yml文件可以不指定,默认会根据pod的模板读取)
- replica count:副本数量,指定运行的pod数量
- pod template:pod模板,用于创建新的pod副本
六、RC的作用域
- RC通过作用域管理对应标签的pod
- 修改pod的标签后,pod将脱离RC的管控,当pod故障时不会重新被调度
- 注意:当修改pod的标签后,对RC本身无影响,他会重新创建出新的pod,直至达到预期状态
七、使用ReplicaSet(简称RS)代替RC
- ReplicaSet与RC的行为完全相同
- ReplicaSet可以仅通过标签的key匹配pod(RC必须匹配完整的标签:keyvalue)
- 修改ReplicaSet对现有的pod无影响,若想更新RS,可以删除现有的pod,RS会更具模板创建新的pod
八、更具表达力的标签选择器
- key:标签的名称
- operator:运算符:多个运算符可以一起使用,但是必须所有表达式都为true
1)In:label的值必须与其中一个指定的values匹配
2)NotIn:Label的值与指定的所有values都不匹配
3)Exists:只匹配key部分,使用次运算符时不指定values字段
4)DoesNotExist:匹配除指定key以外的所有key ,使用次运算符时不指定values字段 - values:标签的值
九、DaemonSet在每个节点运行一个pod
- DaemonSet的目的是用来运行系统服务
- 确保每个节点上运行一个pod
- 若有人在某一节点删除了一个pod,那么DaemonSet会在该节点重建pod
- 当新节点加入集群时,DaemonSet会立刻部署一个新的pod
- DaemonSet也可以只在集群中指定节点部署pod(由pod模板指定)
- 注意:在集群中可以设置节点的属性为“不可调用”,但是DaemonSet还是会在这些节点部署pod,因为DaemonSet不通过调度器进行调度
k8s-RC副本机制的更多相关文章
- k8s之list-watch机制、节点调度以及亲和性
k8s之list-watch机制.节点调度以及亲和性 目录 k8s之list-watch机制.节点调度以及亲和性 一.list-watch机制 1. list-watch介绍 2. list-watc ...
- HDFS副本机制&负载均衡&机架感知&访问方式&健壮性&删除恢复机制&HDFS缺点
副本机制 1.副本摆放策略 第一副本:放置在上传文件的DataNode上:如果是集群外提交,则随机挑选一台磁盘不太慢.CPU不太忙的节点上:第二副本:放置在于第一个副本不同的机架的节点上:第三副本:与 ...
- kafka副本机制之数据可靠性
一.概述 为了提升集群的HA,Kafka从0.8版本开始引入了副本(Replica)机制,增加副本机制后,每个副本可以有多个副本,针对每个分区,都会从副本集(Assigned Replica,AR)中 ...
- kafka4 副本机制
概述 每个分区有n个副本,可以承受n-1个节点故障. 每个副本都有自己的leader,其余都是follower. zk中存放分区的leader和 follower replica的信息.(get /b ...
- hdfs深入:03、hdfs的架构以及副本机制和block块存储
HDFS分布式文件系统设计目标 1. 硬件错误 由于集群很多时候由数量众多的廉价机组成,使得硬件错误成为常态 2. 数据流访问 所有应用以流的方式访问数 ...
- 深入理解 Kafka 副本机制
一.Kafka集群 二.副本机制 2.1 分区和副本 2.2 ISR机制 2.3 不完全的首领选举 2.4 最少同步副本 ...
- Kafka 学习之路(五)—— 深入理解Kafka副本机制
一.Kafka集群 Kafka使用Zookeeper来维护集群成员(brokers)的信息.每个broker都有一个唯一标识broker.id,用于标识自己在集群中的身份,可以在配置文件server. ...
- Kafka 系列(五)—— 深入理解 Kafka 副本机制
一.Kafka集群 Kafka 使用 Zookeeper 来维护集群成员 (brokers) 的信息.每个 broker 都有一个唯一标识 broker.id,用于标识自己在集群中的身份,可以在配置文 ...
- 大数据:Hadoop(HDFS 的设计思路、设计目标、架构、副本机制、副本存放策略)
一.HDFS 的设计思路 1)思路 切分数据,并进行多副本存储: 2)如果文件只以多副本进行存储,而不进行切分,会有什么问题 缺点 不管文件多大,都存储在一个节点上,在进行数据处理的时候很难进行并行处 ...
- C和C++中的副本机制
函数的形参.return 都有副本机制.数组没有副本机制 (为了节约内存) 函数形参和局部变量的生命周期.函数调用结束后就会被回收.
随机推荐
- myeclipse常用快捷(持续更新)
最近开始转用myeclipse,总结一下快捷方式:(我喜欢用的) [Ctrl+O] 显示类中方法和属性的大纲,能快速定位类的方法和属性,在查找Bug时非常有用. [Ctrl+M] 窗口最大 ...
- php导出表格两种方法 ——PhpExcel的列子
php常用的导出表格有两种方法,第一种是输出表格,这种方法打开的时候有警告提示,一般导出表格会用phpexcel,这个导出比较灵活,而且还可以设置表格的样式. 第一种导出例子 /** * 执行导出 * ...
- idea去除mybatis的xml那个恶心的绿色背景
https://my.oschina.net/qiudaozhang/blog/2877536
- 5 Successful Business Models for Web-Based Open-Source Projects
https://handsontable.com/blog/articles/2016/3/5-successful-business-models-for-web-based-open-source ...
- RMQ问题及ST表
RMQ(Range Minimum/Maximum Query)问题指的是一类对于给定序列,要求支持查询某区间内的最大.最小值的问题.很显然,如果暴力预处理的话复杂度为 \(O(n^2)\),而此类问 ...
- EFK架构图
Environment:{ 三台CentOS7操作系统 (环境均安装jdk) } 需要机器: 消息中间件的机器中 kafka 和 zookeeper 同时安装在三台虚拟机 logstash 960 ...
- JavaScript基础04——数组的创建及方法
数组的概念及定义 数组的概念: 一组数据,数据的组和 哪些数据的组和,只要是数据(所有数据),就可以放在数组中 数组的意义: 可以同时操作多个数据 数组 ...
- 使用vault pki engine 方便的管理证书
vault 是一个很方便的secret .敏感数据管理工具,当前的版本已经包含了UI,使用起来很方便 以下演示一个简单的pki 管理 项目使用docker-compose 运行,为了简单使用单机开发模 ...
- Tomcat启动服务报错:Unknown version string [4.0]. Default version will be used.
Tomcat.jdk.web.xml 对应关系: 版本对应错误,更换便可.(版本往下兼容) web.xml——version2.2——JDK1.1——Tomcat3.3 web.xml——versio ...
- Log4net 控制台打印日志(二)
1.创建控制台程序 2.用NuGet添加log4net引用 3.添加应用程序配置文件:App.config 4.添加配置信息: <?xml version="1.0" enc ...