为了做好运维面试路上的助攻手,特整理了上百道 【运维技术栈面试题集锦】 ,让你面试不慌心不跳,高薪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行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
sh bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --group test-group
6. 添加客户端属性--consumer-property
这个参数也可以给客户端添加属性,但是注意 不能多个地方配置同一个属性,他们是互斥的;比如在下面的基础上还加上属性--group test-group
那肯定不行
sh bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test
--consumer-property group.id=test-consumer-group
7. 添加客户端属性--consumer.config
跟--consumer-property
一样的性质,都是添加客户端的属性,不过这里是指定一个文件,把属性写在文件里面, --consumer-property
的优先级大于 --consumer.config
sh bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --consumer.config config/consumer.properties
| 参数 | 描述 | 例子 |
| — | — | — |
| --group
| 指定消费者所属组的ID | |
| --topic
| 被消费的topic | |
| --partition
| 指定分区 ;除非指定–offset
,否则从分区结束(latest)开始消费 | --partition 0
|
| --offset
| 执行消费的起始offset位置 ;默认值: latest; /latest /earliest /偏移量 | --offset
10 |
| --whitelist
| 正则表达式匹配topic;--topic
就不用指定了; 匹配到的所有topic都会消费; 当然用了这个参数,--partition
--offset
等就不能使用了 | |
| --consumer-property
| 将用户定义的属性以key=value的形式传递给使用者 | --consumer-property
group.id=test-consumer-group |
| --consumer.config
| 消费者配置属性文件请注意,[consumer-property
]优先于此配置 | --consumer.config
config/consumer.properties |
| --property
| 初始化消息格式化程序的属性 | print.timestamp=true,false 、print.key=true,false 、print.value=true,false 、key.separator=<key.separator> 、line.separator=<line.separator>、key.deserializer=<key.deserializer>、value.deserializer=<value.deserializer> |
| --from-beginning
| 从存在的最早消息开始,而不是从最新消息开始,注意如果配置了客户端名称并且之前消费过,那就不会从头消费了 | |
| --max-messages
| 消费的最大数据量,若不指定,则持续消费下去 | --max-messages
100 |
| --skip-message-on-error
| 如果处理消息时出错,请跳过它而不是暂停 | |
| --isolation-level
| 设置为read_committed以过滤掉未提交的事务性消息,设置为read_uncommitted以读取所有消息,默认值:read_uncommitted | |
| --formatter
| kafka.tools.DefaultMessageFormatter、kafka.tools.LoggingMessageFormatter、kafka.tools.NoOpMessageFormatter、kafka.tools.ChecksumMessageFormatter | |
6.kafka-leader-election Leader重新选举
6.1 指定Topic指定分区用重新PREFERRED:优先副本策略
进行Leader重选举
sh bin/kafka-leader-election.sh --bootstrap-server xxxx:9090 --topic test_create_topic4 --election-type PREFERRED --partition 0
6.2 所有Topic所有分区用重新PREFERRED:优先副本策略
进行Leader重选举
sh bin/kafka-leader-election.sh --bootstrap-server xxxx:9090 --election-type preferred --all-topic-partitions
6.3 设置配置文件批量指定topic和分区进行Leader重选举
先配置leader-election.json文件
{
“partitions”: [
{
“topic”: “test_create_topic4”,
“partition”: 1
},
{
“topic”: “test_create_topic4”,
“partition”: 2
}
]
}
sh bin/kafka-leader-election.sh --bootstrap-server xxx:9090 --election-type preferred --path-to-json-file config/leader-election.json
相关可选参数
| 参数 | 描述 | 例子 |
| — | — | — |
| --bootstrap-server
指定kafka服务 | 指定连接到的kafka服务 | –bootstrap-server localhost:9092 |
| --topic
| 指定Topic,此参数跟--all-topic-partitions
和path-to-json-file
三者互斥 | |
| --partition
| 指定分区,跟--topic
搭配使用 | |
| --election-type
| 两个选举策略(PREFERRED:
优先副本选举,如果第一个副本不在线的话会失败;UNCLEAN
: 策略) | |
| --all-topic-partitions
| 所有topic所有分区执行Leader重选举; 此参数跟--topic
和path-to-json-file
三者互斥 | |
| --path-