为了做好运维面试路上的助攻手,特整理了上百道 【运维技术栈面试题集锦】 ,让你面试不慌心不跳,高薪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行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
输出:选择您的存储库,导出您的数据
• 尽管 Elasticsearch 是我们的首选输出方向,能够为我们的搜索
和分析带来无限可能,但它并非唯一选择。
• Logstash 提供众多输出选择,您可以将数据发送到您要指定的地
方,并且能够灵活地解锁众多下游用例。
Logstash安装与配置
软件下载
https://elasticsearch.cn/download/
logstash安装
[root@server5 ~]# rpm -ivh jdk-8u181-linux-x64.rpm
[root@server5 ~]# rpm -ivh logstash-7.6.1.rpm
加到环境变量
[root@server5 ~]# vim .bash_profile
[root@server5 ~]# source .bash_profile
标准输入到标准输出
[root@server5 ~]# logstash -e 'input { stdin { } } output { stdout {} }'
file输出插件
[root@server5 ~]# vim /etc/logstash/conf.d/file.conf
input {
stdin { }
}
output {
file {
path => "/tmp/logstash.txt" # 输出的文件路径
codec => line { format => "custom format: %{message}"} # 定制数据格式
}
stdout { }
}
[root@server5 ~]# logstash -f /etc/logstash/conf.d/file.conf #指定配置文件运行
在标准输入中键入"hello world"后可以查看
[root@server5 ~]# cat /tmp/logstash.txt
custom format: hello world
标准文件输入日志文件
[root@server5 ~]# vim /etc/logstash/conf.d/file.conf
input {
file {
path => "/var/log/messages"
start_position => "beginning"
}
}
output {
#file {
# path => "/tmp/logstash.txt"
# codec => line { format => "custom format: %{message}"}
#}
stdout { }
}
[root@server5 ~]# logstash -f /etc/logstash/conf.d/file.conf
logstash如何区分设备、文件名、文件的不同版本
logstash会把进度保存到sincedb文件中
# find / -name .sincedb*
/usr/share/logstash/data/plugins/inputs/file/.sincedb_452905a167cf4509fd08acb964fdb20c
# cd /usr/share/logstash/data/plugins/inputs/file/
[root@server5 file]# l.
. .. .sincedb_452905a167cf4509fd08acb964fdb20
[root@server5 file]# cat .sincedb_452905a167cf4509fd08acb964fdb20c
51010973 0 64768 58744 1615282030.717793 /var/log/messages
sincedb文件内容解释
[root@server5 file]# cat .sincedb_452905a167cf4509fd08acb964fdb20c
51010973 0 64768 58744 1615282030.717793 /var/log/messages
sincedb文件一共6个字段
- inode编号
- 文件系统的主要设备号
- 文件系统的次要设备号
- 文件中的当前字节偏移量
- 最后一个活动时间戳(浮点数)
- 与此记录匹配的最后一个已知路径
在运行时,只显示最新的日志,不显示之前的。
Syslog插件
root@server5 ~]# cd /etc/logstash/conf.d/
[root@server5 conf.d]# vim file.conf
input {
file {
path => "/var/log/messages"
start_position => "beginning"
}
}
output {
#file {
# path => "/tmp/logstash.txt"
# codec => line { format => "custom format: %{message}"}
#}
elasticsearch {
hosts => ["172.25.3.1:9200"]
index => "syslog-%{+yyyy.MM.dd}"
}
stdout { }
}
[root@server5 conf.d]# logstash -f file.conf
命令行输出结果:
[root@server5 conf.d]# cat file.conf
input {
#file {
#path => "/var/log/messages"
#start_position => "beginning"
syslog {}
#}
}
output {
#file {
# path => "/tmp/logstash.txt"
# codec => line { format => "custom format: %{message}"}
#}
elasticsearch {
hosts => ["172.25.3.1:9200"]
index => "message-%{+yyyy.MM.dd}"
}
stdout { }
}
[root@server5 conf.d]# logstash -f file.conf
[root@server4 ~]# vim /etc/rsyslog.conf
*.* @@172.25.3.5:514
[root@server4 ~]# systemctl restart rsyslog.service
默认会开启514端口
多行过滤插件
多行过滤可以把多行日志记录合并为一行事件
[root@server5 conf.d]# cat demo.conf
input {
stdin {
codec => multiline {
pattern => "^EOF"
negate => "true"
what => "previous"
}
}
}
output {
stdout {}
}
[root@server5 conf.d]# logstash -f demo.conf
[root@server4 ~]# cd /var/log/elasticsearch/
[root@server4 elasticsearch]# scp my-es.log server5:/var/log/
[root@server5 conf.d]# vim file.conf
input {
file {
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**[需要这份系统化的资料的朋友,可以点击这里获取!](https://bbs.csdn.net/topics/618635766)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
]# scp my-es.log server5:/var/log/
[root@server5 conf.d]# vim file.conf
input {
file {
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**[需要这份系统化的资料的朋友,可以点击这里获取!](https://bbs.csdn.net/topics/618635766)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**