当前位置: 首页 > news >正文

玛卡巴卡的k8s知识点问答题(四)

13. 系统默认创建了哪几个 namespace?

Kubernetes 安装后会默认创建以下命名空间(namespace):

  • default:未指定命名空间的资源默认归属于此。

  • kube-system:存放 Kubernetes 核心组件(如 kube-apiserverkube-proxykube-dns)。

  • kube-public:公开可读的资源(如集群信息),通常用于公共配置。

  • kube-node-lease:存储节点租约(Node Lease)信息,用于节点心跳检测(K8s 1.14+)。可以用kubectl get ns 获得命名空间


14. 请解释 Pod 是什么?

Pod 是 Kubernetes 的最小调度和管理单元,特点如下:

  • 容器组:包含一个或多个共享资源的容器(如网络、存储卷)。

  • 共享环境

    • 同一 Pod 内的容器共享 IP 地址和端口空间(通过 localhost 通信)。

    • 共享存储卷(Volumes),实现数据交换。

  • 原子性:Pod 被整体调度到某个节点,所有容器共存亡。

典型场景

  • 主容器 + Sidecar 容器(如日志收集器)。


15. 什么是 Pod 的根容器?

根容器(Pause 容器) 是 Pod 的基础设施容器,作用包括:

  • 共享 Linux Namespace

    • 创建共享的网络命名空间(NetNS),确保所有容器共用同一 IP 和端口。

    • 提供基础的进程间通信(IPC)和存储挂载点。

  • 资源占位符

    • 占用极少量资源(~300KB 内存),避免因其他容器崩溃导致 Pod 被误删。

备注
用户通常无需直接操作 Pause 容器,它由 Kubelet 自动管理。


16. 解释 Pod 的生命周期。

Pod 的生命周期包含以下阶段(Phase):

阶段描述
PendingPod 已被 API Server 接受,但尚未完成调度或镜像下载。
RunningPod 已绑定到节点,所有容器已创建且至少有一个在运行。
Succeeded所有容器成功退出(如批处理任务完成)。
Failed至少一个容器因错误退出(非零状态码或系统终止)。
Unknown无法获取 Pod 状态(通常因节点通信失败)。

关键过程

  1. 初始化容器(Init Containers):按顺序运行,必须全部成功退出后,主容器才会启动。

  2. 主容器(Main Containers):并行运行,通过探针(Liveness/Readiness)检测健康状态。

  3. 终止流程

    • 收到删除请求后,Pod 进入 Terminating 状态。

    • 执行 preStop 钩子(若配置)。

    • 发送 SIGTERM 信号,等待优雅终止(默认 30 秒后强制 SIGKILL)。

kubectl describe pod <pod-name>  # 查看 Pod 详细状态和事件

相关文章:

  • 自有服务器 建网站免费推广引流平台有哪些
  • 自己创免费网站国际新闻今天最新消息
  • 免费手机个人网站关键词的选取原则有
  • 投资企业网站备案要前置认证购物网站页面设计
  • 政府网站颜色网络推广工具和方法
  • 初期网站价值网站怎么收录到百度
  • Spring Boot 整合 ElasticJob 分布式任务调度教程
  • pycharm虚拟环境项目转移后配置解释器
  • Spring Boot整合Redis
  • SpringBoot分布式项目订单管理实战:Mybatis最佳实践全解
  • 通俗易懂的大模型原理
  • 【自学笔记】PHP语言基础知识点总览-持续更新
  • BFD 双向转发检测协议
  • 推荐系统(十八):优势特征蒸馏(Privileged Features Distillation)在商品推荐中的应用
  • epoch、batch、batch size、step、iteration深度学习名词含义详细介绍
  • 音视频入门基础:MPEG2-TS专题(25)——通过FFmpeg命令使用UDP发送TS流
  • 深度学习之丢弃法
  • 音视频 ColorSpace色彩空间详解
  • JS数组复制方法及注意事项
  • [BJDCTF2020]Mark loves cat [git泄露][变量覆盖漏洞]
  • Java单列集合[Collection]
  • 【Vue3知识】Vue3集成富文本编辑器TinyMCE
  • Croe 11.0建模入门笔记:1.2 快捷键
  • C++的四种类型转换
  • 走进 detect.tflite:树莓派目标检测背后的核心模型详解
  • rust学习笔记21-闭包