k8s的简介,k8s的基本概念?

营销圈公众号引导关注

简介

Kubernetes是Google团队发起的开源项目,它的目标是管理跨多个主机的容器, 提供基本的部署,维护以及运用伸缩,主要实现语言为Go语言。Kubernetes是:

易学:轻量级,简单,容易理解 便携:支持公有云,私有云,混合云,以及多种云平台 可拓展:模块化,可插拔,支持钩子,可任意组合 自修复:自动重调度,自动重启,自动复制

Kubernetes构建于Google数十年经验,一大半来源于Google生产环境规模的经 验。结合了社区最佳的想法和实践。

在分布式系统中,部署,调度,伸缩一直是最为重要的也最为基础的功能。 Kubernetes就是希望解决这一序列问题的。

基本概念

k8s的简介,k8s的基本概念?

  1. 节点(Node):一个节点是一个运行Kubernetes中的主机。
  2. 容器组(Pod):一个Pod对应于由若干容器组成的一个容器组,同个组内的容器共享一个存储卷(volume)。
  3. 容器组生命周期(pos-states):包含所有容器状态集合,包括容器组状态类型,容器组生命周期,事件,重启策略,以及replicationcontrollers。
  4. ReplicationControllers:主要负责指定数量的pod在同一时间一起运行。
  5. 服务(services):一个Kubernetes服务是容器组逻辑的高级抽象,同时 也对外提供访问容器组的策略。
  6. 卷(volumes):一个卷就是一个目录,容器对其有访问权限。
  7. 标签(labels):标签是用来连接一组对象的,比如容器组。标签可以被用来组织和选择子对象。
  8. 接口权限(accessing_the_api):端口,IP地址和代理的防火墙规则。
  9. web界面(ux):用户可以通过web界面操作Kubernetes。
  10. 命令行操作(cli):kubecfg命令。

运行原理

下面这张图完整展示了Kubernetes的运行原理。k8s的简介,k8s的基本概念?

k8s架构

可见,Kubernetes首先是一套分布式系统,由多个节点组成,节点分为两类:一类 是属于管理平面的主节点/控制节点(MasterNode);一类是属于运行平面的工作 节点(WorkerNode)。

显然,复杂的工作肯定都交给控制节点去做了,工作节点负责提供稳定的操作接口 和能力抽象即可。

从这张图上,我们没有能发现Kubernetes中对于控制平面的分布式实现,但是由 于数据后端自身就是一套分布式的数据库Etcd,因此可以很容易扩展到分布式实 现。

K8s架构和组件

k8s的简介,k8s的基本概念?

k8s架构和组件

•Kubernetes 组件:

Kubernetes Master控制组件,调度管理整个系统(集群),包含如下组件:

1.Kubernetes API Server

作为Kubernetes系统的入口,其封装了核心对象的增删改查操作,以RESTful API接口方式提供给外部客户和内部组件调用。维护的REST对象持久化到Etcd中存储。

2.Kubernetes Scheduler

为新建立的Pod进行节点(node)选择(即分配机器),负责集群的资源调度。组件抽离,可以方便替换成其他调度器。

3.Kubernetes Controller

负责执行各种控制器,目前已经提供了很多控制器来保证Kubernetes的正常运行。

4. Replication Controller

管理维护Replication Controller,关联Replication Controller和Pod,保证Replication Controller定义的副本数量与实际运行Pod数量一致。

5. Node Controller

管理维护Node,定期检查Node的健康状态,标识出(失效|未失效)的Node节点。

6. Namespace Controller

管理维护Namespace,定期清理无效的Namespace,包括Namesapce下的API对象,比如Pod、Service等。

7. Service Controller

管理维护Service,提供负载以及服务代理。

8.EndPoints Controller

管理维护Endpoints,关联Service和Pod,创建Endpoints为Service的后端,当Pod发生变化时,实时更新Endpoints。

9. Service Account Controller

管理维护Service Account,为每个Namespace创建默认的Service Account,同时为Service Account创建Service Account Secret。

10. Persistent Volume Controller

管理维护Persistent Volume和Persistent Volume Claim,为新的Persistent Volume Claim分配Persistent Volume进行绑定,为释放的Persistent Volume执行清理回收。

11. Daemon Set Controller

管理维护Daemon Set,负责创建Daemon Pod,保证指定的Node上正常的运行Daemon Pod。

12. Deployment Controller

管理维护Deployment,关联Deployment和Replication Controller,保证运行指定数量的Pod。当Deployment更新时,控制实现Replication Controller和 Pod的更新。

13.Job Controller

管理维护Job,为Jod创建一次性任务Pod,保证完成Job指定完成的任务数目

14. Pod Autoscaler Controller

实现Pod的自动伸缩,定时获取监控数据,进行策略匹配,当满足条件时执行Pod的伸缩动作。

篇幅有限,这里主要介绍下k8s的一些原理、架构之类的内容,后面会讲下怎么去搭建一个k8s集群,感兴趣的朋友可以关注下!!

好了,这篇文章的内容营销圈就和大家分享到这里,如果大家对网络推广引流和网络创业项目感兴趣,可以添加微信:Sum8338 备注:营销圈引流学习,我拉你进直播课程学习群,每周135晚上都是有实战的推广引流技术和网络创业项目课程分享,当然是免费学!

版权声明:本站部分文章来源互联网用户自发投稿,主要目的在于分享信息,版权归原作者所有,不承担相关法律责任。如有侵权请联系我们反馈邮箱yingxiaoo@foxmail.com,我们将在7个工作日内进行处理,如若转载,请注明本文地址:https://www.yingxiaoo.com/100248.html