• 第三章 kubernetes核心原理


    kubernetes API Server

    提供了Kubernetes各类资源对象(如pod,re,service等)的增删改查及watch等Http Rest接口,成为集群内各个功能模块之间数据交互和通信的中心枢纽,是整个系统的数据总线和数据中心。

    运行下列的curl命令,分别返回集群中Pod列表,service列表,rc列表等。

    curl localhost:8080/api/v1/pods

    curl localhost:8080/api/v1/services

    curl localhost:8080/api/v1/replicationcontrollerss

    只暴露部分REST服务,可以在master或者其他任何节点上通过运行kebectl proxy进程启动内部代理

    kubectl proxy --reject-path="^/api/v1/replicationcontrollers" --port=8001 --v=2

    curl localhost:8001/api/v1/replicationcontrollers                   <h3>Unauthorized<h3>

    独特的kubernetes Proxy API 接口

    API里关于Node的相关接口,其中{name}为节点的 名称或IP地址,包括以下几个具体接口。

    /api/v1/proxy/nodes/{name}/pods/   列出指定节点内所有pod的信息

    /api/v1/proxy/node/{name}/stats/  列出指定节点内物理资源的统计信息

    /api/v1/proxy/nodes/{name}/spec/ 列出指定节点的概要信息

    集群功能模块之间的通信

    每个node每隔一个时间周期,就会调用一次API Server 的Rest接口报告自身状态,API Server 接受到这些信息后,将节点状态信息更新到etcd中。

    kube-controller-manager进程与API Server交互,kube-controller-manager中的node Controller模块通过API Server提供非watch接口,实时监控Node的信息,并做相应的处理。

    Controller Manager原理分析

    Controller Manager作为集群内部的管理控制中心,负责集群内的node,pod副本,服务端点(Endpoint),命名空间Namespace,服务账号(ServiceAccount),资源定额(ResourceQuota)等的管理,当某个Node意外宕机时,Controller Manager会及时发现故障并执行自动修复流程,确保集群始终处于预期的工作状态。

    Replication Controller

    Replication Controller的核心功能是确保在任何时候集群中一个rc所关联的pod副本数量保持预设值,如果发现pod副本数量超过预期值,则replication controller会销毁一些pod副本。

  • 相关阅读:
    大数据,TB、PB、EB
    localhost,127.0.0.1,本机IP,三者的区别
    git rollback commands
    世界会给这样静等花开的人足够的回报
    柳传志:一个人越是成功,所遭受的委屈也越多!
    大型网站架构之分布式消息队列
    设置 php 上传文件大小
    简单php post请求
    linux下mysql 备份、还原数据库
    Windows下 Apache xdebug
  • 原文地址:https://www.cnblogs.com/gaojy/p/7120591.html
Copyright © 2020-2023  润新知