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

  1. 部署安装 K8s 为什么要关闭 swap 分区?

(1)资源管理失效,k8s无法感知swap的使用情况,因为他只监控物理内存,若启用了swap,pod可能会使用swap空间,导致k8s误判节点的使用情况。

(2)性能下降:swap的读写速度远远低于物理内存,使用swap会导致应用性能明显下降。

(3)Pod驱逐机制失效:k8s通过内存压力来触发Pod的驱逐机制,如果节点启用了swap,内存不足时系统会优先使用swap,而不是触发压力事件。

  1. 解释 br_netfilter。

br_netfilter 是 Linux 内核中的一个模块,主要用于桥接网络流量和防火墙(如 iptables 或 nftables)之间的交互。它允许对桥接流量进行过滤、NAT 等操作。

主要功能

  1. 桥接流量过滤:

    • 默认情况下,Linux 桥接设备(br0 等)不经过 iptables 或 nftables 的过滤规则。

    • br_netfilter 模块使桥接流量也能被这些防火墙规则处理。

  2. NAT 支持:

    • 支持在桥接流量上执行 NAT(网络地址转换),适用于虚拟机或容器通过桥接网络与外部通信的场景。
  3. 连接跟踪:

    • 支持对桥接流量进行连接跟踪(conntrack),便于实现状态防火墙功能。
  4. 解释 kubeadm, kubectl, kubelet

kubeadm:k8s的官方集群管理工具,用于快速部署和管理K8s集群。

kubectl:是k8s的命令行工具,用于与k8s集群交互

kubelet:是k8s节点上的核心组件,负责节点上的pod容器。

使用场景

• 快速搭建 Kubernetes 集群(适用于开发、测试和生产环境)。

• 管理集群的生命周期(如初始化、升级、节点管理)。

示例

初始化一个 Kubernetes 集群:

kubeadm init --pod-network-cidr=10.244.0.0/16

将工作节点加入集群:

kubeadm join <控制平面节点的 IP>:6443 --token <token> --

discovery-token-ca-cert-hash sha256:<hash>

  1. kubectl

kubectl 是 Kubernetes 的命令行工具,用于与 Kubernetes 集群

交互。

功能

• 资源管理:创建、更新、删除 Kubernetes 资源(如 Pod、Service、

Deployment 等)。

• 集群管理:查看集群状态、节点信息、日志等。

• 调试和诊断:执行命令、查看日志、进入容器等。

使用场景

• 日常的 Kubernetes 资源管理。

• 集群的监控和故障排查。

示例

创建一个 Deployment:

kubectl create deployment nginx --image=nginx

查看 Pod 状态:

kubectl get pods

进入容器:

kubectl exec -it <pod-name> -- sh

  1. kubelet

kubelet 是 Kubernetes 节点上的核心组件,负责管理节点上的 Pod

和容器。

功能

• Pod 生命周期管理:根据 Kubernetes API Server 的指令,创

建、启动、停止和删除 Pod。

• 资源监控:监控节点上的资源使用情况(如 CPU、内存)。

• 健康检查:执行容器的存活探针(Liveness Probe)和就绪探

针(Readiness Probe)。

使用场景

• 在 Kubernetes 节点上运行和管理容器。

• 确保 Pod 按照期望状态运行。

工作原理

• kubelet 定期从 Kubernetes API Server 获取分配给当前节

点的 Pod 清单。

• 根据清单启动或停止容器。

• 将节点的状态和 Pod 的状态报告给 API Server。

相关推荐
Wang's Blog1 小时前
Java 项目部署之 Docker工具快速入门: Docker 是什么以及它如何解决部署环境问题
java·开发语言·docker
AIGC大时代2 小时前
LLM Agent 执行沙箱闸门:失败含义与当天最小实验
docker·沙箱·闸门·bubblewrap·llm agent
灯澜忆梦3 小时前
【docker】#2 | 基础命令
docker·容器·eureka
程序员老赵5 小时前
Docker 部署 WordPress:轻松搭建开源内容管理平台
docker·开源·wordpress
sbjdhjd6 小时前
云安全 | 从特权容器到旧版 runC:Docker 宿主机访问与运行时缺陷复盘
运维·网络安全·docker·云原生·kubernetes·云计算·云安全
Pocker_Spades_A8 小时前
Penpot自托管设计协作:Docker部署、MCP接入与Codex生成UI实操记录
ui·docker·容器
Lvan的前端笔记17 小时前
docker:每个前端项目一个 Nginx 容器还是只有一个Nginx容器
前端·nginx·docker
谢亮_vipxieliang20 小时前
Kubernetes 的“操作系统化”:从容器编排到 AI 基础设施控制平面
人工智能·平面·kubernetes
sbjdhjd1 天前
云安全 | Docker 容器逃逸复盘(三):docker.sock 挂载与 Docker-in-Docker 风险
经验分享·网络安全·docker·云原生·容器·kubernetes·云安全