转自:https://mp.weixin.qq.com/s?__biz=MjM5ODYxMDA5OQ==&mid=2651960323&idx=1&sn=e04af14d2ebf939133869e0f18bb0dd1&chksm=bd2d01df8a5a88c98c3cb94a99334a16b372fd997f36bc757a38bb44b70d977797fa840064dc&mpshare=1&scene=23&srcid=0816Yl1RlSyNnNAHksisZEXS#rd

技术同学需要经常登录线上的服务器进行操作,58到家架构部/运维部/58速运技术部,联合进行了一次线上操作与线上问题排查实战演练,同学们反馈有收获,特将实战演练的问题和答案公布出来,希望对大家也有帮助。

一、了解机器连接数情况

问题:1.2.3.4的sshd的监听端口是22,如何统计1.2.3.4的sshd服务各种连接状态(TIME_WAIT/ CLOSE_WAIT/ ESTABLISHED)的连接数。

参考答案

  • netstat -n | grep 1.2.3.4:22 | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}’

  • netstat -lnpta | grep ssh | egrep “TIME_WAIT | CLOSE_WAIT | ESTABLISHED”

  • n [仅限于阿里云]

说明:netstat是追查网络连接问题常用工具,和grep/awk结合更是神器,当然如果在阿里云上,还有更方便的方法。

二、从已经备份好的日志中查询数据

问题:从已备份的suyun.2017-06-26.log.bz2日志中,找出包含关键字1.2.3.4的日志有多少条。

参考答案

  • bzcat suyun.2017-06-26.log.bz2 | grep '1.2.3.4' | wc -l

  • bzgrep '1.2.3.4' suyun.2017-06-26.log.bz2 | wc -l

  • less suyun.2017-06-26.log.bz2 | grep '10.37.9.11' | wc -l

说明:线上日志文件一般以bz2 压缩之后保留,如果解压查询,非常耗空间与时间,bzcat和bzgrep是研发同学必须掌握的工具。

三、备份服务的技巧

问题:打包备份/opt/web/suyun_web目录,排除掉目录中的logs和目录,打包好的文件存放在/opt/backup目录下。

参考答案

tar -zcvf /opt/backup/shenjian.tar.gz \

-exclude /opt/web/suyun_web/logs \

/opt/web/suyun_web

说明:这个命令线上应用较为频繁,在项目需要打包迁移时,常常需要排除掉日志目录,exclude是需要掌握的参数。

四、查询线程数

问题:查询服务器运行服务的总线程数,当机器线程数超报警阀值时,能快速查出相关进程及线程信息。

参考答案

  • ps -eLf | wc -l

  • pstree -p | wc -l

五、磁盘报警,清空最大文件

问题:找出服务器上,某个正在运行的tomcat产生的大量异常日志,找出该文件,并释放空间。不妨设该文件包含log关键字,并且大于1G。

参考答案

第一步,找到该文件

  • find / -type f -name "*log*" | xargs ls -lSh | more

  • du -a / | sort -rn | grep log | more

  • find / -name '*log*' -size +1000M -exec du -h {} \;

第二步,将文件清空

假设找到的文件为a.log

正确的情况方式应该为:echo "">a.log,文件空间会立刻释放。

很多同学:rm -rf a.log,这样文件虽然删除,但是因tomcat服务仍在运行,空间不会立刻释放,需要重启tomcat才能将空间释放。

六、显示文件,过滤注释

问题:显示server.conf 文件,屏蔽掉#号开头的注释行

参考答案

  • sed -n '/^[#]/!p' server.conf

  • sed -e '/^#/d' server.conf

  • grep -v "^#" server.conf

七、磁盘IO异常排查

问题:磁盘IO异常如何排查,类似写入慢或当前使用率较高,请查出导致磁盘IO异常高的进程ID。

参考答案

第一步:iotop -o 查看当前正在写磁盘操作的所有进程ID信息。

第二步:如果此时各项写入指标都很低,基本没有大的写入操作,则需要排查磁盘自身。可以查看系统dmesg或cat /var/log/message 看看是否有相关的磁盘异常报错,同时可以在写入慢的磁盘上touch 一个空文件看看,是否磁盘故障导致无法写入。

==【完】==

希望对经常进行线上操作的同学有帮助,到线上操作一把,印象更加深刻哟。

如果有更好的实践,也欢迎分享。

相关文章:

Linux追查线上问题常用命令

一分钟awk够用

一分钟sed够用

转载于:https://www.cnblogs.com/leonxyzh/p/7377085.html

线上操作与线上问题排查实战相关推荐

  1. 线上服务器内存分析及问题排查

    转载自  线上服务器内存分析及问题排查 平常的工作中,在衡量服务器的性能时,经常会涉及到几个指标,load.cpu.mem.qps.rt等.每个指标都有其独特的意义,很多时候在线上出现问题时,往往会伴 ...

  2. 服务器性能指标(二)-- 线上服务器内存分析及问题排查

    服务器性能指标(二)-- 线上服务器内存分析及问题排查 平常的工作中,在衡量服务器的性能时,经常会涉及到几个指标,load.cpu.mem.qps.rt等.每个指标都有其独特的意义,很多时候在线上出现 ...

  3. vCenter线上操作磁盘扩容

    以下截图是生产机器,目前是有一块盘,且根分区是/dev/sda3,因为磁盘不足,需要备份的数据要远远超过此时的空间大小:正常情况下,是可以新增硬盘硬盘作为备份 但是作为宿主机下的虚机,因为一些不规范的 ...

  4. 易语言 在电脑上操作手机网页填表 无USB线 不限网络

    易语言 在电脑上操作手机网页填表 无USB线 不限网络 易语言 在电脑上操作手机网页填表 无USB线 不限网络

  5. 如何在Windows 10 上定时备份线上Minio 资源

    如何在Windows 10 上定时备份线上Minio 资源 一.系统环境 二.软件安装 三.设置定时任务 3.1 创建账号 3.2 同步测试 3.3 编写同步脚本 3.4 脚本测试 3.5 创建定时任 ...

  6. 异贝,移动互联网技术,为中小微实体企业联盟、线上链接、线上线下自定义营销方案推送。案例42

    欢迎关注异贝.异贝5G营销工具,为实体商家科技赋能,今天给大家带来的案例是羊毛衫店的营销: 人天生就有爱占便宜的本性,这在消费者心理学中被称作合算偏见,人们在交易的时候,不仅要买商品,也要买商品时占到 ...

  7. 从线上卖到线下,秘籍在这里|千牛头条双11直播

    自从2016年的云栖大会上,马云提出了"新零售"概念后,一年来,小编掐指一算,从盒马.无人售货店到零售通.天猫小店,在阿里巴巴这个主阵地上,已经涌现了这么多新的生态和样本,感觉自己 ...

  8. 异贝,通过移动互联网技术,为中小微实体企业联盟、线上链接、线上线下自定义营销方案推送。案例60

    欢迎关注异贝.异贝5G营销工具,今天给大家带来的案例是儿童玩具市场的营销案例: 现在的儿童玩具市场,既有越来越旺盛的趋势,却也同样面临着的激烈的竞争.除了原来卖玩具的同行的竞争,还有各个教育机构也在出 ...

  9. android地图画线,绘制折线-在地图上绘制-开发指南-Android 轻量版地图SDK | 高德地图API...

    地图上绘制的线是由 Polyline 类定义实现的,线由一组经纬度(LatLng对象)点连接而成. 绘制一条线 与点标记一样,Polyine的属性操作集中在PolylineOptions类中,添加一条 ...

最新文章

  1. GO库安装报错解决:unrecognized import path golang.org/x/net (https fetch: dial tcp i/o timeout
  2. 零基础学python语言_零基础如何入门Python语言?有哪些学习建议?
  3. 返回当前文档的文档的url
  4. PHP写猜数字,PHP算法之猜数字
  5. git 在ssh情况下提交代码
  6. 吴裕雄 实战PYTHON编程(7)
  7. twisted学习资料
  8. 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_02 递归_5_综合案例_文件搜索...
  9. php清空session值_php注销session变量和销毁session详细分析
  10. Laplacian算子-Log算子-Dog算子边缘检测原理合集及实现
  11. photoshop2019及其破解器
  12. 不使用setPositiveButton 如何让alertdialog消失
  13. 广州史帝奇轨道环幕影院的优势、特点、应用领域
  14. RESTful API设计简介
  15. 第二类换元法之倒代换习题
  16. Android 学习记录(持续更新)
  17. yolov5 6.1官方模板TensorRT加速保姆级图文教程
  18. 制作CentOS 6.4 U盘启动安装盘
  19. 云计算科普:Pets(宠物)和Cattle(牲口)傻傻分不清楚?
  20. android 魅族日历,GitHub - yhyonghao/CalendarView: CalenderView_Meizu 魅族风格日历

热门文章

  1. idea插件Easy Code的使用
  2. 语音识别系列1:语音识别Speech recognition综述
  3. Python知识:opencv实现的直方图
  4. linux 修改时区_【003】一文全面掌握Linux初始化进程(超详细)
  5. 用matlab绘制一个时钟
  6. mysql同步row模式_ROW模式的SQL无法正常同步的问题总结
  7. 【java8中的时间操作】java8中获取月的最后一天或者总天数,JDK8 LocalDate AP
  8. 5.字符串:各种奇葩的内置方法/格式化
  9. 1.我和python的第一次亲密接触
  10. 多线程共用全局变量可能存在的威胁