月薪30K的运维工程师面试宝典(面试必备干货)
简述 ETCD 及其特点?
- 简单:支持 REST 风格的 HTTP+JSON API
- 安全:支持 HTTPS 方式的访问
- 快速:支持并发 1k/s 的写操作
- 可靠:支持分布式结构,基于 Raft 的一致性算法,Raft 是一套通过选举主节点来实现分布式系统一致性的算法。
简述 ETCD 适应的场景?
简述 HAProxy 及其特性?
- 可靠性和稳定性非常好,可以与硬件级的 F5 负载均衡设备相媲美;
- 最高可以同时维护 40000-50000 个并发连接,单位时间内处理的最大请求数为 20000 个,最大处
- 理能力可达 10Git/s;
- 支持多达 8 种负载均衡算法,同时也支持会话保持;
- 支持虚机主机功能,从而实现 web 负载均衡更加灵活;
- 支持连接拒绝、全透明代理等独特的功能;
- 拥有强大的 ACL 支持,用于访问控制;
- 其独特的弹性二叉树数据结构,使数据结构的复杂性上升到了 0(1),即数据的查寻速度不会随着数据条目的增加而速度有所下降;
- 支持客户端的 keepalive 功能,减少客户端与 haproxy 的多次三次握手导致资源浪费,让多个请求在一个 tcp 连接中完成;
- 支持 TCP 加速,零复制功能,类似于 mmap 机制;
- 支持响应池(response buffffering);
- 支持 RDP 协议;
- 基于源的粘性,类似 nginx 的 ip_hash 功能,把来自同一客户端的请求在一定时间内始终调度到上游的同一服务器;
- 更好统计数据接口,其 web 接口显示后端集群中各个服务器的接收、发送、拒绝、错误等数据的统计信息;
- 详细的健康状态检测, web 接口中有关于对上游服务器的健康检测状态,并提供了一定的管理功能;
- 基于流量的健康评估机制;
- 基于 http 认证;
- 基于命令行的管理接口;
- 日志分析器,可对日志进行分析。
简述 HAProxy 常见的负载均衡策略?
- roundrobin:表示简单的轮询。
- static-rr:表示根据权重。
- leastconn:表示最少连接者先处理。
- source:表示根据请求的源 IP,类似 Nginx 的 IP_hash 机制。
- ri:表示根据请求的 URI。
- rl_param:表示根据 HTTP 请求头来锁定每一次 HTTP 请求。
- rdp-cookie(name):表示根据据 cookie(name)来锁定并哈希每一次 TCP 请求。
简述负载均衡四层和七层的区别?
简述 LVS、Nginx、HAproxy 的什么异同?
相同:三者都是软件负载均衡产品。
- LVS 基于 Linux 操作系统实现软负载均衡,而 HAProxy 和 Nginx 是基于第三方应用实现的软负载均衡;
- LVS 是可实现 4 层的 IP 负载均衡技术,无法实现基于目录、URL 的转发。而 HAProxy 和 Nginx
- 都可以实现 4 层和 7 层技术,HAProxy 可提供 TCP 和 HTTP 应用的负载均衡综合解决方案;
- LVS 因为工作在 ISO 模型的第四层,其状态监测功能单一,而 HAProxy 在状监测方面功能更丰富、强大,可支持端口、URL、脚本等多种状态检测方式;
- HAProxy 功能强大,但整体性能低于 4 层模式的 LVS 负载均衡。
- Nginx 主要用于 Web 服务器或缓存服务器。
简述 Heartbeat?
简述 Keepalived 及其工作原理?
简述 Keepalived 体系主要模块及其作用?
- core 模块 为 keepalived 的核心,负责主进程的启动、维护及全局配置文件的加载和解析。
- vrrp 模块 是来实现 VRRP 协议的。
- check 负责健康检查,常见的方式有端口检查及 URL 检查。
简述 Keepalived 如何通过健康检查来保证高可用?
- 网络层 ,Keepalived 采用 ICMP 协议向服务器集群中的每个节点发送一个 ICMP 的数据包,如果某个节点没有返回响应数据包,则认为此节点发生了故障,Keepalived 将报告次节点失效,并从服务器集群中剔除故障节点。
- 传输层 ,Keepalived 利用 TCP 的端口连接和扫描技术来判断集群节点是否正常。如常见的 web服务默认端口 80,ssh 默认端口 22 等。Keepalived 一旦在传输层探测到相应端口没用响应数据返回,则认为此端口发生异常,从而将此端口对应的节点从服务器集群中剔除。
- 应用层 ,可以运行 FTP、telnet、smtp、dns 等各种不同类型的高层协议,Keepalived 的运行方式也更加全面化和复杂化,用户可以通过自定义 Keepalived 的工作方式,来设定监测各种程序或服务是否正常,若监测结果与设定的正常结果不一致,将此服务对应的节点从服务器集群中剔除。
简述 LVS 的概念及其作用?
- 把单台计算机无法承受的大规模的并发访问或数据流量分担到多台节点设备上分别处理,减少用户等待响应的时间,提升用户体验。
- 单个重负载的运算分担到多台节点设备上做并行处理,每个节点设备处理结束后,将结果汇总,返回给用户,系统处理能力得到大幅度提高。
- 7*24 小时的服务保证,任意一个或多个设备节点设备宕机,不能影响到业务。在负载均衡集群中,所有计算机节点都应该提供相同的服务,集群负载均衡获取所有对该服务的如站请求。
简述 LVS 的工作模式及其工作过程?
NAT 模式(VS-NAT)
- 原理 :首先负载均衡器接收到客户的请求数据包时,根据调度算法决定将请求发送给哪个后端的真实服务器(RS)。然后负载均衡器就把客户端发送的请求数据包的目标 IP 地址及端口改成后端真实服务器的 IP 地址(RIP)。真实服务器响应完请求后,查看默认路由,把响应后的数据包发送给负载均衡器,负载均衡器在接收到响应包后,把包的源地址改成虚拟地址(VIP)然后发送回给客户端。
- 优点 :集群中的服务器可以使用任何支持 TCP/IP 的操作系统,只要负载均衡器有一个合法的 IP 地址。
- 缺点 :扩展性有限,当服务器节点增长过多时,由于所有的请求和应答都需要经过负载均衡器,因此负载均衡器将成为整个系统的瓶颈。
IP 隧道模式(VS-TUN)
- 原理 :首先负载均衡器接收到客户的请求数据包时,根据调度算法决定将请求发送给哪个后端的真实服务器(RS)。然后负载均衡器就把客户端发送的请求报文封装一层 IP 隧道(T-IP)转发到真实服务器(RS)。真实服务器响应完请求后,查看默认路由,把响应后的数据包直接发送给客户端,不需要经过负载均衡器。
- 优点 :负载均衡器只负责将请求包分发给后端节点服务器,而 RS 将应答包直接发给用户。所以, 减少了负载均衡器的大量数据流动,负载均衡器不再是系统的瓶颈,也能处理很巨大的请求量。
- 缺点 :隧道模式的 RS 节点需要合法 IP,这种方式需要所有的服务器支持“IP Tunneling”。
直接路由模式(VS-DR)
- 原理 :首先负载均衡器接收到客户的请求数据包时,根据调度算法决定将请求发送给哪个后端的真实服务器(RS)。然后负载均衡器就把客户端发送的请求数据包的目标 MAC 地址改成后端真实服务器的 MAC 地址(R-MAC)。真实服务器响应完请求后,查看默认路由,把响应后的数据包直接发送给客户端,不需要经过负载均衡器。
- 优点 :负载均衡器只负责将请求包分发给后端节点服务器,而 RS 将应答包直接发给用户。所以,减少了负载均衡器的大量数据流动,负载均衡器不再是系统的瓶颈,也能处理很巨大的请求量。
- 缺点 :需要负载均衡器与真实服务器 RS 都有一块网卡连接到同一物理网段上,必须在同一个局域网环境
简述 LVS 调度器常见算法(均衡策略)?
固定调度算法:rr,wrr,dh,sh
- rr:轮询算法,将请求依次分配给不同的 rs 节点,即 RS 节点中均摊分配。适合于 RS 所有节点处理性能接近的情况。
- wrr:加权轮训调度,依据不同 RS 的权值分配任务。权值较高的 RS 将优先获得任务,并且分配到的连接数将比权值低的 RS 更多。相同权值的 RS 得到相同数目的连接数。
- dh:目的地址哈希调度(destination hashing)以目的地址为关键字查找一个静态 hash 表来获得所需 RS。
- sh:源地址哈希调度(source hashing)以源地址为关键字查找一个静态 hash 表来获得需要的RS。
动态调度算法:wlc,lc,lblc,lblcr
- wlc:加权最小连接数调度,假设各台 RS 的权值依次为 Wi,当前 tcp 连接数依次为 Ti,依次去Ti/Wi 为最小的 RS 作为下一个分配的 RS。
- lc:最小连接数调度(least-connection),IPVS 表存储了所有活动的连接。LB 会比较将连接请求发送到当前连接最少的 RS。
- lblc:基于地址的最小连接数调度(locality-based least-connection):将来自同一个目的地址的请求分配给同一台 RS,此时这台服务器是尚未满负荷的。否则就将这个请求分配给连接数最小的RS,并以它作为下一次分配的首先考虑。
简述 LVS、Nginx、HAProxy 各自优缺点?
简述代理服务器的概念及其作用?
简述高可用集群可通过哪两个维度衡量高可用性,各自含义是什么?
简述什么是 CAP 理论?
简述什么是 ACID 理论?
简述什么是 Kubernetes?
简述 Kubernetes 和 Docker 的关系?
简述 Kubernetes 中什么是 Minikube、Kubectl、Kubelet?
简述 Kubernetes 常见的部署方式?
简述 Kubernetes 如何实现集群管理?
简述 Kubernetes 的优势、适应场景及其特点?
简述 Kubernetes 的缺点或当前的不足之处?
简述 Kubernetes 相关基础概念?
简述 Kubernetes 集群相关组件?
简述 Kubernetes RC 的机制?
简述 Kubernetes Replica Set 和 Replication Controller 之间有什么区别?
简述 kube-proxy 作用?
简述 kube-proxy iptables 原理?
简述 kube-proxy ipvs 原理?
简述 kube-proxy ipvs 和 iptables 的异同?
简述 Kubernetes 中什么是静态 Pod?
简述 Kubernetes 中 Pod 可能位于的状态?
简述 Kubernetes 创建一个 Pod 的主要流程?
简述 Kubernetes 中 Pod 的重启策略?
简述 Kubernetes 中 Pod 的健康检查方式?
简述 Kubernetes Pod 的 LivenessProbe 探针的常见方式?
简述 Kubernetes Pod 的常见调度方式?
简述 Kubernetes 初始化容器(init container)?
简述 Kubernetes deployment 升级过程?
简述 Kubernetes deployment 升级策略?
简述 Kubernetes DaemonSet 类型的资源特性?
简述 Kubernetes 自动扩容机制?
简述 Kubernetes Service 类型?
简述 Kubernetes Service 分发后端的策略?
简述 Kubernetes Headless Service?
简述 Kubernetes 外部如何访问集群内的服务?
简述 Kubernetes ingress?
简述 Kubernetes 镜像的下载策略?
简述 Kubernetes 的负载均衡器?
简述 Kubernetes 各模块如何与 API Server 通信?
简述 Kubernetes Scheduler 作用及实现原理?
简述 Kubernetes Scheduler 使用哪两种算法将 Pod 绑定到worker 节点?
简述 Kubernetes kubelet 的作用?
简述 Kubernetes kubelet 监控 Worker 节点资源是使用什么组件来实现的?
简述 Kubernetes 如何保证集群的安全性?
简述 Kubernetes 准入机制?
简述 Kubernetes RBAC 及其特点(优势)?
简述 Kubernetes Secret 作用?
简述 Kubernetes Secret 有哪些使用方式?
简述 Kubernetes PodSecurityPolicy 机制?
简述 Kubernetes PodSecurityPolicy 机制能实现哪些安全策略?
简述 Kubernetes 网络模型?
简述 Kubernetes CNI 模型?
简述 Kubernetes 网络策略?
简述 Kubernetes 网络策略原理?
简述 Kubernetes 中 flflannel 的作用?
简述 Kubernetes Calico 网络组件实现原理?
简述 Kubernetes 共享存储的作用?
简述 Kubernetes 数据持久化的方式有哪些?
简述 Kubernetes PV 和 PVC?
简述 Kubernetes PV 生命周期内的阶段?
简述 Kubernetes 所支持的存储供应模式?
简述 Kubernetes CSI 模型?
简述 Kubernetes Worker 节点加入集群的过程?
简述 Kubernetes Pod 如何实现对节点的资源控制?
简述 Kubernetes Requests 和 Limits 如何影响 Pod 的调度?
简述 Kubernetes Metric Service?
简述 Kubernetes 中,如何使用 EFK 实现日志的统一管理?
简述 Kubernetes 如何进行优雅的节点关机维护?
简述 Kubernetes 集群联邦?
简述 Helm 及其优势?
简述 OpenShift 及其特性?
简述 OpenShift projects 及其作用?
简述 OpenShift 高可用的实现?
简述 OpenShift 的 SDN 网络实现?
简述 OpenShift 角色及其作用?
简述 OpenShift 支持哪些身份验证?
简述什么是中间件?
整个面试题博主已经整理成了PDF版,有需要的小伙伴可以私信博主!
学习更多编程知识与技巧,关注与私信博主(学习)!
热爱学习和渴望进阶的小伙伴,学习路线、笔记、面试题,免费分享!
月薪30K的运维工程师面试宝典(面试必备干货)相关推荐
- 月薪30K的运维工程师面试宝典(含答案)
同岗不同薪并不完全稀奇,无论是在同一家企业还是同一领域的不同企业,同一岗位的薪资待遇都会有所差距,谁都不想当底薪的那一个,所以要做就做最好的. 因此,运维想要拿高薪,冲击大厂是最直接的方法.今天就给各 ...
- linux面试宝典 pdf,运维工程师面试题(面试版).pdf
运维工程师面试题(面试版) Linux 高级运维工程师笔试题 (面试版) 一.选择题(每题 2 分,共 40 分): 1.如果你的umask 设置为 022,缺省的你创建的文件的权限为( ) A. w ...
- 亚马逊---【运维工程师】实习生面试心得
8月12日18:45开始------历时43分半------亚马逊运维工程师岗位电话面试 面试官感觉很腼腆,问的大都是知识块,涉及到了Cisco网络与交换,Linux系统.首先进行自我介绍,紧接着进入 ...
- 运维工程师的职责和必备技能
运维工程师的职责: 1.服务器的配置,维护,监控,调优,故障排除等: 2. 大用户量下高性能服务器系统部署方案的制定及实施: 3. 保障服务器与数据库安全,检查并消除安全漏洞: 4. 数据备份.数据监 ...
- 运维工程师岗位-面试问答
一.前言 最近参加运维工程师岗位的面试,笔者把自己遇到的和网友分享的一些常见的面试问答收集整理出来了,希望能对自己和对正在准备面试的同学提供一些参考. 二.面试问答 1.介绍下自己?(几乎每家公司首先 ...
- 【运维工程师必备技能之一】——英语基础
提示:运维工作多年,提示想入门小白必备技能分享 文章目录 前言 一.什么是运维工程师? 二.必备基础--英语 1.为什么做运维需要英语基础 总结 前言 运维工程师(Operations)以服务为本,岗 ...
- 小米科技-运维工程师-面试经验
小米面经一(运维工程师) 小米笔试好像是19笔试,在谈面试之前,我先给大家说一下小米笔试的笔试题有哪些吧.小米运维也有编程题的,刚开始我以为没有编程题,后来一座笔试,心都凉了,三道编程题呀.第一题是判 ...
- 总结一下:运维工程师面试的经历及面试相关问题
2018年1月4号面试 笔者其实没有想到去面试,只是在智联上更新了一下简历,就陆陆续续接到很多猎头的邮件和电话,实在是没准备好要去面试,就推掉了几家公司的面试了.正因为笔者也很久没有面试了,笔 ...
- python运维工程师面试题_新浪软件测试面试题-Linux运维工程师面试真题
新浪软件测试面试题-Linux运维工程师面试真题 作为Linux运维工程师,进入大公司是开启职业新起点的关键,今天特别分享了其在新浪面试Linux运维及云计算工程师的题目和经历,希望对广大Linux运 ...
最新文章
- [导入]DotNet软件开发框架
- winform npoi excel 样式设置
- wine运行bat文件
- jq如何获取选中option的值_【分享】如何获取变量token的值
- 使用HTML5创建和播放声音
- js 定时器_Node.js实战6:定时器,使用timer延迟执行
- 电脑桌面点任何文件都打开计算机,小编教你电脑开机自动打开文件夹怎么解决...
- 《程序员修炼之道》---- 修的是什么
- Java查询Mysql数据库时区问题(相差13/14)个小时
- 关于Excel表格的导入
- 燃气轮机发电系统matlab仿真模型,基于MATLAB的微型燃气轮机发电系统的建模及仿真.doc...
- QT Widget.cpp重新命名、报错“xxxx“ was not declared in this scope
- 为什么INT_MIN不是直接写成-2147483648
- Asp.net页面的生命周期之通俗理解
- 前端面试总结(vue篇)
- 联想笔记本电脑静音键常亮且电脑没有声音
- 如何插入数学的花体和空心体字母
- GJB 5000B二级-DEM立项论证
- 帝王师:刘伯温——读书笔记
- 柯乐义高级弹出菜单(可以有三级菜单)