DaemonSet 案例分析 - 每天5分钟玩转 Docker 容器技术(130)
本节详细分析两个 k8s 自己的 DaemonSet:kube-flannel-ds 和 kube-proxy 。
kube-flannel-ds
下面我们通过分析 kube-flannel-ds 来学习 DaemonSet。
还记得之前是如何部署 flannel 网络的吗?我们执行了如下两个命令:
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
flannel 的 DaemonSet 就定义在 kube-flannel.yml 中:

注:配置文件的完整内容要复杂些,为了更好地学习 DaemonSet,这里只保留了最重要的内容。
① DaemonSet 配置文件的语法和结构与 Deployment 几乎完全一样,只是将 kind 设为 DaemonSet。
② hostNetwork 指定 Pod 直接使用的是 Node 的网络,相当于 docker run --network=host。考虑到 flannel 需要为集群提供网络连接,这个要求是合理的。
③ containers 定义了运行 flannel 服务的两个容器。
我们再来分析另一个 DaemonSet kube-proxy。
kube-proxy
由于无法拿到 kube-proxy 的 YAML 文件,只能运行如下命令查看其配置:
kubectl edit daemonset kube-proxy --namespace=kube-system

同样为了便于理解,这里只保留了最重要的信息。
① kind: DaemonSet 指定这是一个 DaemonSet 类型的资源。
② containers 定义了 kube-proxy 的容器。
③ status 是当前 DaemonSet 的运行时状态,这个部分是 kubectl edit特有的。其实 Kubernetes 集群中每个当前运行的资源都可以通过 kubectl edit 查看其配置和运行状态,比如 kubectl edit deployment nginx-deployment。
下节我们讨论如何运行自己的 DaemonSet。
书籍:
1.《每天5分钟玩转Docker容器技术》
https://item.jd.com/16936307278.html
2.《每天5分钟玩转OpenStack》
https://item.jd.com/12086376.html

DaemonSet 案例分析 - 每天5分钟玩转 Docker 容器技术(130)的更多相关文章
- DaemonSet 典型应用场景 - 每天5分钟玩转 Docker 容器技术(129)
Deployment 部署的副本 Pod 会分布在各个 Node 上,每个 Node 都可能运行好几个副本.DaemonSet 的不同之处在于:每个 Node 上最多只能运行一个副本. DaemonS ...
- 运行自己的 DaemonSet - 每天5分钟玩转 Docker 容器技术(131)
本节以 Prometheus Node Exporter 为例演示如何运行自己的 DaemonSet. Prometheus 是流行的系统监控方案,Node Exporter 是 Prometheus ...
- 通过案例学习 Secret - 每天5分钟玩转 Docker 容器技术(110)
在下面的例子中,我们会部署一个 WordPress 应用,WordPress 是流行的开源博客系统. 我们将创建一个 MySQL service,将密码保存到 secret 中.我们还会创建一个 Wo ...
- 用 Deployment 运行应用 - 每天5分钟玩转 Docker 容器技术(123)
从本章开始,我们将通过实践深入学习 Kubernetes 的各种特性.作为容器编排引擎,最重要也是最基本的功能当然是运行容器化应用,这就是本章的内容. Deployment 前面我们已经了解到,Kub ...
- 在 Rolling Update 中使用 Health Check - 每天5分钟玩转 Docker 容器技术(146)
上一节讨论了 Health Check 在 Scale Up 中的应用,Health Check 另一个重要的应用场景是 Rolling Update.试想一下下面的情况: 现有一个正常运行的多副本应 ...
- 创建 Rex-Ray volume - 每天5分钟玩转 Docker 容器技术(76)
前面我们安装部署了 Rex-Ray,并且成功配置 VirtualBox backend,今天演示如何创建和使用 Rex-Ray volume. 在 docker1 或 docker2 上执行如下命令创 ...
- 一张表搞懂各种 Docker 监控方案 - 每天5分钟玩转 Docker 容器技术(86)
前面我们已经介绍了ps/top/stats.Sysdig.Weave Scope.cAdvisor 和 Prometheus 多种容器监控工具和方案,是时候做一个比较了.下面将从五个方面来对比它们之间 ...
- 初探 ELK - 每天5分钟玩转 Docker 容器技术(89)
在开源的日志管理方案中,最出名的莫过于 ELK 了.ELK 是三个软件的合称:Elasticsearch.Logstash.Kibana. Elasticsearch一个近乎实时查询的全文搜索引擎.E ...
- ELK 完整部署和使用 - 每天5分钟玩转 Docker 容器技术(90)
上一节已经部署了容器化的 ELK,本节讨论如何将日志导入 ELK 并进行图形化展示. 几乎所有的软件和应用都有自己的日志文件,容器也不例外.前面我们已经知道 Docker 会将容器日志记录到 /var ...
随机推荐
- 自写 zTree搜索功能 -- 关键字查询 -- 递归无限层
唠叨一哈 前两天朋友跟我说要一个ztree的搜索功能,我劈头就是一巴掌:这种方法难道无数前辈还做少了?自己去找,我很忙~然后我默默地蹲着写zTree的搜索方法去了.为什么呢?因为我说了句“找不到是不可 ...
- ES6中promise的使用方法
先看看ES5中异步编程的使用. let ajax = function (callBlack) { setTimeout(function () { callBlack && call ...
- 解决mysql不是内部或外部命令
安装Mysql后,当我们在cmd中敲入mysql时会出现'Mysql'不是内部或外部命令,也不是可运行的程序或其处理文件. 工具/原料 mysql cmd 方法/步骤 1 打开我的电脑在我的电脑右键中 ...
- Yourphp是一款完全开源免费的.核心采用了Thinkphp框架
Yourphp企业网站管理系统,是一款完全开源免费的PHP+MYSQL系统.核心采用了Thinkphp框架,同时也作为开源软件发布.集众多开源项目于一身的特点,使本系统从安全,效率,易用及可扩展性上更 ...
- ThinkPHP配置文件的加载
分类: thinkphp(39) 版权声明:本文为博主原创文章,未经博主允许不得转载. 惯例配置->应用配置->模式配置->调试配置->状态配置->模块配置->扩展 ...
- Asp.net mvc 中Action 方法的执行(一)
[toc] 在 Aps.net mvc 应用中对请求的处理最终都是转换为对某个 Controller 中的某个 Action 方法的调用,因此,要对一个请求进行处理,第一步,需要根据请求解析出对应的 ...
- -pie can only be used when targeting iOS 4.2 or later错误解决
在工程的build setting里,把IPHONEOS_DEPLOYMENT_TARGET改成4.2或以上就行了
- Python+Selenium安装及环境配置
一.Python安装 Window系统下,python的安装很简单.访问python.org/download,下载最新版本,安装过程与其他windows软件类似.记得下载后设置path环境变量,然后 ...
- 使用vue 遇到的问题————— 解决手机实时显示项目
Vue项目文件组织架构: src文件夹存放源代码. Static文件夹存放第三方静态资源. git将项目上传github http://blog.csdn.net/laozitianxia/ ...
- 疑难杂症——关于EntityFramework的SqlQuery方法的执行效率差异的探讨
前言:最近项目上面遇到一个问题,在Code First模式里面使用EntityFramework的SqlQuery()方法查询非常慢,一条数据查询出来需要10秒以上的时间,可是将sql语句放在plsq ...