山那边是海 发表于 2015-1-14 20:43:27

CentOS教程之办事器上扫除成绩的头五分钟

如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们!我们团队为上一家公司承当运维、优化和扩大事情的时分,我们碰着了各类分歧范围的功能很差的体系和基本装备(年夜型体系占多数,好比CNN大概天下银行的体系)。如果再遇上修复工夫紧、奇葩的手艺平台、短少信息和文档,基础上这历程城市凄惨到让我们留下深入的影象。
碰到办事器妨碍,成绩呈现的缘故原由很少能够一下就想到。我们基础上城市从以下步调动手:
1、尽量弄分明成绩的来龙去脉
不要一会儿就扎到办事器后面,你必要先弄分明对这台办事器有几已知的情形,另有妨碍的详细情形。否则你极可能就是在有的放矢。
必需弄分明的成绩有:

[*]妨碍的体现是甚么?无呼应?报错?
[*]妨碍是甚么时分发明的?
[*]妨碍是不是可重现?
[*]有无呈现的纪律(好比每小时呈现一次)
[*]最初一次对全部平台举行更新的内容是甚么(代码、办事器等)?
[*]妨碍影响的特定用户群是甚么样的(已登录的,加入的,某个地区的…)?
[*]基本架构(物理的、逻辑的)的文档是不是能找到?
[*]是不是有监控平台可用?(好比Munin、Zabbix、Nagios、NewRelic…甚么都能够)
[*]是不是有日记能够检察?.(好比Loggly、Airbrake、Graylog…)
最初两个是最便利的信息来历,不外别抱太年夜但愿,基础上它们都不会有。只能再持续探索了。



2、有谁在?
$w$last用这两个下令看看都有谁在线,有哪些用户会见过。这不是甚么关头步调,不外最好别在其他用户正干活的时分来调试体系。有道是一山不容二虎嘛。(necookinthekitchenisenough.)
3、之前产生了甚么?
$history检察一下之前办事器上实行过的下令。看一下老是没错的,加上后面看的谁登录过的信息,应当有点用。别的作为admin要注重,不要使用本人的权限往侵占他人的隐私哦。
到这里先提示一下,等会你大概会必要更新HISTTIMEFORMAT情况变量来显现这些下令被实行的工夫。对要否则光看到一堆不晓得啥时分实行的下令,一样会使人抓狂的。
4、如今在运转的历程是啥?
$pstree-a$psaux这都是检察现有历程的。psaux的了局对照混乱,pstree-a的了局对照复杂了然,能够看到正在运转的历程及相干用户。
5、监听的收集办事
$netstat-ntlp$netstat-nulp$netstat-nxlp我一样平常都分隔运转这三个下令,不想一会儿看到列出一年夜堆一切的办事。netstat-nalp倒也能够。不外我毫不会用numeric选项(不才一点浅陋的意见:IP地点看起来更便利)。
找到一切正在运转的办事,反省它们是不是应当运转。检察各个监听端口。在netstat显现的办事列表中的PID和psaux历程列表中的是一样的。
假如办事器上有好几个Java大概Erlang甚么的历程在同时运转,可以按PID分离找到每一个历程就很主要了。
一般我们倡议每台办事器上运转的办事少一点,需要时能够增添办事器。假如你看到一台办事器上有三四十个监听端口开着,那仍是做个纪录,转头有空的时分清算一下,从头构造一下办事器。
6、CPU和内存
$free-m$uptime$top$htop注重以下成绩:

[*]另有空余的内存吗?办事器是不是正在内存和硬盘之间举行swap?
[*]另有残剩的CPU吗?办事器是几核的?是不是有某些CPU核负载过量了?
[*]办事器最年夜的负载来自甚么中央?均匀负载是几?
7、硬件

有良多办事器仍是***机形态,能够看一下:

[*]找到RAID卡(是不是带BBU备用电池?)、CPU、空余的内存插槽。依据这些情形能够大抵懂得硬件成绩的来历和功能改善的举措。
[*]网卡是不是设置好?是不是正运转在半双工形态?速率是10MBps?有无TX/RX报错?
8、IO功能
$iostat-kx2$vmstat210$mpstat210$dstat--top-io--top-bio这些下令关于调试后端功能十分有效。

[*]反省磁盘利用量:办事器硬盘是不是已满?
[*]是不是开启了swap互换形式(si/so)?
[*]CPU被谁占用:体系历程?用户历程?假造机?
[*]dstat是我的最爱。用它能够看到谁在举行IO:是否是MySQL吃失落了一切的体系资本?仍是你的PHP历程?
9、挂载点和文件体系
$mount$cat/etc/fstab$vgs$pvs$lvs$df-h$lsof+D//*bewarenottokillyourbox*/

[*]一共挂载了几文件体系?
[*]有无某个办事公用的文件体系?(好比MySQL?)
[*]文件体系的挂载选项是甚么:noatime?default?有无文件体系被从头挂载为只读形式了?
[*]磁盘空间是不是另有残剩?
[*]是不是有年夜文件被删除但没有清空?
[*]假如磁盘空间有成绩,你是不是另有空间来扩大一个分区?
10、内核、中止和收集
$sysctl-a|grep...$cat/proc/interrupts$cat/proc/net/ip_conntrack/*maytakesometimeonbusyservers*/$netstat$ss-s

[*]你的中止哀求是不是是平衡地分派给CPU处置,仍是会有某个CPU的核由于大批的收集中止哀求大概RAID哀求而过载了?
[*]SWAP互换的设置是甚么?关于事情站来讲swappinness设为60就很好,不外关于办事器就太糟了:你最好永久不要让办事器做SWAP互换,否则对磁盘的读写会锁逝世SWAP历程。
[*]conntrack_max是不是设的充足年夜,能对付你办事器的流量?
[*]在分歧形态下(TIME_WAIT,…)TCP毗连工夫的设置是如何的?
[*]假如要显现一切存在的毗连,netstat会对照慢,你能够先用ss看一下整体情形。
你还能够看一下LinuxTCPtuning懂得收集功能调优的一些要点。
11、体系日记和内核动静
$dmesg$less/var/log/messages$less/var/log/secure$less/var/log/auth

[*]检察毛病和告诫动静,好比看看是否是良多关于毗连数过量招致?
[*]看看是不是有硬件毛病或文件体系毛病?
[*]剖析是不是能将这些毛病事务和后面发明的疑点举行工夫上的比对。


12、准时义务

$ls/etc/cron*+cat$foruserin$(cat/etc/passwd|cut-f1-d:);docrontab-l-u$user;done

[*]是不是有某个准时义务运转过于频仍?
[*]是不是有些用户提交了埋没的准时义务?
[*]在呈现妨碍的时分,是不是恰好有某个备份义务在实行?
十3、使用体系日记
这里边可剖析的器材就多了,不外生怕你作为运维职员是没工夫往细心研讨它的。存眷那些分明的成绩,好比在一个典范的LAMP(Linux+Apache+Mysql+Perl)使用情况里:

[*]Apache&Nginx;查找会见和毛病日记,间接找5xx毛病,再看看是不是有limit_zone毛病。
[*]MySQL;在mysql.log找毛病动静,看看有无布局破坏的表,是不是有innodb修复历程在运转,是不是有disk/index/query成绩.
[*]PHP-FPM;假如设定了php-slow日记,间接找毛病信息(php,mysql,memcache,…),假如没设定,赶忙设定。
[*]Varnish;在varnishlog和varnishstat里,反省hit/miss比.看看设置信息里是不是漏掉了甚么划定规矩,使终极用户能够间接打击你的后端?
[*]HA-Proxy;后真个情况怎样?安康情况反省是不是乐成?是前端仍是后真个行列巨细到达最年夜值了?
结论
经由这5分钟以后,你应当对以下情形对照分明了:

[*]在办事器上运转的都是些啥?
[*]这个妨碍看起来是和IO/硬件/收集大概体系设置(有成绩的代码、体系内核调优,…)相干。
[*]这个妨碍是不是有你熟习的一些特性?好比对数据库索引利用不妥,大概太多的apache背景历程。
你乃至有大概找到真实的妨碍泉源。就算还没有找到,弄分明了下面这些情形以后,你如今也具有了深挖下往的前提。持续勉力吧!
原文链接:http://devo.ps/blog/2013/03/06/troubleshooting-5minutes-on-a-yet-unknown-box.html


如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们!

愤怒的大鸟 发表于 2015-1-16 21:54:16

CentOS教程之办事器上扫除成绩的头五分钟

为了更好的学习这门课程,我不仅课上认真听讲,课下也努力学习,为此还在自己的电脑上安装了Ubuntu系统。

若相依 发表于 2015-1-24 10:10:12

不同于Windows?系统需要花钱购买,因为Linux的核心是免费的,自由使用的,核心源代码是开放的。

飘灵儿 发表于 2015-2-1 10:12:01

另外Linux上也有很多的应用软件,安装运行了这些软件后,你就可以在Linux上编辑文档、图?片,玩游戏、上网、播放多媒体文件等。

活着的死人 发表于 2015-2-7 05:51:44

Linux是参照Unix思想设计的,理解掌握Linux必须按照Unix思维来进行。思想性的转变比暂时性的技术提高更有用,因为他能帮助你加快学习速度。

飘飘悠悠 发表于 2015-2-21 11:38:59

请问谁有Linux的学习心得的吗?简单的说说?

老尸 发表于 2015-3-6 21:23:02

其实老师让写心得我也没怎么找资料应付,自己想到什么就写些什么,所以不免有些凌乱;很少提到编程,因为那些在实验报告里已经说了,这里再写就多余了。

海妖 发表于 2015-3-13 22:10:20

了解Linux的网络安全,系统的安全,用户的安全等。安全对于每位用户,管理员来说是非常重要的。

爱飞 发表于 2015-3-20 21:44:40

放手去搞。尽量不要提问,运用搜索找答案,或者看wiki,从原理上理解操作系统的本质,而不是满足于使用几个技巧。尽量看英文资料。
页: [1]
查看完整版本: CentOS教程之办事器上扫除成绩的头五分钟