list-watch,作为k8s系统中统一的异步消息传递方式,对系统的性能、数据一致性起到关键性的作用。

list-watch操作需要做这么几件事:

  1. 由组件向apiserver而不是etcd发起watch请求,在组件启动时就进行订阅,告诉apiserver需要知道什么数据发生变化。Watch是一个典型的发布-订阅模式。
  2. 组件向apiserver发起的watch请求是可以带条件的,例如,scheduler想要watch的是所有未被调度的Pod,也就是满足Pod.destNode=""的Pod来进行调度操作;而kubelet只关心自己节点上的Pod列表。apiserver向etcd发起的watch是没有条件的,只能知道某个数据发生了变化或创建、删除,但不能过滤具体的值。也就是说对象数据的条件过滤必须在apiserver端而不是etcd端完成。
  3. list是watch失败,数据太过陈旧后的弥补手段,这方面详见 基于list-watch的Kubernetes异步事件处理框架详解-客户端部分。list本身是一个简单的列表操作,和其它apiserver的增删改操作一样,不再多描述细节。

转载于:https://www.cnblogs.com/vincenshen/p/9703234.html

Kubernetes List-Watch相关推荐

  1. Kubernetes 中 设置pod不部署在同一台节点上

    在k8s中,节点的调度主要由亲和性和污点来进行控制的.   而在亲和性部分由分为了节点亲和性和节点反亲和性.   节点亲和性是指在pod部署时,尽量(软策略)或者必须满足(硬策略)部署在某些节点上. ...

  2. 【CentOS】利用Kubeadm部署Kubernetes (K8s)

    [CentOS]利用Kubeadm部署Kubernetes (K8s)[阅读时间:约10分钟] 一.概述 二.系统环境&项目介绍 1.系统环境 2.项目的任务要求 三.具体实验流程 1 系统准 ...

  3. 【Kubernetes】如何使用Kubeadm部署K8S集群

    一 . 准备机器 本次环境采用华为云ECS弹性云服务器部署(也可以使用VMware) vm01(2V4G): Ubuntu_18.04作为K8S master节点 vm02(1V1G): Ubuntu ...

  4. 自定义Kubernetes调度程序来编排高可用性应用程序

    自定义Kubernetes调度程序来编排高可用性应用程序 只要愿意遵守规则,在Kubernetes上进行部署和乘飞机旅行就可以很愉快.通常,事情会"正常工作".但是,如果有兴趣与必 ...

  5. Kubernetes 网络排错指南

    本文介绍各种常见的网络问题以及排错方法,包括 Pod 访问异常.Service 访问异常以及网络安全策略异常等. 说到 Kubernetes 的网络,其实无非就是以下三种情况之一 Pod 访问容器外部 ...

  6. 使用Netsil监控Kubernetes上的微服务

    ubernetes是容器编排和调度领域的王者,它击败了竞争对手Docker Swarm和Apache Mesos,开启了闪耀的未来,微服务可以自修复,可以自动扩展,可以跨zone,region甚至跨云 ...

  7. e.V4p.C0/index.php,php-fpm进程在Kubernetes中接收SIGKILL信号

    我已经在其中配置了Nginx,PHP和php-fpm创建了ubuntu docker镜像 . 当我在Docker实例上运行它时工作正常 . 但是当我在kubernetes中运行相同的图像时,php-f ...

  8. kubectl常用命令_《蹲坑学kubernetes》之十五:kubectl命令详解

    kubectl用于运行Kubernetes集群命令的管理工具.本章节主要讲了kubectl基本语法和使用方法.在以后的实际工作中,使用越来越多,也会越来越熟悉. 1.kubectl语法 kubectl ...

  9. K8S - Kubernetes简介

    Kubernetes Kubernetes(简称K8s,用8代替8个字符"ubernete")是Google开源的一个容器编排引擎,支持自动化部署.大规模可伸缩.应用容器化管理. ...

  10. Kubernetes 架构(下)【转】

    上一节我们讨论了 Kubernetes 架构 Master 上运行的服务,本节讨论 Node 节点. Node 是 Pod 运行的地方,Kubernetes 支持 Docker.rkt 等容器 Run ...

最新文章

  1. yaml-cpp介绍
  2. java 如何实现导出文件
  3. 面试官问:你讲讲分布式事务问题的几种方案?
  4. 中南大学夏令营集训营
  5. 修改Mysql默认 编码
  6. OpenFileDialog 打开文件对话框
  7. 搜索算法(三)--DFS/BFS求解宝岛探险问题(JAVA )
  8. 牛客 2021年度训练联盟热身训练赛第二场 D题Soccer Standings
  9. 【EF】Entity Framework Core 2.0 特性介绍和使用指南
  10. mysql优化必知(mysql的语句执行顺序)
  11. 共用计算机如何加密,局域网共享文件,教您局域网共享文件怎么加密
  12. 微信公众号:weixin-js-sdk使用总结
  13. 微信用户绑定java实例_第三方网站微信登录java代码实现
  14. python中notebook左侧in中_Python Pmw.NoteBook方法代码示例
  15. 白魔法师(牛客小白月赛25 图、并查集)
  16. 2013年山东省第四届ACM大学生程序设计竞赛 Problem I Thrall’s Dream 图,2n遍dfs
  17. 极地旅行社[LCT]
  18. 用MATLAB计算序列的离散傅里叶变换
  19. vscode php 语法检查,vscode如何关闭eslint的语法检查
  20. 如何在系统菜单中添加一个自己的菜单项

热门文章

  1. md是什么类型的文件?怎么打开md文件,Markdown的编写,Markdown转化为html
  2. CSDN如何自动生成目录
  3. java中insert函数
  4. randn--创建正态分布随机矩阵
  5. 链栈的建立、判空、入栈、出栈、求长、访顶、清空和销毁
  6. k近邻法matlab_机器学习系列(一)K近邻算法(KNN,KNearestNeigh
  7. 训练生成对抗网络的过程中,训练gan的地方为什么这里没有detach,怎么保证训练生成器的时候不会改变判别器
  8. set_union()和set_intersection()的用法
  9. 设计模式的征途—21.迭代器(Iterator)模式
  10. Linux上安装Julia-1.1