微服务(10)

目录

46.k8s中镜像的下载策略是什么?

47.image的状态有哪些?

48.如何控制滚动更新过程?

49.DaemonSet资源对象的特性?

50.说说你对Job这种资源对象的了解?


46.k8s中镜像的下载策略是什么?

可通过命令kubectl explain pod.spec.containers来查看imagePullPlicy这行的解释。

k8s的镜像下载策略有三种:Always,Never,IINotPresent;

Always:镜像标签为latest时,总是从指定的仓库中获取镜像;

Never:禁止从仓库中下载镜像,也就是说只能使用本地镜像;

ifNotPresent:仅当本地没有对应镜像时,才行目标仓库中下载。

默认的镜像下载策略是:当镜像标签是latest时,默认策略是Always;当镜像标签是自定义时(也就是标签不是latest,那么默认策略是ifNotPresent.

47.image的状态有哪些?

Running:Pod所需的容器已经被成功调度到某个节点,且已经成功运行

Pending:APIserver创建了pod资源对象,并且已经存入etcd中,但他尚未被调度完成或者仍然处于仓库中下载镜像的过程。

Unknown:APIserver无法正常获取到pod对象的状态,通常是其无法与所在工作节点的kubelet通信所致。

48.如何控制滚动更新过程?

可以通过下面的命令查看到更新时可以控制的参数:

maxSurge:此参数控制滚动更新过程,副本总数超过预期pod数量的上限。可以是百分比,也可以是具体的值。默认为1.(上述参数的作用就是在更新过程中,值若为3,那么不管三七二十一,先运行三个pod,用于替换旧的pod,以此类推)

maxUnavaliable:此参数控制滚动更新过程中,不可用的Pod的数量。(这个值和上面的值没有任何关系,举个例子:我有十个pod,但是在更新的过程中,我允许这十个pod中最多有三个不可用,那么就将这个参数的值设置为3,在更新的过程中,只要不可用的pod数量小于或者等于3,那么更新过程就不会停止)。

49.DaemonSet资源对象的特性?

DaemonSet这种资源对象会在每个k8s集群中的节点上运行,并且每个节点只能运行一个pod,这是他和deployment资源对象的最大也是唯一的区别。所以,在其yaml文件中,不支持定义replicas,除此之外,与Deployment,RS等资源对象的写法相同。

他的一般使用场景如下:

1.在去做每个节点的日志收集工作;

2.监控每个节点的运行状态;

50.说说你对Job这种资源对象的了解?

Job与其他服务类容器不同,Job是一种工作类容器(一般用于做一次性任务)。使用常见不多,可以忽略这个问题。

相关推荐
小义_1 天前
【Kubernetes】(九)Service 2
云原生·容器·kubernetes
喜欢流萤吖~1 天前
服务间的依赖管理:微服务的协作之道
java·微服务
天籁晴空1 天前
Docker Compose 部署完整指南 -- RuoYi-Vue
docker·ruoyi
@土豆1 天前
Elasticsearch 9.0.1 集群部署(Docker Compose + k8s 部署方式)
大数据·elasticsearch·docker
Cyber4K1 天前
【Kubernetes专项】温故而知新,重温技术原理(2)
云原生·容器·kubernetes
雨奔1 天前
Kubernetes 网络策略(NetworkPolicy)完全指南:声明式 Pod 通信管控
网络·容器·kubernetes
身如柳絮随风扬1 天前
Kubernetes v1.20.9 集群搭建
云原生·容器·kubernetes
LSL666_1 天前
微服务架构
微服务·云原生·架构
威迪斯特1 天前
GoFr框架:加速微服务开发的Go语言利器
开发语言·后端·微服务·架构·golang·命令行框架·gofr框架
蛐蛐蛐1 天前
在Windows 11上安装Docker的踩坑记录
运维·docker·容器