NETSTAT 命令获取连接数以及状态
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
LISTEN: 侦听来自远方的TCP端口的连接请求
SYN-SENT: 再发送连接请求后等待匹配的连接请求
SYN-RECEIVED:再收到和发送一个连接请求后等待对方对连接请求的确认
ESTABLISHED: 代表一个打开的连接
FIN-WAIT-1: 等待远程TCP连接中断请求,或先前的连接中断请求的确认
FIN-WAIT-2: 从远程TCP等待连接中断请求
CLOSE-WAIT: 等待从本地用户发来的连接中断请求
CLOSING: 等待远程TCP对连接中断的确认
LAST-ACK: 等待原来的发向远程TCP的连接中断请求的确认
TIME-WAIT: 等待足够的时间以确保远程TCP接收到连接中断请求的确认
CLOSED: 没有任何连接状态
关闭IPV6
cat >> /etc/modprobe.d/dist.conf <<EOF
alias net-pf-10 off
options ipv6 disable=1
EOF
zabbix server端配置
LogFile=/var/log/zabbix/zabbix_server.log
DBHost=192.168.21.15
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
ListenIP=127.0.0.1,192.168.21.15
zabbix client端配置
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=192.168.248.6
ServerActive=192.168.248.6
Hostname=192.168.248.5
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d
vmstat 参数详解
r 等待执行的任务数
展示了正在执行和等待cpu资源的任务个数。当这个值超过了cpu个数,就会出现cpu瓶颈。
b 等待IO的进程数量
swpd 正在使用虚拟的内存大小,单位k (-S M 指定单位)
free 空闲内存大小
buff 已用的buff大小,对块设备的读写进行缓冲
cache 已用的cache大小,文件系统的cache
si 每秒从交换区写入内存的大小(单位:kb/s)
so 每秒从内存写到交换区的大小
bi 每秒读取的块数(读磁盘)
bo 每秒写入的块数(写磁盘)
in 每秒中断数,包括时钟中断
这两个值越大,会看到由内核消耗的cpu时间会越多
cs 每秒上下文切换数
这两个值越大,会看到由内核消耗的cpu时间会越多
us 用户进程执行消耗cpu时间(user time)
us的值比较高时,说明用户进程消耗的cpu时间多,但是如果长期超过50%的使用,那么我们就该考虑优化程序算法或其他措施了
sy 系统进程消耗cpu时间(system time)
sy的值过高时,说明系统内核消耗的cpu资源多,这个不是良性的表现,我们应该检查原因。
id 空闲时间(包括IO等待时间)
wa 等待IO时间
wa过高时,说明io等待比较严重,这可能是由于磁盘大量随机访问造成的,也有可能是磁盘的带宽出现瓶颈。
shell 总结
判断变量是否为数字
a=21234;[ -n "`echo "$a" | sed -n '/^[0-9][0-9]*$/p'`" ] && echo string a is number
从rpm包中提取文件
rpm2cpio foo.rpm | cpio -idmv
rpm2cpio可以将rpm包转换成cpio格式
cpio命令中的-i是提取文件,-d表示根据rpm包中文件原来的路径建立目, -m是保持文件的更新时间, -v是显示处理的文件列表
curl 获取http状态码
curl -I -o /dev/null -s -w %{content_type} www.xiumeiapp.com
可以通过 man curl 查看-w选项,可以获取到的其他头信息
收集零碎资料
http://www.imooc.com/wap/article?article_id=2958 25个shell面试题
http://www.imooc.com/wap/article?article_id=2970 20个命令行监控工具
http://blog.51cto.com/zt/692 openstack实践
http://blog.51cto.com/zt/677 mysql mha架构
http://laoguang.blog.51cto.com/6013350/1103628 制作rpm包