为了做好运维面试路上的助攻手,特整理了上百道 【运维技术栈面试题集锦】 ,让你面试不慌心不跳,高薪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行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!


SSL=/usr/local/ssl
_ssl _ssl.c
-DUSE_SSL -I ( S S L ) / i n c l u d e − I (SSL)/include -I (SSL)/includeI(SSL)/include/openssl
-L$(SSL)/lib -lssl -lcrypto


或者在 `shell` 命令提示符下执行如下命令:



sed -ri ‘s/^#readline/readline/’ Modules/Setup.dist
sed -ri ‘s/^#(SSL=)/\1/’ Modules/Setup.dist
sed -ri ‘s/^#(_ssl)/\1/’ Modules/Setup.dist
sed -ri ‘s/^#([\t]-DUSE)/\1/’ Modules/Setup.dist
sed -ri 's/^#([\t]
-L$(SSL))/\1/’ Modules/Setup.dist


**开始编译安装**



./configure --enable-shared --prefix=/usr/local/python3
make -j 2 && make install



> 
>  --enable-shared 指定安装共享库,共享库在使用其他需调用python的软件时会用到,比如使用 
>  `mod_wgsi` 连接Apache与python时需要。 
> 


#### 4、配置共享库文件


为所有用户设置共享库目录


用 vim 编辑器打开配置文件 `/etc/profile.d/python3.sh`



vim /etc/profile.d/python3.sh


在文件末尾写上如下内容:



python3.6 共享库目录

export PATH=$PATH:/usr/local/python3/bin


编辑文件 `/etc/ld.so.conf.d/python3.conf`,并且添加如下内容:



/usr/local/python3/lib


保存退出文件后, 执行如下命令 加载配置信息使其生效



ldconfig


执行如下命令,使环境变量生效



source /etc/profile.d/python3.sh


#### 5、测试python3



$ python3
Python 3.6.3 (default, Dec 17 2017, 04:11:01)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux
Type “help”, “copyright”, “credits” or “license” for more information.

print(‘qf’)
qf
exit()



> 
>  输入  
>  `exit()` 即可退出 python3 
> 


#### 6、测试 pip3



> 
>  一般情况下你不需要执行下面的安装命令。 
> 



[root@newrain ~]# pip3 -V
pip 9.0.3 from /usr/local/lib/python3.6/site-packages (python 3.6)



> 
>  假如上面显示的含有 python3.6 就没问题了,说名 pip3 安装的模块会安装到上面显示的目录下 
> 


**特殊问题**


假如 Python Shell 中敲击方向键显示「[[C[[D」 可以安装以下包



> 
>  一般情况下你不需要执行下面的安装命令。 
> 



pip3 install gnureadline


#### **2、 配置使用国内源安装第三方模块**


#### 1、创建配置文件


配置 pip3 使用国内源



mkdir ~/.pip
vi ~/.pip/pip.conf

Windows 下使用 pip.ini

(1):在windows文件管理器中,输入 %APPDATA%
(2):会定位到一个新的目录下,在该目录下新建pip文件夹,然后到pip文件夹里面去新建个pip.ini文件


写入如下内容:



[global]
timeout = 6000
index-url=https://mirrors.aliyun.com/pypi/simple



> 
> `豆瓣源: https://pypi.douban.com/simple/`
>   
> 
> `阿里源: https://mirrors.aliyun.com/pypi/simple`
>   
> 
> `清华: https://pypi.tuna.tsinghua.edu.cn/simple`
>   
> 
> `阿里云: http://mirrors.aliyun.com/pypi/simple/`
>   
> 
> `中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/`
>   
> 
> `华中理工大学: http://pypi.hustunique.com/`
>   
> 
> `山东理工大学: http://pypi.sdutlinux.org/`
> 


示例: 比如安装一个执行远程主机命令的模块



[root@newrain ~]# pip3 install gnureadline
Looking in indexes: https://mirrors.aliyun.com/pypi/simple
Collecting gnureadline
Downloading https://mirrors.aliyun.com/pypi/packages/2b/36/60b53a1793af9a60539b5ee6fed4f3702280bd5a88ab41600a51510002a1/gnureadline-8.0.0-cp37-cp37m-manylinux1_x86_64.whl (283kB)
100% |████████████████████████████████| 286kB 387kB/s
Installing collected packages: gnureadline
Successfully installed gnureadline-8.0.0
You are using pip version 19.0.3, however version 19.3.1 is available.
You should consider upgrading via the ‘pip install --upgrade pip’ command. # 最后两行为警告内容,无需理会


### **三、Windows 10 安装 Python3 和 pip3**


#### **1、下载Python3**


下载地址:[https://www.python.org/downloads/windows/](https://bbs.csdn.net/topics/618542503)


注意:window版本有32位和64位,这里我下载的是64位。如果自定义安装报错,使用默认安装install now即可



![](https://img-blog.csdnimg.cn/img_convert/0343bfa71bd0ac0322fcddd0f1fac5dd.png)



#### **2、安装Python3**


1、下载好安装包后双击安装出现下面的安装步骤:选择自定义安装,和自动添加到path环境变量中。



![](https://img-blog.csdnimg.cn/img_convert/348c93130d32102f5d5ad1fa43105904.png)




![](https://img-blog.csdnimg.cn/img_convert/f1772275736e532c23abf862a13a700a.png)




![](https://img-blog.csdnimg.cn/img_convert/2ecea4192f4e99ceb72f7fdf69e79f58.png)




![](https://img-blog.csdnimg.cn/img_convert/bacc4404d45934b368fea01d319ba1e9.png)




![](https://img-blog.csdnimg.cn/img_convert/d4c199c9e6764951fda7879e13889845.png)



2、如果忘记勾选环境变量,安装成功后,会自动添加到环境变量中,如下图



![](https://img-blog.csdnimg.cn/img_convert/cd172e0466bbd2c8e993c5081adde707.png)



在你的win10中查看表示安装成功。



![](https://img-blog.csdnimg.cn/img_convert/85134216bbed1ef29f08421410e51461.png)



#### **3、下载 pip3**


下载地址:[https://pypi.org/project/pip/#downloads](https://bbs.csdn.net/topics/618542503)


![preview](https://img-blog.csdnimg.cn/img_convert/9d158c5d3bc29bd4878f958698f07294.png)




#### **4、安装 pip3**


下载保存到python路径下且解压压缩包



![](https://img-blog.csdnimg.cn/img_convert/943d3ce4e6b972b999ea1a3678781461.png)



以管理员身份启动cmd。进入解压的文件路径,执行 python setup.py install



![](https://img-blog.csdnimg.cn/img_convert/257404b9232a150df6ba2d2949da3333.png)



安装完成后配置pip环境变量



![](https://img-blog.csdnimg.cn/img_convert/25a24d3252cf4b70d0ccab1a4dbd30b2.png)



输入pip list 出现如下界面说明pip安装配置ok



![](https://img-blog.csdnimg.cn/img_convert/390290fe2f6ba636a2265a99138db6c9.png)



### **四、Ipython 交互式解释器**


#### **1、Ipython 简介**


**IPython外加一个文本编辑器**


Windows系统下是IPython加notepad++,Linux系统下是IPython加vim配合使用,写起代码来体验很流畅,很容易获取到写代码时候的那种“流体验”。


IPython的设计目的是在交互式计算和软件开发这两个方面最大化地提高生产力,它鼓励一种“执行-探索”的工作模式,支持matplotlib等库的绘图操作。同时IPython还提供一个基于WEB的交互式浏览器开发环境(Jupyter Notebook),用起来也很不错。


#### **2、安装 Ipython**


#### 1、安装 python-devel


python-dev或python-devel称为是python的开发包,其中包括了一些用C/Java/C#等编写的python扩展在编译的时候依赖的头文件等信息。


比如:我们在编译一个用C语言编写的python扩展模块时,因为里面会有#include<Python.h>等这样的语句,因此我们就需要先安装python-devel开发包


执行以下命令安装即可(需要有 epel 源支持):



yum -y install python-devel


#### 2、安装 ipython



pip3 install ipython


#### 3、启动 ipython



[root@localhost ~]# ipython
Python 3.6.5 (default, Mar 6 2019, 06:36:12)
Type ‘copyright’, ‘credits’ or ‘license’ for more information
IPython 7.3.0 – An enhanced Interactive Python. Type ‘?’ for help.

In [1]:


#### 4、退出 ipython



[root@localhost ~]# ipython
Python 3.6.5 (default, Mar 6 2019, 06:36:12)
Type ‘copyright’, ‘credits’ or ‘license’ for more information
IPython 7.3.0 – An enhanced Interactive Python. Type ‘?’ for help.

In [1]: exit
[root@localhost ~]#


#### 5、使用 ipython



[root@localhost ~]# ipython
Python 3.6.5 (default, Mar 6 2019, 06:36:12)
Type ‘copyright’, ‘credits’ or ‘license’ for more informat
IPython 7.3.0 – An enhanced Interactive Python. Type ‘?’
#定义一个字符串
In [1]: str = “hello”
#tab显示字符串类型的方法
In [2]: str.
capitalize() encode() format()
casefold() endswith() format_map()
center() expandtabs() index()
count() find() isalnum()

[root@localhost ~]# ipython
Python 3.6.5 (default, Mar 6 2019, 06:36:12)
Type ‘copyright’, ‘credits’ or ‘license’ for more informat
IPython 7.3.0 – An enhanced Interactive Python. Type ‘?’

In [1]: str = “hello”

定义一个数字型

In [2]: int = 1

tab显示数字类型的方法

In [3]: int.
bit_length() from_bytes() real
conjugate() imag to_bytes()
denominator numerator

执行系统命令,加!是以变量的形式执行命令 In [4]: !pwd

/root

In [5]: pwd
Out[5]: ‘/root’

In [6]: cd /home/
/home

In [7]: pwd
Out[7]: ‘/home’

In [8]: ls

In [9]: ls /
bin@ etc/ lib64@ opt/ run/ sys/ var/
boot/ home/ media/ proc/ sbin@ tmp/
dev/ lib@ mnt/ root/ srv/ usr/

In [10]:




**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化的资料的朋友,可以点击这里获取!](https://bbs.csdn.net/topics/618542503)**

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**


In [8]: ls                                               

In [9]: ls /                                             
bin@   etc/   lib64@  opt/   run/   sys/  var/
boot/  home/  media/  proc/  sbin@  tmp/
dev/   lib@   mnt/    root/  srv/   usr/

In [10]:   

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以点击这里获取!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐