一个运维主管面试题有答案
- 写出Linux实时查看日志变化的命令?
tail -f *.log
2.写出Linux输出查找到某一个服务(如Java相关的服务),是否运行的命令
ps -ef | grep tomcat
3.常用什么软件工具或服务做服务器服务监控,自动预警提醒
zabbix
4 自动化部署,自动化运维熟悉哪些?
自动化运维工具 熟悉jenkins 、salt 、gitlab
5.简单列出如何做容灾与恢复,保证数据安全?
容灾我们在异地也部署一套模拟真实环境,数据库每天进行全量备份,推送异地服务器上,以便于恢复使用
可以从三个层面入手:操作系统;应用系统;数据库;比较常用的是:应用系统和数据库层面的安全保障措施
操作系统的设置,防火墙使用
应用系统层次:比如密码设置不能使用明文、登录权限分配、
数据库层面:权限控制
6 公司是什么样的环境,Java的还是PHP
java php 都有
7 做过集群,MySQL主从之类的吗?
我们公司数据库架构
1主2从开启mha 高可用
或者1主2从 用mycat 开启1写2台负责读
8 源码用的是git还是SVN?
git
10 先做下自我介绍
面试管好,我叫xxx 毕业2年了,从事运维2年,有1分工作经历
公司日常做些:
内部测试环境使用虚拟化VMware vsphere搭建内网环境
服务器巡检
对系统层和业务层进行监控
优化系统和服务
平台架构调整优化
日常工作shell脚本和自动化运维脚本编写
测试环境使用jenkins+gitlab完成自动编译打包发布到应用
主要用到技术:nginx、tomcat、mysql、redis、zabbix 、docker
我现在擅长:服务器架构规划、mysql主从搭建维护、MHA高可用,myca读写分离配置,业务负载均衡配置
11 你在公司中主要负责那一部分
1.服务器巡检
2.环境搭建、和架构设计实施
3.监控完善,做到监控可视化和故障预警
4 运维变准化建立
5 运维流程制度完善
12 你最擅长的是哪一部分
我现在擅长myql优化、高并发架构、docker/k8s
13 你们公司做什么业务,有多少服务器,并发多少,怎么分工的,你负责多少服务器。
20台服务器 pv 200万 UV3万
14 你们的数据量多大,平时怎么备份的
现在500G 还是逻辑备份 准备使用 xbk备份
15 日志分析怎么做的,都关注哪些参数
EFK
16你们公司是统招吗,学信网可查吗
是
17 你们的操作系统是6还是7,内核多少
centos 7
18 LVS与nginx有什么区别,你们用的哪种,有几种模式,你们常用的模式说下工作原理
1)lvs的特点:
A. 抗负载能力强,因为lvs工作方式的逻辑是非常之简单,而且工作在网络4层仅做请求分发之用,没有流量,所以在效率上基本不需要太过考虑。在我手里的 lvs,仅仅出过一次问题:在并发最高的一小段时间内均衡器出现丢包现象,据分析为网络问题,即网卡或linux2.4内核的承载能力已到上限,内存和 cpu方面基本无消耗。
B. 配置性低,这通常是一大劣势,但同时也是一大优势,因为没有太多可配置的选项,所以除了增减服务器,并不需要经常去触碰它,大大减少了人为出错的几率。
C. 工作稳定,因为其本身抗负载能力很强,所以稳定性高也是顺理成章,另外各种lvs都有完整的双机热备方案,所以一点不用担心均衡器本身会出什么问题,节点出现故障的话,lvs会自动判别,所以系统整体是非常稳定的。
D. 无流量,上面已经有所提及了。lvs仅仅分发请求,而流量并不从它本身出去,所以可以利用它这点来做一些线路分流之用。没有流量同时也保住了均衡器的IO性能不会受到大流量的影响。
E. 基本上能支持所有应用,因为lvs工作在4层,所以它可以对几乎所有应用做负载均衡,包括http、数据库、聊天室等等。
另:lvs也不是完全能判别节点故障的,譬如在wlc分配方式下,集群里有一个节点没有配置VIP,会使整个集群不能使用,这时使用wrr分配方式则会丢掉一台机。目前这个问题还在进一步测试中。所以,用lvs也得多多当心为妙。
- Nginx的特点是:
A. 工作在网络的7层之上,可以针对http应用做一些分流的策略,比如针对域名、目录结构,它的正则规则比HAProxy更为强大和灵活,这也是它目前广泛流行的主要原因之一,Nginx单凭这点可利用的场合就远多于LVS了。
B. Nginx对网络稳定性的依赖非常小,理论上能ping通就就能进行负载功能,这个也是它的优势之一;相反LVS对网络稳定性依赖比较大,这点本人深有体会;
C. Nginx安装和配置比较简单,测试起来比较方便,它基本能把错误用日志打印出来。LVS的配置、测试就要花比较长的时间了,LVS对网络依赖比较大。
D. 可以承担高负载压力且稳定,在硬件不差的情况下一般能支撑几万次的并发量,负载度比LVS相对小些。
E. Nginx可以通过端口检测到服务器内部的故障,比如根据服务器处理网页返回的状态码、超时等等,并且会把返回错误的请求重新提交到另一个节点,不过其中缺点就是不支持url来检测。比如用户正在上传一个文件,而处理该上传的节点刚好在上传过程中出现故障,Nginx会把上传切到另一台服务器重新处理,而LVS就直接断掉了,如果是上传一个很大的文件或者很重要的文件的话,用户可能会因此而不满。
F. Nginx不仅仅是一款优秀的负载均衡器/反向代理软件,它同时也是功能强大的Web应用服务器。LNMP也是近几年非常流行的web架构,在高流量的环境中稳定性也很好。
G. Nginx现在作为Web反向加速缓存越来越成熟了,速度比传统的Squid服务器更快,可以考虑用其作为反向代理加速器。
H. Nginx可作为中层反向代理使用,这一层面Nginx基本上无对手,唯一可以对比Nginx的就只有lighttpd了,不过lighttpd目前还没有做到Nginx完全的功能,配置也不那么清晰易读,社区资料也远远没Nginx活跃。
19 MySQL用的哪个版本,你们的数据库怎么备份,什么时间备份,备份数据量多大
用的5.7 逻辑备份 每天全量备份 500G
20 MySQL你都负责维护哪些内容
1.权限管理
2.mysql慢日常抓取协助开发分析
3.mysql优化
21 nginx调优,apache调优,怎么做的
A. worker_processes 8; nginx 进程数,建议按照cpu 数目来指定,一般为它的倍数 (如,2个四核的cpu计为8)。
B. worker_cpu_affinity 00000001 0000001000000100 00001000 00010000 00100000 01000000 10000000; 为每个进程分配cpu,上例中将8 个进程分配到8 个cpu,当然可以写多个,或者将一个进程分配到多个cpu。
C. worker_rlimit_nofile 65535; 这个指令是指当一个nginx进程打开的最多文件描述符数目,理论值应该是最多打开文件数与进程数相除,现在在linux2.6内核下开启文件打开数为65535,worker_rlimit_nofile就相应应该填写65535。这是因为nginx调度时分配请求到进程并不是那么的均衡,所以假如填写10240,总并发量达到3-4万时就有进程可能超过10240了,这时会返回502错误。
D. useepoll;
使用epoll的I/O模型
E. Worker_connections 65535; 每个进程允许的最多连接数, 理论上每台nginx服务器的最大连接数为worker_processes*worker_connections。
F. keepalive_timeout 60; keepalive超时时间。
G. client_header_buffer_size 4k;客户端请求头部的缓冲区大小,这个可以根据你的系统分页大小来设置,一般一个请求头的大小不会超过1k,不过由于一般系统分页都要大于1k,所以这里设置为分页大小。
H. open_file_cachemax=65535 inactive=60s;这个将为打开文件指定缓存,默认是没有启用的,max指定缓存数量,建议和打开文件数一致,inactive是指经过多长时间文件没被请求后删除缓存。
I. Open_file_cache_valid 80s;这个是指多长时间检查一次缓存的有效信息。
J. open_file_cache_min_uses 1; open_file_cache 指令中的inactive参数时间内文件的最少使用次数,如果超过这个数字,文件描述符一直是在缓存中打开的,如上例,如果有一个文件在inactive时间内一次没被使用,它将被移除。
22 你们的监控用的啥,主要监控哪些参数,怎么增加模板,你自己写过哪些模板
zabbix
系统层 cpu、内存、硬盘、磁盘i/0
应用层:进程、mysql主从、web页面、mysql和tomcat性能监控
23 shell熟悉吗,写过哪些shell脚本,思路是啥
熟悉 写过mysql备份、故障探测自愈、自动化安装环境、批量建立站点、
24 Python熟悉吗
不熟悉
25 你们的代码上线怎么做的,你负责啥
26 自动化工具用过哪些,用过哪些模块
Salt 主要就是批量分发
27 docker在公司的应用是啥
跑java 应用
28 在工作中遇到过什么棘手的问题,怎么解决的,学到了啥
Tomcat 内存溢出
临时解决:写脚本实时探测如果发现内存快要溢出时候就重启tomcat
永久解决:分析原因,通过监控和分析日志,找到到底什么问题造成,我们当时经过分析是
有几个原因1 系统内核需要优化 2. tomcat需要优化 3 2台tomcat处理不过来 4 开发代码也有问题,最好借助消息队列使用MQ
29 你最熟悉的项目是哪个,什么时间做的,做了多久,几个人,你主要在项目当中负责啥
Gitlab +jenkins自动发布项目 我一个人
30 你工作三年最大的收获是什么
技术得到了实践,技能得到很大提高,沟通能力也得到提高
31 你离职原因是什么
2月以来,公司的业务受到了影响,尤其是今年6月之后,公司受影响最大,公司决定搬到成都去,我因为有亲戚在北京,所以想继续留在北京发展
32 你找工作最关注的是什么
我比较现实 能否成长和薪资
33 你是如何看待加班和出差的
工作没有完成可以接受加班,但是我会大大提高自己工作效率,尽力少加班,留多的时间陪家人
34 如果你入职了怎么开展工作
熟悉公司办公环境
熟悉公司服务器架构,并使用画图软件画出来
重新服务器信息资料和每个服务器都跑了什么服务整理
测试环境搭建生产环境项目测试
35 你还有什么想问我的
你们公司的系统应用架构是怎样的
有没有做过数据库升级,怎么做的
MySQL用的哪个版本,nginx哪个版本
如果网站出现500错误,你的解决思路是?
你在工作中遇到过什么问题
读写分离用的什么工具,原理是啥
MySQL主从原理是啥
DNS原理是啥
为什么来北京
你现在住在哪里
你上家薪资多少,期望薪资多少
你是如何接触并学习Linux的
你对未来有什么职业规划
你对出差怎么看的。
我网站也有面试题可以观看,欢迎大神在博客网站分享运维文章
https://www.jkkcss.cn
本文地址:https://blog.csdn.net/qq_39418469/article/details/107558156
推荐阅读