Kubernetes基础自学系列 | Kubernetes组件介绍
Posted COCOgsta
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Kubernetes基础自学系列 | Kubernetes组件介绍相关的知识,希望对你有一定的参考价值。
视频来源:B站《2021 年末倾力打造 Kubernetes 入门至精通 - 2022 年幸福的开胃菜》
一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持!
附上汇总贴:Kubernetes基础自学系列 | 汇总_COCOgsta的博客-CSDN博客
发展经历
IAAS:OpenStack
PAAS:曾经三足鼎立,Docker Swam、Apache Mesos、Kubernetets
2019年美国西部时间5月2日下午7点,Twitter公司在旧金山总部举行了一次技术发布会兼Meetup。会上,Twitter计算平台(Twitter Computing Platform)产品与技术负责人David McLaughlin正式宣布,Twitter的基础设施将从Mesos全面转向Kubernetes
Borg是谷歌内部的大规模集群管理系统,负责对谷歌内部很多核心服务的调度和管理。Borg的目的是让用户能够不必操心资源管理的问题,让他们专注于自己的核心业务,并且做到跨多个数据中心的资源利用率最大化
Kubernetes特点:
- 轻量级
- 开源
- 弹性伸缩
- 负载均衡
Kubernetes组件
etcd
etcd的官方将它定位成一个可信赖的分布式键值存储服务,它能够为整个分布式集群存储一些关键数据,协助分布式集群的正常运转
Raft从一开始就被设计成一个易于理解和实现的共识算法。每一个Raft集群中都包含多个服务器,在任何时刻,每一台服务器只可能处于Leader、Follower以及Candidate三种状态;在处于正常的状态时,集群中只会存在一个Leader,其余的服务器都是Follower
推荐在Kubernetes集群中使用etcd v3,v2版本已在Kubernetes v.11中弃用
Kubernetes API Server
作为Kubernetes系统的入口,其封装了核心对象的增删改查操作,以Restful API接口方式提供给外部客户和内部组件调用。维护的REST对象持久化到Etcd中存储
Kubernetes Scheduler
新建立的Pod进行节点(node)选择(即分配机器),负责集群的资源调度。组件抽离,可以方便替换成其他调度器
Controller Manager
负责维护集群的状态,比如故障检测、自动扩展、滚动更新等
Kubelet
负责维护容器的生命周期,同时也负责Volume(CSI)和网络(CNI)的管理
Container runtime
负责镜像管理以及Pod和容器的真正运行(CRI)
Kube-proxy
负责为Service提供cluster内部的服务发现和负载均衡
CoreDNS
负责为整个集群提供DNS服务
Ingress Controller
为K8S中的服务提供外网入口
Prometheus
为整个集群提供资源监控能力
Dashboard
提供B/S的访问体系,允许用户通过web进行集群管理及设置
Federation
提供跨可用区的集群,提供不同数据中心的K8S集群的管理能力
以上是关于Kubernetes基础自学系列 | Kubernetes组件介绍的主要内容,如果未能解决你的问题,请参考以下文章
Kubernetes基础自学系列 | Kubernetes基本概念
Kubernetes基础自学系列 | Kubernetes高可用
Kubernetes基础自学系列 | Kubernetes资源清单