k8s面试题总结(十)

1.为什么HDFS不适合存储小文件?

  1. 元数据存储在NameNode内存中,一个节点的内存是有限的。
  2. 存储大量的小文件会消耗过多的寻道时间

同等大小一个大文件的访问速度一定比多个小文件访问速度快

3.NameNode存储block的数量是有限的

比如你一个block元数据需要消耗150byte的内存

一个文件的大小为10K,一亿个文件为1TB,但他会消耗20GB的内存,所占内存太大。

2.MapReduce有什么用途,请说明一下其详细的过程。

MapReduce是用来处理离线数据的。其可以用来统计单词出现的次数。

其过程如下:

Spiltting:首先我们对所有的数据进行分片(splitting),如图,它被分为了三个部分。

Mappping:每个分片(spilt)会被发送到一个或多个映射器,以键值对的方式存储每个单词以及它出现的次数。

Shuffing: 将映射器输出的所有的键值对都收集起来,并根据键进行排序,排序后的键值对被分发给不同的Reducer。

Reducing: 归约阶段,将相同键的键值对进行合并,得到最终的计数。

最后,即可得到最终结果。

3.如何排查Kubernetes中的网络连接问题?

  1. 使用kubectl get endpoints检查Service的后端Pod是否正常。
  2. 使用kubectl exec 进入pod,使用curl或ping测试网络连接。
  3. 检查NetworkPolicy是否限制了流量。

4.请解释Docker镜像和容器的区别。

镜像是一个只读模板,包含运行应用程序所需的文件系统和配置。

容器是镜像的运行实例,具有可写成和运行时状态。

相关推荐
DolitD27 分钟前
UE像素流与云渲染技术方案对比分析
3d·云原生·ue5·云计算·图形渲染
这个DBA有点耶3 小时前
云数据库半夜卡顿,CPU才30%?深挖云盘IOPS突发限制与内核挂起机制
数据库·mysql·云原生
miaobinfei5 小时前
docker拉取dify镜像,执行docker compose up -d 报错
运维·docker·容器
kobe_OKOK_6 小时前
docker compose命名卷 映射到宿主机的路径
运维·docker·容器
无言听风雨丶7 小时前
Linux 容器本质探秘:Cgroup 与 Namespace 深度解析与实战
linux·运维·服务器·kubernetes
分布式存储与RustFS8 小时前
JuiceFS 接 RustFS 当数据后端:把对象存储挂成本地文件系统
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
孔令飞10 小时前
很多人想学AI Infra,今天推荐一个 AI Agent / AI Infra 学习路线
云原生·go·ai编程
晨陌y11 小时前
Flare自托管导航页教程:Docker部署、多用户、API与公网访问
运维·docker·容器
无言听风雨丶11 小时前
Kubernetes GitOps 持续交付实战:用 Argo CD 让 Git 成为集群事实源
git·elasticsearch·kubernetes
Z21-X11 小时前
云原生运维实战笔记:华为云存储类服务全景解析——EVS、OBS、SFS与CBR深度实践
运维·笔记·学习·云原生·华为云