日常运维

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了日常运维相关的知识,希望对你有一定的参考价值。

iostat

iostat 直接查看 iostat 1
iostat -x 磁盘使用

%util:表示I/O等待,占用CPU的等待时间,这个数字大,可能硬盘有故障

iotop

iotop 磁盘使用
yum - y install iotop

动态显示 由高到低

Total DISK READ :    0.00 B/s | Total DISK WRITE :       0.00 B/s
Actual DISK READ:    0.00 B/s | Actual DISK WRITE:       0.00 B/s

free

free 查看内存使用情况

        total          used      free        shared      buff/cache   available
Mem:       1008152       128060      572356      6892      307736       699492
Swap:      2097148            0         2097148

free -h 人性化显示
内存会预分配一部分给buffer / cache 缓冲/缓存

buffer  缓冲:加速了数据的 写入   从CPU到内存buffer再到磁盘
cache  缓存:加速了数据的 读取   从磁盘到内存cache再到CPU

total = used+free+buff/cache
真· 剩余物理内存  

avaliable 包含free 和 buffer/cache 剩余部分

ps

ps 查看系统进程 静态的一次显示出来
ps aux 和 ps -elf 一样
可kill +PID 杀进程
porc 目录下的目录是进程PID的

STAT 部分说明
     s 主进程
     R run 运行状态的进程  时间段使用CPU        
     S sleep状态的进程
     T 暂停的进程
     Z 僵死的进程
     D 不能中断的进程
     < 高优先级的进程
     N 低优先级进程
     L 内存中被锁了内存分页
    `+` 前台进程
     l 多线程进程

netstat

netstat 查看网络状态

netstat -lnp 查看监听端口
LISTEN 监听
netstat -an  查看系统的网络连接状况TCPID

netstat -lntp 只看tcp协议。不包含socket

netstat -lnutp 只看tcp udp协议
TIME-WAIL 等待下次连接状态

小技巧

netstat -an | awk ‘/^tcp/{++sta[$NF]} END {for(key in sta) print key,"\t",sta[key]}‘

[[email protected] ~]$ netstat -an | awk ‘/^tcp/{++sta[$NF]} END {for(key in sta) print key,"\t",sta[key]}‘
LISTEN      4
ESTABLISHED      1
    #抓监听数
#ss -an 和nestat 一样,但是不会显示进程名字

TCP/IP 模型 4层模型

应用层、传输层、网际互联层、网路接口层

传输层

    传输层对应于OSI参考模型的传输层,为应用层实体提供端到端的通信功能,保证了数据包的顺序传送以及数据完整性

该层定义了两个主要的协议:传输控制协议(TCP)和用户数据报文协议(UDP)

TCP :可靠的,面向连接协议(网络、邮件)
UDP:不可靠的,面向无连接的协议

TCP/IP 三次握手

    主机A                                                                          主机B
1 . 发送SYN信息      
(序号=X)   
                          1->2    (1次)  

                                                   2 .接受SYN信息(序列号=X)发送SYN、ACK信息
                            2<-3    (2次)
3 . 接受SYN、ACK信息
 发送ACK信息(确认号=y+1) 

                                    3->3    (3次)

                                                    4 . 接受ACK信息(确认号=y+1)
    TCP/IP 四次握手结束

tcpdump

tcpdump 系统抓包工具

tcpdump -nn  第一个n 用IP显示,第二个n 端口号
tcpdump -i 指定网卡名字
tcpdump port 22 指定端口   not port
tcpdump -c 100 指定抓包100个 -w 指定放入文件目录
抓出来的包不能直接cat 要用 -r 读
tcpdump -r 读抓包的文件信息
#扩展tcp三次握手四次挥手 http://www.doc88.com/p-9913773324388.html

tshark

tshark 类似tcpdump
yum install -y wireshark

tshark -n -t a-R http.request -T fields -e "frame.time" -e "ip.src" -e "http.host" -e "http.request.method" -e "http.request.uri"
    #类似与WEB访问日志

#tshark几个用法: http://www.aminglinux.com/bbs/thread-995-1-1.html

以上是关于日常运维的主要内容,如果未能解决你的问题,请参考以下文章

Python日常运维脚本

Hadoop集群日常运维

代码发布系统实现

开发运维日常坑 总结 1-50

如何做好日常运维的安全工作

linux运维的工作内容都有啥