关于kubernetes:每天5分钟学习k8s第二章重要的概念

在实际之前,必须先学习k8s的几个重要概念,他们是组成k8s的集群基石

1. Cluster:计算、存储和网络资源的汇合,k8s利用这些资源运行基于容器的利用。

2. Master:次要工作时用来做调度应用的,治理各个节点的生命周期

3. Node:负责是容器的利用运行。由Master治理,Node监控Pod的状况,并及时反馈。

4. Pod: k8s的最小单元,每一个Pod有一个或多个容器。Pod的一个整体在Node上运行,并被Master调度。

k8s 引入 Pod 次要是两方面

4.1 可管理性:pod提供比容器更高的形象,将他们封装一个部署单元中,k8s以pod最小单元进行调度,扩大,资源共享,治理生命周期

4.2 通信资源和资源共享:pod中的所有容器都是用同一个namespace,雷同的Ip地址和Port空间。同样的资源共享应用的volume到pod。

pods有两种应用的形式:

1) 运行繁多容器:one-container-per-Pod是K8s常常用到的模型。你能够了解为一个pod就是一容器。

2) 运行多个容器:如果你容器和容器间接须要间接资源共享的话,这模型能够更好的解决问题。举个官网的例子

File Puller会定期从内部的Content Manager中拉取最新的文件,将其存在共享的volume中。web Server从volume读取文件,Response Consumer的申请。

这两个容器有严密的合作,他们一起为Consumer提供最新的数据;同时也通过volume共享数据。

5 Controller

k8s通常不能间接创立pod,而是通过Contoller来治理Pod。在k8s外面又提供了Deployment、ReplicaSet、DaemonSet、StatefuleSet、Job等。

1) Deploymen是最罕用的Controller,比方在线教程中就是通过创立Deploymen来部署利用的。Deploymen能够治理多个Pod正本。并确保Pod依照冀望的状态运行。

2) ReplicaSet实现多个Pod的多正本治理。应用Deploymen时会主动创立ReplicaSet,也就是说Deploymen是通过ReplicaSe来治理多个正本的。

3) StatefuleSe:可能保障Pod整个生命周期名称是不变的。

4) Job 用于运行完结就删除的利用,而其余Controller中的Pod通常是长期应用运行的。

6 Service

Deploymen 能够部署doge正本,每个Pod都有本人的Ip,内部是如何拜访这些正本呢?

通过Pod的IP嘛?

要晓得Pod很可能会被频繁地删除和重启,他们的ip是会变动,用ip来拜访不太事实。所以就有了Service,k8s Service定一个外界拜访一组特定的Pod的形式。Service有本人的Ip和端口,Service为Pod提供了负载平衡。

k8s运行Pod与拜访容器pod这两项工作别离有Contoller和Service执行

7 Namespace

和docker一样应用Namespace进行隔离Controller、Pod等资源。

k8s默认创立两个Namespace

default:创立资源时如果不指定,将被放到这个Namespace中

kube-system:k8s本人创立的系统资源将放到这个Namespace中。

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理