我的编程空间,编程开发者的网络收藏夹
学习永远不晚

kubernetes中kubelet运行机制的示例分析

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

kubernetes中kubelet运行机制的示例分析

这篇文章给大家分享的是有关kubernetes中kubelet运行机制的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

一:简介

在Kubernetes集群中,每个Node节点上都会启动一个Kubelet服务进行。该进程用于处理Master节点下发到本节点的任务,管理Pod及Pod中的容器。每个Kubelet进程会在API SERVER上注册节点自身信息,定期向Master节点汇报节点资源的使用情况,并通过cAdvise监控容器和节点资源。

二:节点管理

节点通过设置kubelet的启动参数“–register-node”,来决定是否向API Server注册自己,默认为true。可以通过kubelet –help查看该参数。

kubelet在启动时通过API Server注册节点信息,并定时向API Server发送节点的新信息,API Server在接收到这些消息后,将这些消息写入etcd. 通过kubelet的启动参数"--node-status-update-frequency"设置每隔多长时间向API Server报告节点状态,默认10s.

kubelet配置参数

  1. ## kubelet (minion) config

  2. #

  3. ## The address for the info server to serve on (set to 0.0.0.0 or "" for all interfaces)

  4. KUBELET_ADDRESS="--address=10.116.82.28"

  5. #

  6. ## The port for the info server to serve on

  7. #KUBELET_PORT="--port=10250"

  8. #

  9. ## You may leave this blank to use the actual hostname

  10. KUBELET_HOSTNAME="--hostname-override=10.116.82.28"

  11. #

  12. ## location of the api-server

  13. #KUBELET_API_SERVER="--api-servers=http://10.116.137.196:8080"

  14. #

  15. ## pod infrastructure container

  16. #KUBELET_POD_INFRA_CONTAINER="--pod-infra-container-image=sz-pg-oam-docker-hub-001.tendcloud.com/library/pod-infrastructure:rhel7"

  17. KUBELET_POD_INFRA_CONTAINER="--pod-infra-container-image=registry.access.redhat.com/rhel7/pod-infrastructure"

  18. #

  19. ## Add your own!

  20. KUBELET_ARGS="--cgroup-driver=systemd --cluster-dns=10.254.0.2  --experimental-bootstrap-kubeconfig=/etc/kubernetes/bootstrap.kubeconfig --kubeconfig=/etc/kubernetes/kubelet.kubeconfig --require-kubeconfig --cert-dir=/etc/kubernetes/ssl --cluster-domain=cluster.local. --hairpin-mode promiscuous-bridge --serialize-image-pulls=false --runtime-cgroups=/systemd/system.slice --kubelet-cgroups=/systemd/system.slice"

三:Pod管理
1.kubelet通过API Server Client使用Watch+List的方式监听“/registry/nodes/$当前节点的名称”和“/registry/pods”目录,将获取的信息同步到本地缓存中。
2.kubelet 监听etcd,所有针对Pod的操作将会被kubelet监听到。如果发现有新的绑定到本节点的Pod,则按照Pod清单的要求创建该Pod.
kubelet读取监听到的信息,则做如下处理:
a.为该Pod创建一个数据目录
b.从API Server读取该Pod清单
c.为该Pod挂载外部卷
d.下载Pod用到的Secret
e.创建pause容器
f.创建应用容器

四:容器健康检查

对Pod的健康状态检查可以通过两类探针来检查:LivenessProbe和ReadinessProbe
1.LivenessProbe探针: 用于判断容器是否存活,如果LivenessProbe探针探测到容器不健康,则kubelet将杀掉该容器,并根据容器的重启策略做相应的处理。如果一个容器不包含LivenessProbe探针,那么kubelet认为该容器的LivenessProbe探针返回值永远是“Success”.

2.ReadinessProbe探针: 用于判断容器是否启动完成,可以接收请求。如果ReadinessProbe 探针检测到失败,则Pod的状态将被修改。Endpoint Controller将从Service的Endpoint中删除包括该容器所在Pod的Endpoint.

五:cAdvisor资源监控

在Kubernetes集群中,应用程序的执行情况可以在不同的级别上监测到,这些级别包括:容器,Pod,Service和整个集群。

1.Heapster项目为Kubernetes提供了一个基本的监控平台,它是集群级别的监控。

2.cAdvisor是一个开源的分析容器资源使用率和性能特性的代理工具。cAdvisor被集成到Kubernetes代码中,cAdvisor自动查找所有在其节点上的容器,自动采集CPU,内存,文件系统和网络使用的统计信息。cAdvisor通过它所在节点机的Root容器,采集并分析该节点的全面使用情况。

感谢各位的阅读!关于“kubernetes中kubelet运行机制的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

kubernetes中kubelet运行机制的示例分析

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

kubernetes中kubelet运行机制的示例分析

这篇文章给大家分享的是有关kubernetes中kubelet运行机制的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一:简介在Kubernetes集群中,每个Node节点上都会启动一个Kubelet服务
2023-06-04

kubernetes中垃圾回收机制的示例分析

这篇文章主要介绍了kubernetes中垃圾回收机制的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一:前言Kubernetes系统在长时间运行后,Kubernete
2023-06-04

kubernetes中负载均衡机制Ingress的示例分析

这篇文章将为大家详细讲解有关kubernetes中负载均衡机制Ingress的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一:前言Kubernetes在设计之初就充分考虑了针对容器的服务发现与负
2023-06-04

kubernetes中Service的示例分析

这篇文章主要介绍了kubernetes中Service的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一:体系结构图二:yaml举例apiVersion: v1kin
2023-06-04

kubernetes中Istio的示例分析

这篇文章主要介绍kubernetes中Istio的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一:简介随着微服务架构的普及,越来越多的应用已经拆分成了微服务的架构。而微服务架构落地的一个难点,就是如何让服务
2023-06-04

kubernetes中控制器和标签的示例分析

小编给大家分享一下kubernetes中控制器和标签的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!01 k8s中的常用控制器 之前我们了解了Pod是k8s集群中调度的最小单元,Pod是由Pause容器+
2023-06-14

kubernetes实践之五十一:kube-proxy运行机制分析

一: Service,Endpoints与Pod的关系Kube-proxy进程获取每个Service的Endpoints,实现Service的负载均衡功能二:Service的负载均衡转发规则访问Service的请求,不论是Cluster I
2023-06-04

JavaScript运行的示例分析

这篇文章给大家分享的是有关JavaScript运行的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1.1 语法分析预编译之前,先通篇扫描看看有没有语法错误1.2 预编译 1.2.1 函数声明整体提升声明函
2023-06-29

SparkSQl中运行原理的示例分析

这篇文章将为大家详细讲解有关SparkSQl中运行原理的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一:什么是SparkSQL?(一)SparkSQL简介Spark SQL是Spark的一个模块
2023-06-20

kubernetes中云原生的示例分析

这篇文章主要为大家展示了“kubernetes中云原生的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“kubernetes中云原生的示例分析”这篇文章吧。一: 云原生云原生包含了一组应用
2023-06-04

CentOS7.1中开机运行模式run level的示例分析

这篇文章主要介绍CentOS7.1中开机运行模式run level的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在大多数的linux发行版本中,通常有8个 runlevelRunlevel System S
2023-06-10

kubernetes中安全机制API Server认证之Service Account Token的示例分析

这篇文章主要介绍了kubernetes中安全机制API Server认证之Service Account Token的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一
2023-06-04

Linux中cpufreq机制的示例分析

小编给大家分享一下Linux中cpufreq机制的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!从 2.6.0 Linux 内核开始,您可以通过 CPUf
2023-06-27

java中锁机制的示例分析

这篇文章主要介绍java中锁机制的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!何为同步?JVM规范规定JVM基于进入和退出Monitor对象来实现方法同步和代码块同步,但两者的实现细节不一样。代码块同步是使
2023-06-19

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录