您的位置:首页 > 运维架构 > Linux

《构建高可用LINUX服务器》读书笔记

2015-12-07 19:06 417 查看
一、基础
显示物理CPU个数的命令如下所示:
cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l

显示每个物理CPU中core的个数(即核数)的命令如下所示:
cat /proc/cpuinfo | grep "cpu cores" |uniq

显示逻辑CPU的个数的命令如下所示:
cat /proc/cpuinfo | grep "processor" | wc -l

查看硬盘的I/O性能
iostat –d -x –k 1 15
如果%util接近100%,则说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈。
·await的大小一般取决于服务时间(svctm),以及I/O队列的长度和I/O请求的发出模式。 这个响应时间应该低于5ms,如果大于5ms就表示磁盘I/O压力很大,这时就可以考虑更换响应速度更快的磁盘,调整内核elevator的算法、 优化应用或者升级CPU。

找出系统中占用最多空间的前十个文件或目录:
du -cks * | sort -rn | head -n 10

sed查IP

ifconfig eth0 | grep 'inet addr' |sed 's/^.*addr://g' | sed 's/Bcast.*$//g'
ifconfig eth0 | grep "inet addr:"|awk -F[:" "]+ '{print $4}'
sed替换
要将目录/modules下面所有文件中的zhangsan都修改成list
sed -i 's/zhangsan/list/g' 'grep zhangsan -rl /modules'
查看时间段日志

cat /var/log/secure | sed -n '/12:48:48/,/12:48:55/p'

FIND命令

下面在/logs目录中查找更改时间在5日以前的文件并删除它们
find/logs -type f -mtime +5 -exec rm {} \ ;

如何查看负载?
load average的输出值,这三个值的大小一般不能大于系统逻辑CPU
的个数,例如,本输出中系统有4个逻辑CPU,如果load average的三个值长期大于4,说明
CPU很繁忙,负载很高,可能会影响系统性能,但是偶尔大于4时,不用担心,一般不会影
响系统性能。 相反,如果load average的输出值小于CPU的个数,则表示CPU还有空闲的,
比如本例中的输出,CPU是比较空闲的。
这时候可以结合vmstat命令来判断我们的系统是否过于繁忙,如果确定很繁忙,就要考
虑是否更换服务器或增加CPU的个数了。 总结如下:
如果r经常大于3或4,且id经常少于50,则表示CPU的负荷很重。
vmstat 1 4
user%+sys%<70%则表示系统性能较好,如果user%+sys%>=85%或以上,这
表示系统性能比较糟糕,这时就要对系统进行全方面检查了。

LINUX查看网络连接状态
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
LINUX配置路由 route add -net 10.2.1.0 netmask 255.255.255.0 gw 10.2.1.253
LINUX系统查看 公网IP出口的方法

1.添加DNS echo "nameserver 202.96.64.68">> /etc/resolv.conf ping www.baidu.com 测试
2. wget http://members.3322.org/dyndns/getip 3. cat getip

NGINX日志分析
yum -y install glib2 glib2-devel ncurses ncurses-devel geoIP geoIP-devel
goaccess -f access.log -c -a

如果需要分析某天的日志,例如10月5号那天的日志,我们让linux管道命令来大显身手^_^。
sed -n ‘/05\/Dec\/2010/,$ p’ access.log | goaccess -s –b
分析从11月5号到12月5号一个月内的日志
sed -n ‘/5\/Nov\/2010/,/5\/Dec\/2010/ p’ access.log | goaccess -s –b

nginx访问量统计

1.根据访问IP统计UV
awk '{print $1}' access.log|sort | uniq -c |wc -l
2.统计访问URL统计PV
awk '{print $7}' access.log|wc -l
3.查询访问最频繁的URL
awk '{print $7}' access.log|sort | uniq -c |sort -n -k 1 -r|more
4.查询访问最频繁的IP
awk '{print $1}' access.log|sort | uniq -c |sort -n -k 1 -r|more
5.根据时间段统计查看日志
cat access.log| sed -n '/14\/Mar\/2015:21/,/14\/Mar\/2015:22/p'|more

本文出自 “MJ为的笔记和总结” 博客,请务必保留此出处http://024mj.blog.51cto.com/10252785/1720508
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: