【从问题中去学习k8s】k8s中的常见面试题(夯实理论基础)(十三)

本站以分享各种运维经验和运维所需要的技能为主

《python零基础入门》:python零基础入门学习

《python运维脚本》: python运维脚本实践

《shell》:shell学习

《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战

《k8》从问题中去学习k8s

《docker学习》暂未更新

《ceph学习》ceph日常问题解决分享

《日志收集》ELK+各种中间件

《运维日常》运维日常

《linux》运维面试100问

《DBA》db的介绍使用(mysql、redis、mongodb...)

思考一下问题:

61、简述Kubernetes Pod如何实现对节点的资源控制?

62、简述Kubernetes Requests和Limits如何影响Pod的调度?

63、简述Kubernetes Metric Service?

64、简述Kubernetes中,如何使用EFK实现日志的统一管理?

65、简述Kubernetes如何进行优雅的节点关机维护?

参考答案:

61、简述Kubernetes Pod如何实现对节点的资源控制?
Kubernetes集群里的节点提供的资源主要是计算资源,计算资源是可计量的能被申请、分配和使用的基
础资源。当前Kubernetes集群中的计算资源主要包括CPU、GPU及Memory。CPU与Memory是被Pod
使用的,因此在配置Pod时可以通过参数CPU Request及Memory Request为其中的每个容器指定所需
使用的CPU与Memory量,Kubernetes会根据Request的值去查找有足够资源的Node来调度此Pod。
通常,一个程序所使用的CPU与Memory是一个动态的量,确切地说,是一个范围,跟它的负载密切相
关:负载增加时,CPU和Memory的使用量也会增加。

62、简述Kubernetes Requests和Limits如何影响Pod的调度?
当一个Pod创建成功时,Kubernetes调度器(Scheduler)会为该Pod选择一个节点来执行。对于每种
计算资源(CPU和Memory)而言,每个节点都有一个能用于运行Pod的最大容量值。调度器在调度
时,首先要确保调度后该节点上所有Pod的CPU和内存的Requests总和,不超过该节点能提供给Pod使
用的CPU和Memory的最大容量值。

63、简述Kubernetes Metric Service?
在Kubernetes从1.10版本后采用Metrics Server作为默认的性能数据采集和监控,主要用于提供核心指
标(Core Metrics),包括Node、Pod的CPU和内存使用指标。
对其他自定义指标(Custom Metrics)的监控则由Prometheus等组件来完成。

64、简述Kubernetes中,如何使用EFK实现日志的统一管理?
在Kubernetes集群环境中,通常一个完整的应用或服务涉及组件过多,建议对日志系统进行集中化管
理,通常采用EFK实现。
EFK是 Elasticsearch、Fluentd 和 Kibana 的组合,其各组件功能如下:
Elasticsearch:是一个搜索引擎,负责存储日志并提供查询接口;
Fluentd:负责从 Kubernetes 搜集日志,每个node节点上面的fluentd监控并收集该节点上面的系
统日志,并将处理过后的日志信息发送给Elasticsearch;
Kibana:提供了一个 Web GUI,用户可以浏览和搜索存储在 Elasticsearch 中的日志。
通过在每台node上部署一个以DaemonSet方式运行的fluentd来收集每台node上的日志。Fluentd将
docker日志目录/var/lib/docker/containers和/var/log目录挂载到Pod中,然后Pod会在node节点
的/var/log/pods目录中创建新的目录,可以区别不同的容器日志输出,该目录下有一个日志文件链接
到/var/lib/docker/contianers目录下的容器日志输出。

65、简述Kubernetes如何进行优雅的节点关机维护?
由于Kubernetes节点运行大量Pod,因此在进行关机维护之前,建议先使用kubectl drain将该节点的
Pod进行驱逐,然后进行关机维护。
相关推荐
Charles Ray2 分钟前
C++学习笔记 —— 内存分配 new
c++·笔记·学习
我要吐泡泡了哦1 小时前
GAMES104:15 游戏引擎的玩法系统基础-学习笔记
笔记·学习·游戏引擎
骑鱼过海的猫1231 小时前
【tomcat】tomcat学习笔记
笔记·学习·tomcat
贾saisai3 小时前
Xilinx系FPGA学习笔记(九)DDR3学习
笔记·学习·fpga开发
北岛寒沫3 小时前
JavaScript(JS)学习笔记 1(简单介绍 注释和输入输出语句 变量 数据类型 运算符 流程控制 数组)
javascript·笔记·学习
m0_741768855 小时前
使用docker的小例子
运维·docker·容器
铁匠匠匠5 小时前
从零开始学数据结构系列之第六章《排序简介》
c语言·数据结构·经验分享·笔记·学习·开源·课程设计
架构文摘JGWZ6 小时前
Java 23 的12 个新特性!!
java·开发语言·学习
小齿轮lsl6 小时前
PFC理论基础与Matlab仿真模型学习笔记(1)--PFC电路概述
笔记·学习·matlab
Aic山鱼7 小时前
【如何高效学习数据结构:构建编程的坚实基石】
数据结构·学习·算法