微服务(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是一种工作类容器(一般用于做一次性任务)。使用常见不多,可以忽略这个问题。

相关推荐
RingWu2 小时前
微服务架构-全链路追踪
微服务·云原生·架构
RingWu2 小时前
微服务架构-全链路追踪:Apache SkyWalking
微服务·架构·apache
音符犹如代码3 小时前
Docker 一键部署带有 TimescaleDB 插件的 PostgreSQL
java·运维·数据库·后端·docker·postgresql·容器
YuanDaima20484 小时前
Docker 工程化安装与核心命令实战
运维·人工智能·docker·微服务·容器·bash
喵了几个咪4 小时前
Kratos 生态双定时器中间件:高精度 hptimer 与标准 cron 选型与实践
微服务·中间件·架构·golang·kratos
cgsthtm4 小时前
rocky linux 8.10 下的 podman 配置镜像加速
docker·podman·镜像加速·podman-docker·毫秒镜像
牛奔5 小时前
在 Docker 容器里测试外部域名延迟
运维·docker·容器
Elastic 中国社区官方博客5 小时前
Kubernetes 可观测性:用于更安全 EKS 故障排查的 MCP 专家 agents
大数据·elasticsearch·搜索引擎·云原生·容器·kubernetes·全文检索
颖火虫盟主6 小时前
Claude Code Cron 定时任务:从入门到自动化
运维·docker·自动化
IT策士6 小时前
深入浅出:使用 Gunicorn + Nginx + Docker 将 Django 项目部署到云服务器
nginx·docker·gunicorn