运维10道基础面试题
# 1.date命令获取昨天时间
date -d "yesterday" +"%Y-%m-%d"
# 2.nginx用过哪些模块?反向代理、负载均衡如何配置
反向代理、负载均衡
反向代理配置
server{
listen 80;
server_name www.baidu.com;
root /var/log/www;
location / {
proxy_pass htttp://localhost:8089;
}
}
负载均衡
upstream www.baidu.com {
ip_hash;
server 192.168.1.10:8080;
server 192.168.1.11:8081;
}
server{
listen 80;
server_name www.baidu.com;
location / {
proxy_pass http://www.baidu.com;
index index.html index.htm;
}
}
# 3.安装centos系统后会做哪些优化,请举例说明
修改ip地址、网关、主机名、DNS等
关闭selinux,清空iptables
添加普通用户并进行sudo授权管理
更新yum源及必要软件安装
定时自动更新服务器时间
精简开机自启动服务
定时自动清理/var/spool/clientmqueue/目录垃圾文件,放置inode节点被占满
变更默认的ssh服务端口,禁止root用户远程连接
锁定关键文件系统
调整文件描述符大小
调整字符集,使其支持中文
去除系统及内核版本登录前的屏幕显示
内核参数优化
# 4.某时刻流量超过阀值,该如何应对
1、不可预测流量(网站被恶意刷量;CDN回源抓取数据;合作业务平台调取平台数据等)
2、可预测流量(突然爆发的社会热点,营销活动的宣传;)
不管是可预测流量还是不可预测流量都会表现在带宽和网站整体架构的应对方案
如果由于带宽原因引起,由于网站的并发量太高,达到服务器的吞吐极限,导致服务器宕机,这时需要做临时申请加大带宽,然后负载均衡分流。
如果由于外网请求数据库,导致数据库频繁读写,数据库处理能力低,导致大量请求积压;如果是这种情况,就需要优化SQL,存储过程等,如果是请求过大,就要考虑做集群等。
可预测流量的暴增也会拖慢网页的打开速度,甚至导致网站服务器宕机。要应对正常流量暴增,在流量高峰期到来之前就可以适当的调整,一般针对应用服务器的调整可以防止单点,负载均衡,高可用,增加后端web应用服务器数量,数据库读写分离,拆库拆表等,防止流量暴增导致服务器挂掉
# 5.由于磁盘空间紧张现在要求只能保留最近7天的访问日志,请问如何解决?请给
出解决办法或者配置或处理命令
date=date +%Y_%m_%d
cp ./access.log ./bak/access_"$date".log
find ./bak/ -name *.log -type f -mtime +7 -exec rm {};
# 6.每天晚上12点,打包站点目录/var/www/html 备份到/data目录下
00 00 * * * /usr/bin/tar -zvcf /data/html.tar.gz /var/www/html
# 7.写一个脚本,实现判断192.168.1.0/24网络里,当前在线的ip有哪些,能ping通则认为在线
# #!/bin/bash
for ip in {1..255}
do
ping -c3 192.168.1.$ip
if [ $? -ne 0 ]
then echo "the host is 192.168.1.$ip up" >> ./up.list
else echo "the host is 192.168.1.$ip down" >> ./down.list
fi
done
或者
yum install nmap -y
nmap -sP 192.168.1.0/24 > ./upip
# 8.统计出nginx的access.log中每个接口的响应码情况,url为第5列,响应码为第6列,分隔符为“|”
cat access.log | awk -F '|' '{print $6}'
# 9.如何查看http的并发请求数与其tcp连接状态?
并发netstat -na | grep ESTABLIS | wc -l
tcp数netstat -an|grep ":80 "|grep -v grep|wc -l