Kubernetes 初识

1.什么是K8s

Kubernetes是一个开源容器编排引擎,用于自动化容器化应用程序的部署、扩展和管理。

2.虚拟容器优点

物理机无法定义资源边界以及隔离资源,难以合理分配资源。

虚拟机技术使应用得以隔离,隔离层级最高

容器化技术降低了隔离层级,共享OS,但每个容器有自己的文件系统、CPU、内存、进程空间。部署容易快速。

3.什么是容器

容器其实是一种沙盒技术。顾名思义,沙盒就是能够像一个集装箱一样,把你的应用“装”起来的技术。这样,应用与应用之间,就因为有了边界而不至于相互干扰

可以说,容器封装了应用软件本身以及软件运行起来需要的依赖。

4.k8s组织架构

k8s集群由一组节点组成,节点分为Master和Worker,两种节点上面部署的组件是不同的。

5. 组件说明

   (1)kube-apiserver

- 提供 Kubernetes API,Kubernetes控制平台的前端。
kubectl / kubernetes dashboard / kuboard 等Kubernetes管理工具就是通过 kubernetes API 实现对 Kubernetes 集群的管理。

- 提供了资源操作的唯一入口,并提供认证、授权、访问控制、API注册和发现等机制;

- 提供 Kubernetes API,Kubernetes控制平台的前端。
kubectl / kubernetes dashboard / kuboard 等Kubernetes管理工具就是通过 kubernetes API 实现对 Kubernetes 集群的管理。

- 提供了资源操作的唯一入口,并提供认证、授权、访问控制、API注册和发现等机制;

  (2)Etcd

- Kubernetes集群的所有配置信息都存储在 etcd 中,保存了整个集群的状态

 (3)kube-scheduler

- 监控所有新创建尚未分配到节点上的 Pod,并且自动选择为 Pod 选择一个合适的节点去运行

   (4)kube-controller-manager

运行了所有的控制器

    节点控制器: 负责监听节点停机的事件并作出对应响应
    副本控制器: 负责为集群中每一个 副本控制器对象(Replication Controller Object)维护期望的 Pod 副本数
    端点(Endpoints)控制器:负责为端点对象(Endpoints Object,连接 Service 和 Pod)赋值
    Service Account & Token控制器: 负责为新的名称空间创建 default Service Account 以及 API Access Token

5.1.2 Worker组件

(1)Container Runtime

- 容器引擎,如Dokcer,还有其他的如containerd、cri-o、rktlet等

   (2)kubelet

- 通过Restapi与apiserver交互

- 直接和Container Runtime交互,解析apiserver的指令,转化成Container Runtime能识别的命令

- 保证容器(containers)都 运行在 Pod,确保pod处于运行状态且健康

- 上报worker节点状态

(3)kube-proxy

- 在节点上维护网络规则,是实现Pod、集群与集群外网络的重要组件

(4)Pod

Pod 是可以在 Kubernetes 中创建和管理的、最小的可部署的计算单元。

Pod 容器组 是一个k8s中一个抽象的概念,用于存放一组 container(可包含一个或多个 container 容器,即图上正方体),以及这些 container (容器)的一些共享资源。具体的说:Pod 里的所有容器,共享的是同一个 Network Namespace,并且可以声明共享同一个 Volume。。
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值