系统CPU负载过高、CPU使用率不高的问题

  • 首先问题排查
    ps aux --sort -pmem|head 或者TOP命令查看
    然后 lsof查看打开文件
    如果是网站相关进程,重启相关服务
    如果是数据库相关进程,可能是慢查询参数导致的。
    还可能是网络或者是硬件设备导致的。
    或者是进程所需的服务关闭,导致处于卡死状态。

进程导致CPU爆满

首先 sar(top,ps等查看负载命令) 查看状态得到 pid
然后 lsof 查看打开的文件。
去文件中查看参数是否变动,
查看是否有死循环导致
程序中存在过度耗时且不可能完成的操作
或者是存在版本不兼容的问题
然后修改参数,改脚本或者去kill 掉进程

kill进程仍然开启

有两个原因
1.父进程不断fork
2.crontab 中有相应的配置。

所以关闭父进程或者更改crontab

网络攻击

CC攻击主要攻击网站页面的,CC攻击的原理就是攻击者控制一些虚拟IP不停地发大量数据包给对方服务器造成服务器资源耗尽

防御CC攻击可以通过多种方法,禁止网站代理访问,尽量将网站做成静态页面,限制连接数量,修改最大超时时间等

DDOS攻击有称为洪水攻击,DDOS攻击原理就是攻击者对网络资源发送过量数据,导致服务器无法正常运行

防御DDOS攻击可以通过调节服务器的防御来抵抗流量攻击

SYN攻击又称为小包攻击,SYN攻击的原理就是SYN它利用TCP协议缺陷,通过发送大量的半连接请求,耗费CPU和内存资源

防御syn攻击:减小超时时间;SYN网关和SYN代理;增大最大半连接数;SYN cookies技术(验证数据包的合法性)

SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令,

防御sql注入:数据库漏扫;数据库加密;数据库防火墙,对用户的输入进行校验,不要使用管理员权限的数据库连接

ARP攻击:通过伪造 IP 地址和 MAC 地址实现 ARP 欺骗,能够在网络中产生大量的 ARP 通信量使网络阻塞,攻击者只要持续不断的发出伪造的 ARP 响应包就能更改目标主机 ARP 缓存中的 IP-MAC 条目,造成网络中断或中间人攻击。

可以在客户端设置静态的ARP映射表,这样就不会受到ARP的欺骗;
也可以在交换机上设置访问控制,对于所有流经交换机但IP地址和MAC地址与网关不匹配的情况进行过滤,从而避免了ARP的攻击。
通过vlan划分广播域,减少感染范围

广播风暴

★当主机系统响应一个在网上不断循环的报文分组或者试图响应一个没有应答的系统时就会发生广播风暴。一般为了改变这种状态,请求或者响应分组源源不断地产生出来,常使情况变得更糕。随着网络上分组数目的增加,拥塞会随之出现,从而降低网络的性能以至于使之陷入瘫痪。

★一个数据帧或包被传输到本地网段 (由广播域定义)上的每个节点就是广播;由于网络拓扑的设计和连接问题,或其他原因导致广播在网段内大量复制,传播数据帧,导致网络性能下降,甚至网络瘫痪,这就是广播风暴。

★其实广播风暴多是出现在以hub连接而且是环形连接的局域网中,如果用路由器和交换机的话,由于路由器和交换机是树形连接设计的,可以有效的防止广播风暴的产生。
 解决办法

1、有效分割过大网络,使广播包只在有限的范围内传播。

2、使用网关,对数据包进行分拣。

3、使用路由器,隔离不同的子网。

大型分布式网站的系统性能要求

  • 1.响应时间(Response time) 2-5-8原则:(当网站慢一秒就会流失十分之一的客户)
  • 2.吞吐量(Throughput)指的是在单位时间内客户端和服务器成功传送数据的数量;
  • 3.资源使用率(Resource utilization)cpu占用率、内存使用率、磁盘I/O、网络I/O;
  • 4.每秒点击数(Hits per Second)客户端每秒向服务器提交的请求数量
  • 5.并发用户数(Concurrent users) 客户端的同一批用户同时执行一个操作的数量。

死锁产生条件及原因

当一个进程集合中的每一个进程都在等待一个进程才能往下推进,若无外力则无法推进,就叫所死锁,该进程叫做死锁进程。

形成原因:
1.因竞争资源发生死锁
可剥夺资源、不可剥夺资源、临时资源的竞争
2.进程向前推进的顺序不当

四个产生条件:
(1)互斥条件:进程分配到的资源不允许其他进程进行访问,其他进程只能等待该进程使用完成释放该资源后才能访问。

(2)请求和保持条件:进程获得一定的资源之后,又对其他资源发出请求,但是该资源可能被其他进程占有,此事请求阻塞,但又对自己获得的资源保持不放

(3)不可剥夺条件:是指进程已获得的资源是不可被剥夺资源,只能在使用完后自己释放
(4)环路等待条件:是指进程发生死锁后,必然存在一个进程–资源之间的环形链

四. 处理死锁的基本方法

1.预防死锁:通过设置一些限制条件,去破坏产生死锁的必要条件

2.避免死锁:在资源分配过程中,使用某种方法避免系统进入不安全的状态,从而避免发生死锁

3.检测死锁:允许死锁的发生,但是通过系统的检测之后,采取一些措施,将死锁清除掉

4.解除死锁:该方法与检测死锁配合使用

访问的地址不是自己想要的地址

  1. 本地hosts文件错误
  2. 访问被劫持

访问网站速度过慢

1.检查本地的硬件设施,cpu内存等,
2.检查服务器服务是否正常,配置是否正常,是否限制速率了
3.检查客户端,ping检查网络,ping比较大是因为,本地性能,然后telnet命令检查端口

dns解析类型和解析方法

DNS 全名是(Domain Name System ,域名解析协议)端口号 53。同时使用tcp和udp协议,

区域数据传送时(检测数据是否变动)使用tcp,因为tcp报文长度可以大于512 的,而udp最大为512。而且tcp连接比较可靠。

在域名解析时则使用udp,因为返回的内容一般不超过512字节,效率更高。

DNS服务器:用于对域名进行解析的域名解析服务器。
DNS代理:用于代理域名服务器,对客户端的查询请求,进行响应。基本上都是本地查找,查不到的时候通过代理的服务器转发客户端的查询请求。

dns 记录类型介绍

1、A记录:WEB服务器的IP指向:A记录是用来指定主机名(或域名)对应的IP地址记录。当客户端访问域名的时候,通过查询A记录来获取域名对应的IP地址。

2、AAAA记录:和A记录类似,只不过获取的是IPv6的地址

3、PTR记录:PTR是pointer的简写。“PTR”就是“反向DNS”。就是通过IP地址去解析域名

4、NS记录:NS(Name Server)记录是域名服务器记录,用来指定域名由哪个DNS服务器来进行解析可以把一个域名的不同二级域名分别指向到不同的DNS系统来解析。

5、MX记录: 邮件交换记录,它指向一个邮件服务器,用于电子邮件系统发邮件时根据收信人的地址后缀来定位邮件服务器。
比如说,一个用户要发一份邮件xxx@163.com,该永辉的邮件系统通过DNS查找163.com这个域名的MX记录,如果MX记录存在,用户计算机就将邮件发送到MX记录所指定的邮件服务器中。

6、TXT记录:一般指某个主机名或域名的说明。

7、CNAME记录:别名解析。可以将注册的不同域名都转到一个域名记录上

8、URL (Uniform Resource Locator 统一资源定位符)转发:网址转发 。url转发可以转发到某一个目录下,甚至某一个文件上。而cname是不可以,这就是url转发和cname的主要区别所在。

DNS的两种域名解析方式
1.递归查询:
一般客户机和服务器之间属递归查询,即当客户机向dns服务器发出请求后,若dns服务器本身不能解析,则会向另外的dns服务器发出查询请求,得到结果后转交给客户机;
2.迭代查询(反复查询):
一般dns服务器之间属迭代查询,如:本地域名服务器向根域名服务器查询,根域名服务器告诉它下一步到哪里去查询.com,然后它再去查baidu.com,在查www.baidu.com。

在浏览器输入一个网址,发生了什么(DNS解析流程)

  • 输入网址www.baidu.com,按下回车
  • 在浏览器缓存中进行查找,没有的的话就去系统缓存和DNS缓存中进行解析,
  • 然后去查找本地的 /etc/hosts 文件,没有的话就去本地服务器进行解析 /etc/resolv.conf 指定的服务器
  • 解析不到的话就从根域名开始分级解析
  • 首先去根服务器 (.) 它告诉浏览器只知道 。com这个顶级服务器,然后去这里解析。
  • 然后 .com 服务器告诉浏览器只知道 .baidu.com 这个服务器,再去这里解析
  • 然后到baidu.com这个服务器告诉浏览器它知道 www.baidu.com 的ip解析地址,并向浏览器返回解析
  • 浏览器向访问该地址的web服务器发送http请求(因为动态页面过期很快)
  • 服务器向浏览器发送一个永久的重定向相应
  • 浏览器跟踪重定向,再次发送请求
  • 服务器处理请求,发回一个HTML页面作为响应,浏览器开始加载html界面
  • 浏览器解析html页面,发送请求在web服务器中获取 html 页面中的对象
  • 页面显示完成后,浏览器发送异步请求,持续与服务器保持联系来及时更新一些页面信息。

tcp3次握手失败

第三次握手失败后,计时器开始计数,超过后服务端进行重传,重新发送syn报文,表示未接收到客户端的ack报文。

面试常见运维故障排除问题总结相关推荐

  1. Linux服务器常见运维性能测试(3)CPU测试super_pi、sysbench

    Linux服务器常见运维性能测试(3)CPU测试 常见性能测试软件 CPU测试:super_pi (计算圆周率) CPU测试:sysbench(CPU功能测试部分) 下载安装 sysbench综合测试 ...

  2. 银河麒麟操作系统常见运维问题

    目录 银河麒麟  常见运维问题 1 安装问题 1) 高级安装ARM版本系统,新建分区sda1必须是/boot分区,sda2是根分区? 2) 用光盘安装或者U盘安装时,无法进入安装界面问题 3) 麒麟系 ...

  3. TDH 常见运维命令(部分)

    通过一条命令来搜集所有节点下regionServer的Exception日志: cat /etc/hosts | grep 172.16 | awk  '{print $1}' | xargs -i ...

  4. 面试 Linux 运维工作至少需要知道哪些知识?

    点击上方"程序员大咖",选择"置顶公众号" 关键时刻,第一时间送达! 先不说楚枫的这般年纪,能够踏入元武一重说明了什么,最主要的是,楚枫在刚刚踏入核心地带时,明 ...

  5. nginx高性能WEB服务器系列之九--nginx运维故障日常解决方案

    nginx系列友情链接: nginx高性能WEB服务器系列之一简介及安装 https://www.cnblogs.com/maxtgood/p/9597596.html nginx高性能WEB服务器系 ...

  6. mysql dba工作笔记pdf_社区专家在线:Oracle数据库、MySQL、Db2 等数据库日常运维故障与性能调优在线答疑...

    数据库的重要性毋庸置疑,随着数据量日益增加,数据库的重要性更为凸显.DBA们作为数据库的日程运维管理人员,肩负着数据库运维的重要使命.一名合格的DBA,日常工作中需要掌握多项技能,包括数据库的故障诊断 ...

  7. 51CTO学习笔记--Linux运维故障排查思路与系统调优技巧视频课程(高俊峰)

    51CTO学习笔记--Linux运维故障排查思路与系统调优技巧视频课程 第一课 Linux运维经验分享与思路 1.一般把主机名,写到hosts下    127.0.0.1    hostname,因为 ...

  8. python运维脚本面试_运维开发工程师 面试题 shell编程

    1. 32位随机密码生成 cat /proc/sys/kernel/random/uuid | tr -d '-' 2.查看当前系统每个ip的tcp连接数 -n 强制显示IP地址 -t 显示TCP连接 ...

  9. Linux服务器常见运维性能测试(1)综合跑分unixbench、superbench

    Linux服务器常见运维性能测试及压力测试拷机稳定性系列(1)综合跑分unixbench.superbench 常见性能测试软件 综合测试:1.UnixBench 测试项 安装及使用 综合测试:2.s ...

最新文章

  1. 小程序 a标签_微信内循环生态:朋友圈标签引流视频号、小程序、搜一搜
  2. JQuery判断数组中是否包含某个元素$.inArray(js, arr);
  3. Python打卡第四周
  4. 什么函数是回调函数?
  5. thrift中TNonblockingServer的简单用法
  6. 零售分析用vba还是python_数据分析?Excel、VBA和Python?营销套路还是大势所趋!...
  7. (产品)为什么知乎live采用分段语音输入而不是实时语音直播
  8. C++的三种交换数值的方式(值传递、地址传递、引用传递)
  9. javaWeb过滤器——Filter
  10. 手写数字数据集——MINST的读取及预处理
  11. SQL学习-数据库基础知识(1)
  12. Retina屏兼容处理
  13. emule连接服务器无响应,为什么我的emule连接不上服务器了
  14. python,在格式化字符串中使用半个大括号
  15. 七夕表白代码(动画爱心)
  16. oracle 11客户端精简版,oracle_11g精简版客户端配置
  17. L2+ 概念要火!英伟达和英特尔都释放了什么信号?| CES 2019
  18. ReID:无监督及领域自适应的目标重识别概述
  19. Anaconda+tensorflow+win10安装包和教程(2021年12月)
  20. sql语句(第二高)

热门文章

  1. (沙盘)sandboxie的使用方法
  2. python定时任务执行shell脚本切割Nginx日志-慎用
  3. 四管前级怎么去掉高低音音调_HIFIDIY论坛
  4. 魔兽世界中的一些公式
  5. JAVA学习笔记—前端学习笔记(二)—JQ、ES6、Bootstrap
  6. python图片显示英文字符_Python为图片素材起个英文名
  7. 科学计数法和普通数字的相互转换
  8. SOR术语中英文对照翻译、简称说明、基础知识总汇
  9. 洗碗机什么牌子比较好? 森歌洗碗机品牌中的战斗机
  10. 解决Debian网速慢问题(Ubuntu、Linux Mint等衍生版)