經常使用運維工具小結

運維經常使用工具

系統監控工具

htop命令
  • 默認支持圖形界面的鼠標操做html

  • 能夠橫向或縱向滾動瀏覽進程列表,以便看到全部的進程和完整的命令行node

  • 能夠直接經過F9殺死進程mysql

    # 安裝htop(須要安裝epel)
    $ yum -y install htop

      

安裝了htop,可是習慣於敲top命令,能夠去修改配置文件sql

$ vim /etc/bashrc
# 在最後追加這個判斷,若是存在htop,top=htop,若是沒有安裝htop,則top仍是top
if [ -f /usr/bin/htop ];then
    alias top='/usr/bin/htop'
fi

 

多功能系統信息統計工具

dstat命令
# 查看dstat支持的插件
$ dstat --list
internal:
    aio, cpu, cpu24, disk, disk24, disk24old, epoch, fs, int, int24, io, ipc, load, lock, mem, net, page, page24, proc, raw, 
    socket, swap, swapold, sys, tcp, time, udp, unix, vm
/usr/share/dstat:
    battery, battery-remain, cpufreq, dbus, disk-tps, disk-util, dstat, dstat-cpu, dstat-ctxt, dstat-mem, fan, freespace, 
    gpfs, gpfs-ops, helloworld, innodb-buffer, innodb-io, innodb-ops, lustre, memcache-hits, mysql-io, mysql-keys, 
    mysql5-cmds, mysql5-conn, mysql5-io, mysql5-keys, net-packets, nfs3, nfs3-ops, nfsd3, nfsd3-ops, ntp, postfix, power, 
    proc-count, qmail, rpc, rpcd, sendmail, snooze, squid, test, thermal, top-bio, top-bio-adv, top-childwait, top-cpu, 
    top-cpu-adv, top-cputime, top-cputime-avg, top-int, top-io, top-io-adv, top-latency, top-latency-avg, top-mem, top-oom, 
    utmp, vm-memctl, vmk-hba, vmk-int, vmk-nic, vz-cpu, vz-io, vz-ubc, wifi

  

# 經常使用參數vim

  • -l: 顯示負載均衡統計量 至關於 uptimebash

  • -m: 顯示內存使用率(used,buffer,cache,free)服務器

  • -r: 顯示I/0統計(read, write)網絡

  • -s: 顯示交換分區使用狀況(used, free)app

  • -t: 顯示當前時間負載均衡

  • --fs: 顯示文件系通通計數據(files,inodes)

  • --socket:顯示網絡統計數據(tot,tcp,udp,raw,frg)

  • --tcp:顯示經常使用的TCP統計(lis,act,syn,tim,clo)

  • --udp: 顯示監聽的UDP接口及其當前用量的一些動態數據(lis,act)

 

經常使用的插件

  • --disk-util : 顯示每塊磁盤的util

  • --proc-count:顯示正在運行的程序數量

  • --top-bio:顯示塊I/O最大的進程

  • --top-cpu:顯示CPU佔用最大的進程

  • --top-mem:顯示佔用最多內存的進程

  • --output:輸出到指定的csv文件中

 

$ dstat --top-mem --top-io --top-cpu

  

資源監控工具

glances命令

支持服務器/客戶端的模式,實現遠程監控。監控端口是61209

被監控端:glances -s 監控端:glacens -c ip

#左上角表示 Connected to 10-13-169-122

批量管理主機工具

  • ansible

 

網絡監測工具

ethtool命令
 # 查看網卡中 接收模塊RX、發送模塊TX和Autonegotiate模塊的狀態:啓動on 或 停用off 部分網卡驅動不支持
ethtool -a|--show-pause devname
# 修改網卡中 接收模塊RX、發送模塊TX和Autonegotiate模塊的狀態。
ethtool -A|--pause devname [autoneg on|off] [rx on|off] [tx on|off]
# 顯示網卡驅動信息,如驅動名稱、版本等
ethtool -i|--driver devname
# 顯示register dump信息
ethtool -d|--register-dump devname [raw on|off] [hex on|off] [file name]
# 顯示EEPROM dump信息
ethtool -e|--eeprom-dump devname [raw on|off] [offset N] [length N]
# 修改網卡EEPROM byte。
ethtool -E|--change-eeprom devname [magic N] [offset N] [length N] [value N]
# 顯示網卡Offload參數狀態
ethtool -k|--show-features|--show-offload devname
# 修改網卡Offload參數狀態
ethtool -K|--features|--offload devname feature on|off ...
# 用於區別不一樣ethX對應網卡的物理位置,經常使用的方法是使網卡port上的led不斷的閃;N指示了網卡閃的持續時間,以秒爲單位。
ethtool -p|--identify devname [N]
# 修改網卡的部分配置
ethtool -s devname [speed N] [duplex half|full] [port tp|aui|bnc|mii] [mdix auto|on|off] [autoneg on|off] [advertise N]
           [phyad N] [xcvr internal|external] [wol p|u|m|b|a|g|s|d...]  [sopass xx:yy:zz:aa:bb:cc] [msglvl N | msglvl type
              on|off ...]
# 網卡執行自我檢測,有兩種模式: offline or online
 ethtool -t|--test devname [offline|online|external_lb]
# 查看機器上網卡的速度
$ ethtool eth0
···
Speed: 1000Mb/s
····
# 中止網卡的發送模塊TX:
$ ethtool -A tx off eth0
# 查看網卡採用何種驅動
$ ethtool -i eth0
driver: r8169 ​ version: 2.3LK-NAPI ​ 
firmware-version: rtl8168g-2_0.0.1 02/06/13 ​ 
expansion-rom-version: ​ bus-info: 0000:02:00.0 ​ 
supports-statistics: yes ​ supports-test: no ​ 
supports-eeprom-access: no ​ 
supports-register-dump: yes ​ 
supports-priv-flags: no 
# 強制eth0網卡運行在百兆模式下
$ ethtool -s eth0 speed 100
iptraf-ng命令
參數 做用
-i iface 網絡接口:當即在指定網絡接口上開啓IP流量監測,interface爲all,指監視全部的網絡接口
-g 當即開始生產網絡接口的概要狀態信息
-d iface 網絡接口:在指定網絡接口上開啓監視明細的網絡流量信息
-s iface 網絡接口:在指定網絡接口上當即開始監視TCP和UDP網絡流量信息
-z iface 網絡接口:在指定網絡接口上顯示包計數
-l iface 網絡接口:在指定網絡接口上當即開始監視局域網工做站信息
-t timeout 指定iptraf-ng指令監視的時間,timeout指監視時間的minute數
-B 將標準輸出重定向到'/dev/null',關閉標準輸入,做爲後臺程序運行
-L logfile 指定一個文件記錄全部命令行的log,默認文件地址是: /var/log/iptraf
-l interval 指定記錄log的時間間隔(單位:minute)
-u 容許使用不支持的接口做爲以太網設備
-f 清空全部計數器

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

網絡測試工具

ss命令
參數 做用
-H 不顯示標題行
-n 不解析服務名稱
-r 解析數字地址和端口
-a 顯示全部套接字
-l 僅顯示監聽的套接字
-o 顯示計時器信息
-e 顯示套接字的信息
-t 僅顯示tcp
-u 僅顯示udp
-4 僅顯示IPv4地址
-6 僅顯示IPv6地址

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 文件打開工具

lsof命令
$ lsof 
COMMAND     PID   TID              USER   FD      TYPE             DEVICE   SIZE/OFF       NODE NAME
systemd       1                    root  cwd       DIR              253,0        280         96 /
systemd       1                    root  rtd       DIR              253,0        280         96 /
systemd       1                    root  txt       REG              253,0    1612152  537637702 /usr/lib/systemd/systemd
systemd       1                    root  mem       REG              253,0      20112  536898500 /usr/lib64/libuuid.so.1.3.0
systemd       1                    root  mem       REG              253,0     261456  536898671 /usr/lib64/libblkid.so.1.1.0
systemd       1                    root  mem       REG              253,0      90664  536898217 /usr/lib64/libz.so.1.2.7
systemd       1                    root  mem       REG              253,0     157424  536898506 /usr/lib64/liblzma.so.5.2.2
systemd       1                    root  mem       REG              253,0      23968  536898531 /usr/lib64/libcap-ng.so.0.0.0
systemd       1                    root  mem       REG              253,0      19896  536898336 /usr/lib64/libattr.so.1.1.0

輸出內容詳解:

  • COMMAND:進程的名稱

  • PID:進程標識符

  • TID:線程標識符

  • USER:進程全部者

  • FD:文件描述符

    • cwd:表示current work directory,應用程序的當前工做目錄,這是該應用程序啓動的目錄。

    • txt:該類型文件是程序代碼,如應用程序二進制文件自己或者共享庫。

    • lnn:library reference(AIX)

    • er:FD information error(see NAME column)

    • jld:jail directory(FreeBSD)

    • ltx:shared library text(code and data)

    • mxx:hex memory-mapped type number xx

    • m86:DOS Merge mapped file

    • mem:memory-mapped file

    • mmap:memory-mapped device

    • pd:parent directory

    • rtd:root directory

    • v86:VP/ix mapped file

    • 0:表示標準輸出

    • 1:表示標準輸入

    • 2:表示標準錯誤

  • TYPE:文件類型,常見的文件類型有如下幾種:

    • DIR:表示目錄

    • CHR:表示字符類型

    • BLK:塊設備類型

    • UNIX:Unix域套接字

    • FIFO:先進先出(FIFO)隊列

    • IPv4:網際協議(IP)套接字

  • DEVICE:指定磁盤的名稱

  • SIZE/OFF:文件的大小

  • NODE:索引節點(文件在磁盤上的標識)

  • NAME:打開文件的確切名稱

 

參數 做用
-a 使用AND邏輯,合併選項輸出內容
-c 列出名稱以指定名稱開頭的進程打開的文件
-d 列出打開指定文件描述符的進程
+d 列出目錄下被打開的文件
+D 遞歸列出目錄下被打開的文件
-n 列出使用NFS的文件
-u 列出指定用戶打開的文件
-p 列出指定進程號所打開的文件
-i 列出打開的套接字

 

 

 

 

 

 

 

 

 

 

 

 

 

 

診斷工具

strace命令

tcpdump命令

能夠結合WireShark很好的分析數據包

相關文章
相關標籤/搜索