博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Kubernetes部署(一):架构及功能说明
阅读量:6278 次
发布时间:2019-06-22

本文共 1164 字,大约阅读时间需要 3 分钟。

相关内容:

 

集群功能各模块功能描述

Master节点:

Master节点上面主要由四个模块组成,APIServer,schedule,controller-manager,etcd

  1. APIServer: APIServer负责对外提供RESTful的kubernetes API的服务,它是系统管理指令的统一接口,任何对资源的增删该查都要交给APIServer处理后再交给etcd,如图,kubectl(kubernetes提供的客户端工具,该工具内部是对kubernetes API的调用)是直接和APIServer交互的。

  2. schedule: schedule负责调度Pod到合适的Node上,如果把scheduler看成一个黑匣子,那么它的输入是pod和由多个Node组成的列表,输出是Pod和一个Node的绑定。 kubernetes目前提供了调度算法,同样也保留了接口。用户根据自己的需求定义自己的调度算法。

  3. controller manager: 如果APIServer做的是前台的工作的话,那么controller manager就是负责后台的。每一个资源都对应一个控制器。而control manager就是负责管理这些控制器的,比如我们通过APIServer创建了一个Pod,当这个Pod创建成功后,APIServer的任务就算完成了。

  4. etcd:etcd是一个高可用的键值存储系统,kubernetes使用它来存储各个资源的状态,从而实现了Restful的API。

Node节点:

每个Node节点主要由两个模板组成:kublet, kube-proxy

  1. kube-proxy: 该模块实现了kubernetes中的服务发现和反向代理功能。kube-proxy支持TCP和UDP连接转发,默认基Round Robin算法将客户端流量转发到与service对应的一组后端pod。服务发现方面,kube-proxy使用etcd的watch机制监控集群中service和endpoint对象数据的动态变化,并且维护一个service到endpoint的映射关系,从而保证了后端pod的IP变化不会对访问者造成影响,另外,kube-proxy还支持session affinity。

  2. kublet:kublet是Master在每个Node节点上面的agent,是Node节点上面最重要的模块,它负责维护和管理该Node上的所有容器,但是如果容器不是通过kubernetes创建的,它并不会管理。本质上,它负责使Pod的运行状态与期望的状态一致。
    Kubernetes部署(一):架构及功能说明
    Kubernetes部署(一):架构及功能说明
    Kubernetes部署(一):架构及功能说明

后续会陆续更新所有的安装文档,如果你觉得我写的不错,希望大家多多关注点赞,非常感谢!

转载于:https://blog.51cto.com/billy98/2334654

你可能感兴趣的文章
[Hadoop]chukwa与ganglia的区别
查看>>
数据挖掘工具分析北京房价 (一) 数据爬取采集
查看>>
IOS项目之弹出动画终结篇
查看>>
iOS开发UI篇—ios应用数据存储方式(XML属性列表-plist)
查看>>
OSS移动开发实战2 (30分钟快速搭建移动应用上传回调服务)
查看>>
Swift语言学习No.2: 二维数组
查看>>
jvm gc相关
查看>>
王亟亟的Python学习之路(四)-循环,条件,Range,list和tuple
查看>>
Greenplum 激活standby master失败后的异常修复
查看>>
nanomsg实验——survey
查看>>
Java设计模式(八)----代理模式
查看>>
LinkedList的用法小结
查看>>
Using mongoDB's Profiler analyze the performance of database operations
查看>>
python range() function like postgresql generate_series()
查看>>
一则优化案例
查看>>
[实践]Sonar Xcode8兼容
查看>>
Canvas应用
查看>>
node inspect chrome日志调试
查看>>
书写可维护代码的重要性
查看>>
数据库实时转移之Confluent环境搭建(二)
查看>>