1. 程式人生 > >Day10-2 日常運維 1

Day10-2 日常運維 1

分配內存 命令 tshark 保存 -a 技術 ccf master nload

  • w
    w查看當前系統狀態
    [root@slx-01 ~]# w
    11:23:02 up 1:51, 1 user, load average: 0.00, 0.01, 0.04
    當前時間 開機時間 登錄用戶數 系統負載:1min,5min,15min內負載值
    USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
    root pts/0 192.168.86.1 09:32 6.00s 0.28s 0.04s w
    系統負載值:單位時間內使用CPU的進程個數
    技術分享圖片

  • vmstat
    vmstat n m 每n秒顯示一次,共顯示m次
    procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----

    內存 交換分區 磁盤 系統 cpu
    r b swpd free buff cache si so bi bo in cs us sy id wa st
    r(run): 運行狀態
    b(block): 停止狀態
    swpd: 數字有變化,表示swap在和內存在交換數據
    si: 有多少數據(單位k)進入內存
    so: 有多少數據(單位k)從內存出
    bi: 從磁盤讀取的數據量
    bo: 向磁盤寫入的數據量
    us: 用戶占用cpu百分比(長時間大於50,說明資源可能不夠)
    sy: 系統占用百分比
    id: 空閑百分比
    wa: wait等待進程(數字很大說明cpu不夠用)
    技術分享圖片

  • top
    查看進程使用資源情況,3s刷新動態顯示
    Tasks: 84 total, 1 running, 83 sleeping, 0 stopped, 0 zombie
    任務 總數 運行 休眠 停止 僵進程
    res 物理內存大小
    按shift + m 改為按照內存使用率排序
    按1切換不同cpu情況
    top -c查看具體進程命令(帶路徑)
    top -bn1 靜態顯示
    技術分享圖片
    技術分享圖片

  • sar
    yum install -y sysstat
    /var/log/sa/ 保存每天的歷史記錄,自動命名sa[日期] (如sa17 sa31)保存一個月,sa開頭文件是二進制文件,不能直接查看,還會生成sar開頭文件,可以cat

    sar -n DEV 1 4 每1s查看網卡流量,共4次
    IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
    網卡名 接收速率 發送速率 接收速率 發送速率
    (包) (包) (kB) (kB)
    正常幾k
    sar -q 1 4 查看系統負載(1s 4次)
    sar -b 1 4 查看讀寫情況(1s 4次)
    技術分享圖片

  • nload
    yum -y install nload
    查看當前網絡傳輸狀態
    進入後按左右方向鍵切換網卡
    技術分享圖片

  • 監控磁盤性能
    iostat -x 磁盤使用
    %util 等待磁盤讀寫時間百分比
    技術分享圖片
    技術分享圖片
    iotop 磁盤使用
    yum install -y iotop

  • free
    查看內存使用情況
    技術分享圖片
    -m 指定以M為單位顯示
    -h 匹配合適單位顯示
    buff/cache 預分配內存給這兩個需求
    buff 緩沖, 緩沖區,用於存儲速度不同步的設備或優先級不同的設備之間傳輸數據;通過buffer可以減少進程間通信需要等待的時間,當存儲速度快的設備與存儲速度慢的設備進行通信時,存儲慢的數據先把數據存放到buffer,達到一定程度存儲快的設備再讀取buffer的數據,在此期間存儲快的設備CPU可以幹其他的事情
    cache 緩存,是高速緩存,是位於CPU和主內存之間的容量較小但速度很快的存儲器,因為CPU的速度遠遠高於主內存的速度,CPU從內存中讀取數據需等待很長的時間,而 Cache保存著CPU剛用過的數據或循環使用的部分數據,這時從Cache中讀取數據會更快,減少了CPU等待的時間,提高了系統的性能
    http://blog.csdn.net/caoshuming_500/article/details/7332561

  • ps
    ps aux 列出進程情況
    技術分享圖片
    STAT下選項
    D 不能中斷的進程
    R run狀態進程
    S sleep狀態進程
    T 暫停的進程
    Z 僵屍進程

    • 前臺進程
      < 高優先級進程
      N 低優先級進程
      L 內存中被鎖內存分頁
      s 主進程
      l 多線程進程(小寫的L)
      ps aux |grep mysql 檢查進程mysql是否運行
      ps -elf
      技術分享圖片
      PID 進程id
      kill [id number] 結束進程
  • 查看網絡狀態
    netstat
    技術分享圖片
    netstat -lnp 查看監聽端口
    技術分享圖片
    sshd 連接端口 22
    master 發郵件端口 25
  • netstat -an 所有連接端口
    技術分享圖片
    netstat -an |awk ‘/^tcp/ {++sta[$NF]} END {for(key in sta) print key,"\t", sta[key]}‘
    tcp握手狀態統計
    ESTABLISHED狀態的數量表明有多少客戶端同時通信

    1. linux下抓包
      yum install -y tcpdump
      tcpdump -nn -i ens33
      -nn 數字顯示ip地址:端口(沒有此項顯示主機名)
      -i 指定網卡
      技術分享圖片
      從源ip:端口 > 目標ip:端口
      tcpdump -nn port [n] 指定端口數字
      tcpdump -nn not port [n] and host [ip address] 指定端口非n,以及指定主機
      -c 100 指定抓100個
      -w [filename] 將捕獲的數據存至文件(不能cat,需要用tcpdump -r看)

    命令tshark
    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"
    可以查看訪問網站的鏈接

    1. 網絡相關
      ifconfig 查看網絡IP
      ifdown ens33 關掉指定(ens33)網卡
      ifup ens33 開啟指定網卡
      增加虛擬網卡:
      技術分享圖片
      技術分享圖片
      技術分享圖片
      技術分享圖片
      mii-tool ens33 查看網絡是否連接
      ethtool ens33
      技術分享圖片
      /etc/resolv.conf DNS配置文件路徑
      技術分享圖片
      更改在/etc/sysconfig/network-scripts/ifcfg-ens33

    Day10-2 日常運維 1