【Kubernetes】常见面试题汇总(十一)

目录

[33.简述 Kubernetes 外部如何访问集群内的服务?](#33.简述 Kubernetes 外部如何访问集群内的服务?)

[34.简述 Kubernetes ingress ?](#34.简述 Kubernetes ingress ?)

[35.简述 Kubernetes 镜像的下载策略?](#35.简述 Kubernetes 镜像的下载策略?)


33.简述 Kubernetes 外部如何访问集群内的服务?

(1)对于 Kubernetes,集群外的客户端默认情况,无法通过 Pod 的 IP 地址或者 Service 的虚拟 IP 地址:虚拟端口号进行访问。

(2)通常可以通过以下方式进行访问 Kubernetes 集群内的服务:

① 映射 Pod 到物理机:

将 Pod 端口号映射到宿主机,即在 Pod 中采用 hostPort方式,以使客户端应用能够通过物理机访问容器应用。

② 映射 Service 到物理机:

将 Service 端口号映射到宿主机,即在 Service 中采用 nodePort 方式,以使客户端应用能够通过物理机访问容器应用。

③ 映射 Sercie 到 LoadBalancer:

通过设置 LoadBalancer 映射到云服务商提供的 LoadBalancer 地址。这种用法仅用于在公有云服务提供商的云平台上设置 Service 的场景。


34.简述 Kubernetes ingress ?

  • Kubernetes 的Ingress 资源对象用于将不同 URL 的访问请求转发到后端不同的 Service ,以实现HTTP 层的业务路由机制。

  • Kubernetes 使用了Ingress 策略和 Ingress Controller,两者结合并实现了一个完整的 Ingress 负载均衡器。

  • 使用 Ingress 进行负载分发时,IngressController 基于 Ingress 规则将客户端请求直接转发到 Service 对应的后端 Endpoint(Pod)上,从而跳过 kube-proxy 的转发功能,kube-proxy 不再起作用,全过程为:ingresscontroller+ingress 规则 ----> services

  • 同时当 Ingress Controller 提供的是对外服务,则实际上实现的是边缘路由器的功能


35.简述 Kubernetes 镜像的下载策略?

K8s 的镜像下载策略有三种:Always、Never、IFNotPresent 。

(1)Always 镜像下载策略:

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

(2)Never 镜像下载策略:

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

(3)IfNotPresent 镜像下载策略:

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

  • 默认的镜像下载策略是:

① 当镜像标签是 latest 时,默认策略是 Always。

② 当镜像标签是自定义时(也就是标签不是 latest),那么默认策略是 IfNotPresent。

相关推荐
Patrick_Wilson1 天前
从「改个端口」到 502:Next.js on k8s 的容器端口、Service 映射与 env 覆盖
docker·kubernetes·next.js
阿里云云原生1 天前
AI 开发新常态:当 Cursor、Claude、Codex 并行,如何统一管理散落的 Skill 资产?
云原生·ai编程
探索云原生2 天前
K8s 1.36 这个 GA 特性,把 initContainer 拉模型的 hack 干掉了
ai·云原生·kubernetes
云恒要逆袭2 天前
运行你的第一个Docker容器
后端·docker·容器
Java之美2 天前
从edge-trigger到level-trigger,谈谈 Kubernetes controller 的开发范式
云原生
阿里云云原生2 天前
深度解构:当 Append-only 的 SLS 遇上 Update/Delete,是如何实现设计权衡的?
云原生
Java之美3 天前
一次k8s升级引发的DevicePlugin注册失败
云原生·kubernetes
秋播3 天前
nerdctl推送rancher本地镜像到harbor
云原生
程序员老赵3 天前
10 分钟部署 OpenCode:Docker 一键安装,浏览器打开就能用 AI 写代码(附完整命令与排错)
docker·容器·ai编程