Linux面试题
1. 磁盘使用率检测(用shell脚本)
#!/bin/bash # 截取IP IP=`ifconfig eth0 |awk -F " " 'NR==2{print $2}'` # 定义使用率,并转换为数字 SPACE=`df -Ph |awk '{print int($5)}'` for i in $SPACE do if [ $i -ge 90 ] then echo "$IP的磁盘使用率已经超过了90%,请及时处理" fi done
2. LVS 负载均衡有哪些策略?
LVS一共有三种工作模式: DR,Tunnel, NAT
3. 谈谈你对LVS的理解?
LVS是一个虚拟的服务器集群系统,在unix系统下实现负载均衡的功能;采用IP负载均衡技术和机遇内容 请求分发技术来实现。 LVS采用三层结构,
分别是:
第一层: 负载调度器
第二层:服务池
第三层:共享存储
- 负载调度器(load balancer/ Director),是整个集群的总代理,它有两个网卡,一个网卡面对访问网 站的客户端,一个网卡面对整个集群的内部。负责将客户端的请求发送到一组服务器上执行,而客户也 认为服务是来自这台主的。举个生动的例子,集群是个公司,负载调度器就是在外接揽生意,将接揽到 的生意分发给后台的真正干活的真正的主机们。当然需要将活按照一定的算法分发下去,让大家都公平 的干活。
- 服务器池(server pool/ Realserver),是一组真正执行客户请求的服务器,可以当做WEB服务器。就 是上面例子中的小员工。
- 共享存储(shared storage),它为服务器池提供一个共享的存储区,这样很容易使得服务器池拥有相 同的内容,提供相同的服务。一个公司得有一个后台账目吧,这才能协调。不然客户把钱付给了A,而 换B接待客户,因为没有相同的账目。B说客户没付钱,那这样就不是客户体验度的问题了。
4. 负载均衡的原理是什么?
当客户端发起请求时,请求直接发给Director Server(调度器),这时会根据设定的调度算法,将请求 按照算法的规定智能的分发到真正的后台服务器。以达到将压力均摊。
但是我们知道,http的连接是无状态的,假设这样一个场景,我登录某宝买东西,当我看上某款商品时,我将它加入购物车,但是我刷新了一下页面,这时由于负载均衡的原因,调度器又选了新的一台服务器为我提供服务,我刚才的购物车内容全都不见了,这样就会有十分差的用户体验。 所以就还需要一个存储共享,这样就保证了用户请求的数据是一样。
5. LVS由哪两部分组成的?
LVS 由2部分程序组成,包括 ipvs 和 ipvsadm。 1.ipvs(ip virtual server):一段代码工作在内核空间,叫ipvs,是真正生效实现调度的代码。 2. ipvsadm:另外一段是工作在用户空间,叫ipvsadm,