• 常用运维工具小结


    运维常用工具

    系统监控工具

    htop命令
    • 默认支持图形界面的鼠标操作

    • 可以横向或纵向滚动浏览进程列表,以便看到所有的进程和完整的命令行

    • 可以直接通过F9杀死进程

      # 安装htop(需要安装epel)
      $ yum -y install htop

        

    安装了htop,但是习惯于敲top命令,可以去修改配置文件

    $ 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
    

      

    # 常用参数

    • -l: 显示负载均衡统计量 相当于 uptime

    • -m: 显示内存使用率(used,buffer,cache,free)

    • -r: 显示I/0统计(read, write)

    • -s: 显示交换分区使用情况(used, free)

    • -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很好的分析数据包

  • 相关阅读:
    LinkedListQueue
    LinkedListStack
    redis学习之——Redis事务(transactions)
    redis学习之——持久化RDB 和AOF
    redis学习之——redis.conf配置(基本)文件学习
    评估算法的核心指标
    Vector类
    List接口与ArrayList、LinkedList实现类
    Collection接口
    枚举类
  • 原文地址:https://www.cnblogs.com/xll970105/p/10929237.html
Copyright © 2020-2023  润新知