k8s从入门到精通(三):10张图将 k8s 常用对象一锅烩

deployment和Replicatset

上一篇文章介绍了Pod,它是k8s 最小的调度单元。但一个服务多数情况下,都需要部署多个副本,所以ks8推出了 deployment概念,它是一组pod的集合。


k8s从入门到精通(三):10张图将 k8s 常用对象一锅烩

但的deployment并不是直接管理Pod,而是通过Replicatset(简称rs) 副本集管理,每个rs里面pod 的配置完全一样。当我们修改deployment镜像tag 后,k8s 触发一次滚动升级,创建一个新的rs。然后不断扩容新rs的副本,不断缩容老的rs 的副本,从而完成一次滚动升级。

k8s从入门到精通(三):10张图将 k8s 常用对象一锅烩

service和endpoint

k8s里面一组pod组成一个service(服务),服务在集群内可以通过一个虚IP (clusterIP)访问。当访问这个clusterIP后,service会提供负载均衡的能力,轮流访问每个后端Pod。

k8s从入门到精通(三):10张图将 k8s 常用对象一锅烩

但service和后端pod 也并非直接关联,为了解构,k8s引入endpoint概念。一个endpoint就是一些 IP和 port 组合。k8s甚至可以通过endpoint注入一个外部的服务。

statefulset

通常我们认为容器是没有状态的,在rs 里面每个pod的名称都有一个随机串。升级后pod的名称都会发生改变。但有些服务,譬如zk,它的每个节点都是是主从之分的,而且每个节点都会通过固定的主机名或者IP访问其他节点,如果当前pod1 节点宕机,需要重新的pod 名称仍然是pod1 并且仍然可以通过之前的域名访问这个pod 。于是k8s 引入了statefulset,代表有状态的副本集。

k8s从入门到精通(三):10张图将 k8s 常用对象一锅烩

每个pod 都可以单独挂载一个存储。

pv、pvc、storageclass

上面的stateful的pod 并非直接关联存储(当然k8s 也支持直接关联存储),而是通过pv 和 pvc 绑定到后端存储上。至于为啥需要引入两个概念,是因为k8s 将存储的运维和使用解耦,存储管理者通过pv 声明存储,存储的使用者和通过pvc 申请存储。当很多时候存储都可以自动分配,于是引入了storageclass 概念,帮助我们自动管理存储。

k8s从入门到精通(三):10张图将 k8s 常用对象一锅烩

configmap、secret

容器的启动的时候需要以依赖配置文件,容器的使用方式推荐一次构建处处运行,但不同的环境中需要使用不同的配置文件,于是k8s 提供了configmap 和secret 帮助我们将配置文件挂载到容器里面。我们可以为dev、test 以及prod 分别提供三个配置文件,当面在三个环境中可以分别挂载这三套配置文件。

k8s从入门到精通(三):10张图将 k8s 常用对象一锅烩

job、cronjob

我们可以在k8s里面执行一些批处理任务,他们被称为Job。这些job任务和容器生命周期相同,当job开始执行 pod启动,当job只完成后,pod 退出。甚至我们可以通过cron 表达式执行定时任务 cronjob。job 也支持并发执行,完成指定个数的job 任务。

k8s从入门到精通(三):10张图将 k8s 常用对象一锅烩

ingress

上面介绍的service主要用户集群内部流量的访问,如果是来自外网的访问流量,通常会经过ingress。ingress可以通过公有云的七层负载均衡实现,也可以基于开源的Nginx或者traefik实现。主要是提供七层负载,将流量转发到后端的service 上。

k8s从入门到精通(三):10张图将 k8s 常用对象一锅烩

namespace

k8s 提供了逻辑资源隔离 namespace,每个namespace下的资源不可见。我们可以分别在ns1 和ns2 下面创建同名的sevice,他们具有不同clusterIP。namespace 通常只是逻辑视图的隔离,但也可以结合网络策略实现网络隔离。

k8s从入门到精通(三):10张图将 k8s 常用对象一锅烩

daemonset

daemonset通常是为运维准备的,普通开发者可能接触的比较少。有些管理组件譬如 日志采集插件、CNI 、CSI 等,他们的特点是在每个节点上面有且仅运行一个Pod。相比rs 通过调度分配pod,daemonset则非常简单,每个node 跑一个pod。

k8s从入门到精通(三):10张图将 k8s 常用对象一锅烩

展开阅读全文

页面更新:2024-04-23

标签:都会   主从   组合   副本   节点   集群   容器   流量   逻辑   入门   分配   对象   状态   概念   常用   名称   环境   资源   科技

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top