最新活动 云服务 虚拟主机 服务器托管 服务器租用 企业邮局 域名注册 合作伙伴 了解人文网
文档 备案 控制台
当前位置: 首页> 新闻资讯> Kubernetes 简介
Kubernetes 简介
【内容简介】Kubernetes是Google开源的一款容器编排工具,它是诞生在Google内部运行N多年的博格系统之上的产物,因此其成熟度从其诞生初期就广泛受到业界的关注,并且迅速成为编排工具市场的主流,其社区活跃度非常高,版本迭代速度也很惊人,它的主要作用是对Docker容器做编排工作,…

Kubernetes是Google开源的一款容器编排工具,它是诞生在Google内部运行N多年的博格系统之上的产物,因此其成熟度从其诞生初期就广泛受到业界的关注,并且迅速成为编排工具市场的主流,其社区活跃度非常高,版本迭代速度也很惊人,它的主要作用是对Docker容器做编排工作,当然,Docker只是容器工具的一种引擎,K8s可支持多种容器引擎,但从目前来说Docker容器引擎是具有绝对优势的,容器需要编排,也很容易理解,因为我们最核心要跑到业务通常都是LNMT/P的不同形式的扩展,但NMT/P他们的运行是有先后顺序的,也就是说MySQL要先启动,然后是Tomcat或PHP,最后是Nginx,而控制这种顺序就需要有容器编排工具来帮我们实现,另外,我们的业务希望7x24小时在线,如何保障?靠人是很难做到实时的,但编排工具可以,K8s帮我们实现了很多控制器,这控制器可以帮我们监控容器运行的状态,并自动帮我们重建(在容器时代重启就是重建)容器,并且还可以在容器处理能力不足时,自动根据我们定义的扩展规则,自动创建新Pod(k8s中最小单元,每个Pod中可有一个或多个容器),并且在压力下去后,自动删除Pod等等功能。

 另外这里是K8s的中文官方文档zh站点:

  https://k8smeetup.github.io/docs/

Kubernetes:
  它至少需要3个Master节点
  Master节点的主要组件:
   API Server: 主要用来接收其它组件发来的请求,并作出相应的处理.
   Scheduler: 主要负责挑选出一个最佳node节点来运行pod,它挑选合适的node,通常分两个阶段,
    第一个阶段:是先通过初步筛选, 根据运行pod的最大要求,如: 4G内存, 6颗CPU等需求,来做
    初步筛选,假如从20台中选出了3台, 则进入第二阶段,在从这3台中选出一台最符合的节点,
    这时就需要综合考量各种因素,最后将选出了一台最佳运行节点告诉给API Server,在由
    Master节点负责调度Pod在该node节点上运行起来。
  Controller:它是负责监控Node上运行的Pod是否正常工作,若它发现自己监控的某个Pod故障了,
    它会向API Server发出通告,并要求Master在其它节点上再重新启动一个相同的Pod,
    然后将故障的Pod Kill掉。
  Controller-Manager:它是负责监控所有Controller是否正常工作的,在Kubernetes集群中,有很多
    个功能各异的Controller, 监控Pod健康状态的Controller只是其中之一,Controller-Manager
    它用于监控这些Controller工作状态的,一旦Controller故障,它将重启一个新的Controller来
    代替它工作。
  但是若Controller-Manager故障怎么办? 其实Master在创建时,要求最少要有3个节点,每个节点都会启动一个Controller-Manager,启动一个为主Controller-Manager,其它两个或多个为备用的Controller-Manager,一旦主Controller-Manager故障,则备用的Controller-Manager将代替它继续工作。


Node0:
  Pod:它是Kubernetes中最基本的单元,一个Pod其实是一个容器的抽象,或叫容器的壳,它内部
    其实就是一个或多个容器。一个容器中只能运行一个应用程序,所以有时一个应用程序需要
    强依赖另一个应用程序一起工作,如:ELK中要收集每个应用的日志,它就需要在每个应用
    节点上部署自己的日志收集器,如Logstash, 那么对于Nginx,它的日志要放入ELK中,它就需要
    和Logstash放到一起,但一个容器中只能运行一个应用程序,所以就需要在一个Pod中运行
    两个容器,来完成这个需求,所以在K8s系统中,将一个Pod做为一个整体,一个基本原子来管理。
  Label Selector:在一个Kubernetes集群中,需要管理的Pod有很多,它们被调度到不同的Node节点上
    运行,这么多Pod运行在不同的Node节点上,怎么对它们做管理? 通过字符串名称?那么一个
    Pod运行过程中故障,又被重启到其它Node上,那么它的字符串名称必然要改变,那么这又怎么
    能唯一标示一个Pod? 所以这就需要用到Label Selector(标签选择器),实际上,Pod在K8s系统
    中它们都有一类标签,如:将运行Nginx的Pod都打一个App=Nginx的标签,将运行HAProxy的Pod
    都打上App=HAProxy,等等...那么在查找所有运行Nginx的Pod时,就可以通过标签选择器,通过
    条件App, 并且其值为Nginx来查询,就可以将所有是App=Nginx的Pod都标记出来,进行管理操作了。
  Kubelet:它运行在Node上,接受APIServer发来的启动,停止或删除Pod请求,并按照请求,在Node实际执行
    操作的守护进程。
  Docker: 是实际Pod的运行环境提供者.




上一篇:Kubernetes功能
下一篇:了解云原生
相关推荐
推荐阅读
人文网服务器配备纯SSD架构打造的高性能存储,旨在为用户提供优质、高效、弹性伸缩的云计算服务。云服务器采用由数据切片技术构建的三层存储功能,切实保护客户数据的安全。同时可弹性扩展的资源用量,为客户业务在高峰期的顺畅保驾护航;灵活多样的计费方式,为客户最大… 云计算(cloud computing)是分布式计算的一种,指的是通过网络“云”将巨大的数据计算处理程序分解成无数个小程序,然后,通过多部服务器组成的系统进行处理和分析这些小程序得到结果并返回给用户。云计算早期,简单地说,就是简单的分布式计算,解决任务分发,并进行计… 近年来,关于手机流量资费贵和网速慢是社会关注和领导关切的热点问题,我部一直与相关部委共同深入落实宽带中国战略,推动企业加大网络投资、降低手机流量资费。为落实李克强总理指示,我部将加大今年宽带专项行动中加快4G建设、大幅提升网速等工作的力度,使老百姓上网速… 钢铁行业电子商务如今已发展十年余载,在这块领域下,钢铁行业的展现模式在不断的改变当中。特别地,对行业电子商务而言,作为垂直类的B2B商务平台,电子支付是不可缺少的必要手段。而第三方支付平台的出现符合电子商务的发展需要,也是网上支付业务… OFweek光通讯网讯 宽带已经是大家日常生活必不可少的必须品,也是国民经济的基础建设。不过大家会不会经常有这样的感觉,各大商家打出来的广告十分诱人,超低的价格,超高的带宽。可是越来越多的人发现,在办理了所谓的超高带宽的光纤宽带之后,网速却没有… 第一条 为了规范互联网信息服务活动,促进互联网信息服务健康有序发展,制定本办法。第二条 在中华人民共和国境内从事互联网信息服务活动,必须遵守本办法。本办法所称互联网信息服务,是指通过互联网向上网用户提供信息的服务活动。第三条 互联网信息服务分为经营性和非…