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

Kubernetes知识点(三)

 32. Kubernetes对集群Pod和容器健康状态如何进行监控和检测的。

答:K8s 通过探针机制监控 Pod 和容器的健康状态,包括存活探针、就绪探针和启动探针)。kubelet 定期执行这些探针检查容器状态,根据结果采取重启容器、标记 Pod 不可用等操作,确保应用健康运行。

 33. 解释LivenessProbes探针的作用及其适用场景。

答:LivenessProbe(存活探针)用于检测容器是否运行正常。当探测失败时,kubelet 会重启容器。适用场景:确保应用在崩溃、死锁等状态下能自动恢复,如检测 Web 服务是否能响应请求。

 34. 解释ReadinessProbe探针的作用及其适用场景。

答:ReadinessProbe(就绪探针)用于判断容器是否已准备好接收请求。未通过探测时,Pod 会从服务的端点列表中移除。适用场景:应用启动需要加载数据或初始化配置,确保仅当应用完全就绪后才接收流量。

 35. 解释StartupProbe探针的作用及其适用场景。

答:StartupProbe(启动探针)的作用是判断容器内的应用是否已启动完成。在启动探针探测成功之前,存活探针和就绪探针不会执行。适用场景为:针对启动缓慢的应用(如大型 JVM 应用),避免因启动时间过长导致存活探针误判而重启容器。

 36. 说明K8s中Pod级别的Graceful Shutdown。

答:Pod 级别的 Graceful Shutdown(优雅关闭)是指在删除 Pod 时,Kubernetes 会先向容器内的进程发送终止信号(SIGTERM),并等待设定的终止宽限期,让进程完成收尾工作(如保存数据、关闭连接),若超时则会强制终止(SIGKILL)。可通过 terminationGracePeriodSeconds 字段来配置宽限期。

 37. 解释什么是Kubernetes的Volume。

答:Kubernetes 的 Volume(存储卷)是 Pod 中容器可以访问的共享存储目录,主要用于数据持久化或在容器之间共享数据。Volume 的生命周期与 Pod 相关联,当 Pod 被删除时,卷中内容是否保留取决于卷的类型。

 38. 解释emptyDir卷类型的特征。

答:emptyDir 卷是在 Pod 被调度到节点时创建的临时目录,初始状态为空,可供所有容器共享。当 Pod 从节点移除时,emptyDir 中的数据会被永久删除。适用于临时缓存、容器间数据交换等场景。

 39. 解释hostPath卷类型的特征。

答:hostPath 卷会将节点的文件或目录挂载到 Pod 中,使容器能够访问节点的文件系统。其特征为:数据持久化存储在节点本地,当 Pod 调度到其他节点后,无法访问原节点的 hostPath 数据。适用于需要访问节点日志、配置文件等场景(使用时需谨慎,可能会使 Pod 与节点产生耦合)。

 40. 解释PV卷类型的特征,

答:PV(PersistentVolume,持久卷)是集群级别的存储资源,由管理员预先创建或者通过 StorageClass 动态供应,独立于 Pod 的生命周期,可被多个 Pod 共享。PV 具有固定的存储容量、访问模式和回收策略,能够提供数据持久化存储能力。

 41. 什么是PVC,如何使用它。

答:PVC(PersistentVolumeClaim,持久卷声明)是用户对存储资源的请求。用户通过 PVC 指定所需的存储容量、访问模式等,Kubernetes 会自动匹配符合条件的 PV 并进行绑定。使用方法是:创建 PVC 来定义存储需求,在 Pod 的 Volume 中引用 PVC 的名称,从而实现存储资源的动态分配。

 42. PV有哪几种访问模式,详细说明。

答:PV 的访问模式(Access Modes)有以下几种:

ReadWriteOnce(RWO):只允许单个节点以读写方式进行挂载。

ReadOnlyMany(ROX):允许多个节点以只读方式进行挂载。

ReadWriteMany(RWX):允许多个节点以读写方式进行挂载。

ReadWriteOncePod(RWOP):仅允许单个 Pod 以读写方式进行挂载(Kubernetes 1.27 + 版本支持)。

 43. 解释PV的回收策略。

答:PV 的回收策略是指当 PVC 释放 PV 时的处理方式,包括:

Retain(保留):PV 会被保留,数据不会被删除,需要管理员手动处理。

Delete(删除):PV 及其存储后端的数据会被自动删除(适用于云存储等 动态供应的 PV)。

Recycle(回收):仅清空 PV 中的数据(已废弃,推荐使用 Delete 或 Retain)。

 44. 如何将特定Pod调度到指定的节点?

答:可通过以下方式将特定 Pod 调度到指定节点:

节点选择器(nodeSelector):在 Pod.spec 中指定 nodeSelector,以匹配节点标签。

节点亲和性(nodeAffinity):这是更灵活的标签匹配规则,支持软策略(preferredDuringSchedulingIgnoredDuringExecution)和硬策略(requiredDuringSchedulingIgnoredDuringExecution)。

污点和容忍(Taints and Tolerations):节点设置污点来排斥 Pod,而 Pod 设置容忍则可以被调度到该节点。

节点名称(nodeName):直接指定节点名称,跳过调度器,适用于特殊场景。

 45. 什么是节点的亲和性?

答:节点亲和性(Node Affinity)是 Pod 的调度规则,通过匹配节点标签来控制 Pod 调度到哪些节点。与 nodeSelector 相比,它支持更复杂的逻辑(如 In、NotIn、Exists 等),并分为:

硬亲和性(requiredDuringSchedulingIgnoredDuringExecution):必须满足条件,否则 Pod 无法被调度。

软亲和性(preferredDuringSchedulingIgnoredDuringExecution):优先满足条件,即使不满足也可能被调度。

 46. 什么是污点,它的主要用途是什么?

答:污点(Taint)是节点的属性,用于排斥不满足条件的 Pod。每个污点包含键(key)、值(value)和效果(effect):

NoSchedule:阻止未容忍该污点的新 Pod 调度到节点上。

PreferNoSchedule:尽量阻止未容忍该污点的 Pod 调度到节点上。

NoExecute:已运行的未容忍该污点的 Pod 会被驱逐,新 Pod 也无法调度到该节点。

其主要用途是:标记特殊节点(如 GPU 节点、污点节点),控制 Pod 的调度,确保节点资源得到合理使用。

 47. 解释ConfigMap的作用。

答:ConfigMap 用于存储非敏感的配置数据(如环境变量、配置文件),以键值对的形式存在。其作用包括:

实现配置与应用代码的解耦,方便进行配置管理和更新。

能够被多个 Pod 共享,通过环境变量或文件挂载的方式注入到容器中。

 48. Secret和ConfigMap相比较有哪些优点。

答:与 ConfigMap 相比,Secret 的优点在于它专门用于存储敏感信息(如密码、令牌、证书):

其数据会经过 Base64 编码(并非加密,需要配合 RBAC 和加密配置来增强安全性)。

访问控制更为严格,默认情况下只在需要时才挂载到 Pod,减少了敏感数据的暴露风险。

支持以文件或环境变量的形式挂载,使用方式与 ConfigMap 类似,但更适合管理敏感信息。

 49. 解释ResourceQuota的作用。

答:ResourceQuota(资源配额)用于限制命名空间内资源的使用总量,防止资源被滥用。其作用是:

限制 Pod、Service、ConfigMap 等对象的数量。

限制 CPU、内存等计算资源的总请求量和限制量。

确保不同命名空间能够公平地使用集群资源,适用于多团队共享的集群环境。

http://www.xdnf.cn/news/20070.html

相关文章:

  • 探究Linux系统的SSL/TLS证书机制
  • 河南萌新联赛2025第(七)场:郑州轻工业大学
  • 直接让前端请求代理到自己的本地服务器,告别CV报文到自己的API工具,解放双手
  • android View详解—自定义ViewGroup,流式布局
  • 亚洲数字能源独角兽的 “安全密码”:Parasoft为星星充电筑牢软件防线
  • MongoDB 高可用部署:Replica Set 搭建与故障转移测试
  • SpringCloud微服务基于nacos注册中心的服务发现模式及OpenFeign的使用
  • Redis在商城开发中起到什么作用?
  • 漏洞修复 Nginx TLSSSL 弱密码套件
  • 2025国赛C题保姆级教程思路分析 NIPT 的时点选择与胎儿的异常判定
  • 【完整源码+数据集+部署教程】陶瓷物品实例分割系统源码和数据集:改进yolo11-LVMB
  • 第22节:性能监控与内存管理——构建高性能3D应用
  • 3ds Max流体模拟终极指南:打造逼真液体效果,从瀑布到杯中溢出的饮料!
  • 240. 搜索二维矩阵 II
  • 2025年含金量高的经济学专业证书工科!【纯干货分享】
  • 文件系统-哈希结构文件
  • 食物分类案例优化 调整学习率和迁移学习
  • Paraverse平行云实时云渲染助力第82届威尼斯电影节XR沉浸式体验
  • 火山引擎数据智能体DataAgent总结分享
  • 小型企业MES软件开发的核心要点
  • 遥感语义分割辅导
  • PWM正相输出和PWM反相输出的各是怎样的工作原理
  • 别再和正则表达式死磕了!这套AI工具集让你的开发效率翻倍⚙️[特殊字符]
  • OPENCV复习第二期
  • 【ffmepg+ AI 】从mp3歌曲提取伴奏(纯音乐)
  • SQL常见索引失效导致慢查询情况
  • mysql集群部署(Mysql Group Replication)
  • 如何将数据从 Infinix 转移到 Infinix ?
  • 生活在数字世界:一份人人都能看懂的网络安全生存指南
  • @Percona XtraBackup 进行 MySQL 备份恢复