kubernetes概念之一:概述

2020-05-15
6

一:kubernetes集群的架构

一个kubernetes集群都至少由一个Master节点和若干个Node节点组成。
Master节点是集群控制节点,负责整个集群的管理和控制,基本上Kubernetes全部的控制命令都是发给它,它来负责具体的执行过程。
因为Master节点的重要性,它一般会独占一个物理机或虚拟机。
Master节点外的其它机器被称为Node节点,Node节点是集群中的工做负载节点,每一个Node都会被Master分配一些工做负载(如Docker容器),当某
个Node宕机时,其工做负载会被Master自动转移到其余节点上。

二:kubernetes集群的核心组件

Master节点组件提供整个集群的控制面板:
kube-apiserver: 暴露API操做接口,是kubernetes里面全部资源增,删,改,查等操做的惟一入口;也是集群控制的入口。
etcd: 集群的主数据库,集群里面的全部数据都存储于此。
kube-controller-manager: kubernetes里全部资源对象的自动化控制中心, 控制器的大管家。
kube-scheduler: 负责资源调度(Pod调度)的进程,为新建立的Pod分配Node节点去运行。``

Node节点组件维持Pods的运行:
kubelet:负责Pod对应容器的建立,启动,中止等任务; 同时与Master节点密切协做,实现集群管理的基本功能。
kube-proxy:实现Service的通讯和负载均衡机制的重要组件。
docker: docker引擎,负责本节点的容器建立和管理工做。
supervisord: 进程监控,保持kubelet和docker的正常运行。
fluentd: 日志收集

三:kubernetes集群中的对象或资源

pod:kubernetes中可以被建立,调度和管理的最小部署单元。
label:一组绑定到kubernetes对象上的键/值对,同一对象的labels属性的Key必须独一无二。
label selector: kubernetes核心的分组机制,经过它客户端可以识别一组有共同特征或属性的kubernetes对象。
serivece: pod副本组成的集群实例。主要由一个IP和一个label selector组成。 实现pod集群的IP代理和负载均衡。
voLume:相似于虚拟机的磁盘。Pod中能被多个容器访问的共享目录。
namespaces:用于多租户的资源隔离。
replicaSet:决定一个pod有多少同时容许的副本,并保证这些副本的指望状态与当前状态保持一致。
Deployment: replica set的升级版
DaemonSet: 能确保其建立的Pod在集群中的每一台(或指定)Node上都运行一个副本。
Job: 相似于Quartz
statefulSet: pod状态保留

评论