为了做好运维面试路上的助攻手,特整理了上百道 【运维技术栈面试题集锦】 ,让你面试不慌心不跳,高薪offer怀里抱!
这次整理的面试题,小到shell、MySQL,大到K8s等云原生技术栈,不仅适合运维新人入行面试需要,还适用于想提升进阶跳槽加薪的运维朋友。
本份面试集锦涵盖了
- 174 道运维工程师面试题
- 128道k8s面试题
- 108道shell脚本面试题
- 200道Linux面试题
- 51道docker面试题
- 35道Jenkis面试题
- 78道MongoDB面试题
- 17道ansible面试题
- 60道dubbo面试题
- 53道kafka面试
- 18道mysql面试题
- 40道nginx面试题
- 77道redis面试题
- 28道zookeeper
总计 1000+ 道面试题, 内容 又全含金量又高
- 174道运维工程师面试题
1、什么是运维?
2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?
3、现在给你三百台服务器,你怎么对他们进行管理?
4、简述raid0 raid1raid5二种工作模式的工作原理及特点
5、LVS、Nginx、HAproxy有什么区别?工作中你怎么选择?
6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?
7、Tomcat和Resin有什么区别,工作中你怎么选择?
8、什么是中间件?什么是jdk?
9、讲述一下Tomcat8005、8009、8080三个端口的含义?
10、什么叫CDN?
11、什么叫网站灰度发布?
12、简述DNS进行域名解析的过程?
13、RabbitMQ是什么东西?
14、讲一下Keepalived的工作原理?
15、讲述一下LVS三种模式的工作过程?
16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?
17、如何重置mysql root密码?
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
- iis:Windows服务器自带的中间件
- nginx:支持跨平台,可以运行在各种系统,Windows/linux/unix…
- apache:支持跨平台,可以运行在各种系统,Windows/linux/unix…
- Tomcat:支持跨平台,可以运行在各种系统,Windows/linux/unix…
注意:一般情况下,中间件程序占用的端口是80
1.3 两种常见的web应用程序架构:
lamp:Linux、apache、mysql、php
lnmp:Linux、nginx、mysql、php
1.4 http协议
http协议:Hyper Text Transfor Protocol
作用:让用户通过浏览器发送请求到服务器端,并且接收客户端返回过来的数据,最后在浏览器展示出来
1.4.1 http请求报文格式:
格式:
第一行: 请求行 第二行~空白行: 请求头 空白行下面: 请求体
案例:
GET /download/a.html HTTP/1.1 Host: www.baidu.com Connection: close sec-ch-ua: "Chromium";v="122", "Not(A:Brand";v="24", "Google Chrome";v="122" sec-ch-ua-mobile: ?0 sec-ch-ua-platform: "Windows" Upgrade-Insecure-Requests: 1 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) Ap0.0.0 Safari/537.36 Sec-Purpose: prefetch;prerender Purpose: prefetch Accept: text/html,application/xhtml+xml,application/xml;q=0.9,i=0.8,application/signedexchange;v=b3;q=0.7 Sec-Fetch-Site: none 注意:这是GET传参,GET传参是没有请求体的,请求体和请求头结合了
请求行的格式:
第一部分: 请求方法:GET/POST 第二部分: 请求的URL 第三部分: 客户端使用的HTTP协议版本号 http 0.9 http 1.0 http 1.1
请求头的内容:
Host: 指定目标网站的域名或IP地址 Connection: 当前客户端的链接状态 User-Agent: 指定客户端访问网站的时候使用的浏览器 Referer: 表示当前这个请求是直接访问过来的,还是从其他的网站跳转过来的
1.4.2 http响应报文格式:
格式:
第一行: 响应行 第二行~空白行: 响应头 空白行下面: 响应体
案例:
HTTP/1.1 / 200 OK Content-Security-Policy: frame-ancestors 'self' http Content-Type: text/html; charset=utf-8 Date: Fri, 29 Mar 2024 00:27:39 GMT Server: BWS/1.1 Traceid: 1711672059044989722616594963546741901591 X-Ua-Compatible: IE=Edge,chrome=1 X-Xss-Protection: 1;mode=block Connection: close Content-Length: 406827 <!DOCTYPE html><!--STATUS OK--><html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge,c
响应行的格式:
第一部分: http协议版本号 第二部分: 客户端这次请求的状态码,这个状态码可以判断这次客户端的请求是成功的还是失败的 第三部分: 状态码对应的消息短语
状态码:
- 1xx
- 作用:提示信息
- 2xx
- 作用:表示客户端的本次请求是成功的
- 200
- 3xx
- 作用:表示客户端本次请求被重定向到了其他地址
- 301: 永久重定向
- 302:临时重定向
- 304:表示数据来自浏览器缓存
- 4xx
- 作用:表示客户端的本次请求是失败的【客户端原因】
- 403 forbidden
- 第一种可能:客户端所请求的文件,无权查看
- 第二种可能:客户端没有指定要访问哪个文件,于此同时服务器默认要展示给用户的文件不存在也会报403
- 404 not found:客户端所访问的页面不存在
- 5xx
- 作用:表示客户端的本次请求是成功的【服务器端原因】
- 500
- 501
- 502
浏览器开发者工具可以看到数据包的三种首部【按F12】
1.5 http协议的格式
http://域名:端口号/路径/文件名
二、部署Apache
第一步:配置yum源
略
第二步:安装Apache
yum install httpd -y
第三步:启动Apache
systemctl start httpd #启动服务
systemctl enable httpd #设置开机的时候自动启动
systemctl status httpd #查看服务当前状态
第四步:检查端口号
ss -tunal | group 80
lsof -i :80
第五步:关闭selinux #这是增强的安全配置,不好用
sed -i s/SELINUX=enforcing/SELINUX=disabled/g /etc/selinux/config #永久关闭
setenforce 0 #临时关闭
第六步:关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
第七步:同浏览器访问测试
- 在浏览器中输入Linux的IP就可以看到了
- 注意:必须保证物理机和虚拟机可以通信才能看到网页
访问失败:排查故障
第一步:检测网络是否通畅 ping
第二步:检查Apache的状态
systemctl status httpd
第三步:在xshell中输入
telnet ip 端口
第四步:换个ip访问
第五步:查看防火墙是否关闭
systemctl status firewalld
第八步:编辑apache的配置文件(修改Apache的网站根目录是/abcd)
vim /etc/httpd/conf/httpd.conf
第一步操作:修改默认DocumentRoot
注释掉原有的内容 #DocumentRoot “/var/www/html”
添加一个新的网站根目录 DocumentRoot “/abcd”
第二个操作:添加授权
第九步:重启Apache
systemctl restart httpd
注意:别忘了创建 /abcd 目录
第十步:安装组件,用于实现文件互传
yum install lrzsz -y
第十一步:上传网页文件
注意:
需要先切换到 /abcd 下,然后再进行拖拽文件
这是在Xshell中进行的
第十二步:通过浏览器访问
http://linuxIP/文件名
http://linuxIP/文件名
例如:http://192.168.63.199/a.html
第十三步:指定网站的默认首页
vim /etc/httpd/conf/httpd.conf
<IfModule dir_module>
DirectoryIndex index.html a.html
意思默认首页先找index.html ,如果找不到就找a.html
第十四步:重启httpd
systemctl restart httpd
第十五步:指定网站的域名
vim /etc/httpd/conf/httpd.conf
ServerName www.newjb.com
第十六步:重启httpd
systemctl restart httpd
为了做好运维面试路上的助攻手,特整理了上百道 【运维技术栈面试题集锦】 ,让你面试不慌心不跳,高薪offer怀里抱!
这次整理的面试题,小到shell、MySQL,大到K8s等云原生技术栈,不仅适合运维新人入行面试需要,还适用于想提升进阶跳槽加薪的运维朋友。
本份面试集锦涵盖了
- 174 道运维工程师面试题
- 128道k8s面试题
- 108道shell脚本面试题
- 200道Linux面试题
- 51道docker面试题
- 35道Jenkis面试题
- 78道MongoDB面试题
- 17道ansible面试题
- 60道dubbo面试题
- 53道kafka面试
- 18道mysql面试题
- 40道nginx面试题
- 77道redis面试题
- 28道zookeeper
总计 1000+ 道面试题, 内容 又全含金量又高
- 174道运维工程师面试题
1、什么是运维?
2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?
3、现在给你三百台服务器,你怎么对他们进行管理?
4、简述raid0 raid1raid5二种工作模式的工作原理及特点
5、LVS、Nginx、HAproxy有什么区别?工作中你怎么选择?
6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?
7、Tomcat和Resin有什么区别,工作中你怎么选择?
8、什么是中间件?什么是jdk?
9、讲述一下Tomcat8005、8009、8080三个端口的含义?
10、什么叫CDN?
11、什么叫网站灰度发布?
12、简述DNS进行域名解析的过程?
13、RabbitMQ是什么东西?
14、讲一下Keepalived的工作原理?
15、讲述一下LVS三种模式的工作过程?
16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?
17、如何重置mysql root密码?
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?
7、Tomcat和Resin有什么区别,工作中你怎么选择?
8、什么是中间件?什么是jdk?
9、讲述一下Tomcat8005、8009、8080三个端口的含义?
10、什么叫CDN?
11、什么叫网站灰度发布?
12、简述DNS进行域名解析的过程?
13、RabbitMQ是什么东西?
14、讲一下Keepalived的工作原理?
15、讲述一下LVS三种模式的工作过程?
16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?
17、如何重置mysql root密码?
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!