设为首页 收藏本站
查看: 1918|回复: 0

[经验分享] cacti运维手册

[复制链接]

尚未签到

发表于 2019-1-9 10:50:10 | 显示全部楼层 |阅读模式
cacti运维手册

  
  1      前言
  1.1  系统功能概述
  cacti是通过 snmpget来获取数据,使用 RRDtool绘画图形,而且你完全可以不需要了解RRDtool复杂的参数。它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结构、host以及任何一张图,还可以与LDAP结合进行用户验证,同时也能自己增加模板,功能非常强大完善。界面友好。软件 Cacti 的发展是基于让 RRDTool 使用者更方便使用该软件,除了基本的 Snmp 流量跟系统资讯监控外,Cacti 也可外挂 Scripts 及加上 Templates 来作出各式各样的监控图。
  2      系统架构
  2.1  服务器架构图
  l  这里是使用nginx+cacti架构,图如下(图1):

  图1
  l  架构图解析
  1 cacti是通过web访问的监控程序,所以需要依赖web服务,这里使用nginx来做web服务。
  2 cacti是拿取被监控机的snmp协议端口的信息数据来画图监控。
  3 cacti模板和rra 文件存入mysql数据库中。
  2.2  cacti架构图
  l  cacti工作流程架构图如下(图2):

  图2
  l  架构图解析
  通过上图我们可以发现Cacti 有三大组件:MySQL 数据库、RRDtool 工具、Net-Snmp 程序。MySQL并不负责监控数据的存储,只保存模板和rra 文件与主机对应等信息,而真正的监控数据存储和图像展现都是rrdtool 来做的。而Net-SNMP 负责数据的采集。
  cacti是用php语言实现的一个软件,它的主要功能是用snmp服务获取数据,然后用rrdtool储存和更新数据,当用户需要查看数据的时候用rrdtool生成图表呈现给用户。因此,snmp和rrdtool是cacti的关键。Snmp关系着数据的收集,rrdtool关系着数据存储和图表的生成。
  Mysql配合PHP程序存储一些变量数据并对变量数据进行调用,如:主机名、主机ip、snmp团体名、端口号、模板信息等变量。
  snmp抓到数据不是存储在mysql中,而是存在rrdtool生成的rrd文件中(在cacti根目录的rra文件夹下)。rrdtool对数据的更新和存储就是对rrd文件的处理,rrd文件是大小固定的档案文件(Round Robin Archive),它能够存储的数据笔数在创建时就已经定义。
  3      安装配置
  3.1  安装配置nginx
  3.1.1      安装依赖程序
  l  yum安装部分
  yum install -y pcre  pcre-devel  gd  gd-devel  GeoIP  GeoIP-devel  gcc-c++
  l  编译安装部分
  安装libunwind和google-perftools
  #  wget http://download.savannah.gnu.org/releases/libunwind/libunwind-0.99-beta.tar.gz
  #  tar -xzvf libunwind-0.99-beta.tar.gz
  #  cd libunwind-0.99-beta
  #  ./configure
  #  make
  #  make install
  #  echo "/usr/local/lib" >> /etc/ld.so.conf
  #  ldconfig
  #  wget http://down1.chinaunix.net/distfiles/google-perftools-1.9.tar.gz
  #  tar -xzvf google-perftools-1.9.tar.gz
  #  cd google-perftools-1.9
  #  ./configure
  #  make
  #  make install
  #  ldconfig
  3.1.2      创建用户和组
  # useradd -g users -s /bin/false -M webuser
  # mkdir -p /opt/nginx/temp/client_body_temp
  3.1.3      编译安装nginx
  # tar -xzvf nginx-1.6.0.tar.gz
  # cd nginx-1.6.0
  #./configure --prefix=/opt/nginx \
  --user=webuser \
  --group=users \
  --with-poll_module \
  --with-http_ssl_module \
  --with-http_realip_module \
  --with-http_addition_module \
  --with-http_geoip_module \
  --with-http_flv_module \
  --with-http_gzip_static_module \
  --with-http_secure_link_module \
  --with-http_stub_status_module \
  --http-client-body-temp-path=/opt/nginx/temp/client_body_temp \
  --http-proxy-temp-path=/opt/nginx/temp/proxy_temp \
  --http-fastcgi-temp-path=/opt/nginx/temp/fastcgi_temp \
  --http-uwsgi-temp-path=/opt/nginx/temp/uwsgi_temp \
  --http-scgi-temp-path=/opt/nginx/temp/scgi_temp \
  --with-google_perftools_module
  make
  makeinstall
  3.1.4      配置nginx
  l  修改nginx配置文件
  vi /opt/nginx/conf/nginx.conf(红色为修改部分
user  webuser users;
worker_processes  1;

#error_log  logs/error.log;
error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

pid        logs/nginx.pid;


events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

#gzip  on;
    server {
        listen       80;
        server_name  10.0.112.100;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html;
            index  index.html index.htm index.php;
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        location ~ \.php$ {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi.conf;
            fastcgi_ignore_client_abort on;
        }
   }
}
  3.1.5      启动,关闭,重新加载nginx
  l  启动nginx
  # /opt/nginx/sbin/nginx
  l  关闭停止nginx
  # /opt/nginx/sbin/nginx -s stop
  l  重新加载nginx配置
  # /usr/sbin/nginx -s reload
  至此,已经完成了nginx的安装部署。
  3.2  安装配置PHP
  3.2.1      安装依赖程序
  l  yum安装部分
  yum install libxml2-devel bzip2-devel libcurl-devel freetype-devel libpng-devel mysql-devel
  l  编译安装部分
  tar zxvf libmcrypt-2.5.7.tar.gz
  cd libmcrypt-2.5.7
  ./configure --prefix=/usr/local/libmcrytp
  make
  make install
  tar zxvf freetds-0.95rc3.tar.gz
  cd freetds-0.95rc3
  ./configure
  make
  make install
  l  库文件软连接
  ln -s /usr/lib64/mysql/libmysqlclient.so.16.0.0 /usr/lib/libmysqlclient.so
  3.2.2      编译安装php
  ./configure --prefix=/opt/php5 \
  --sysconfdir=/opt/php5/etc \
  --enable-soap \
  --enable-fpm \
  --enable-ftp \
  --enable-gd-native-ttf \
  --enable-mbstring \
  --enable-shmop=shared \
  --enable-sockets \
  --enable-sysvsem=shared \
  --enable-zip \
  --disable-ctype \
  --disable-ipv6 \
  --disable-mbregex \
  --disable-mbregex-backtrack \
  --disable-posix \
  --disable-tokenizer \
  --with-bz2=shared \
  --with-config-file-path=/opt/php5/etc \
  --with-curl \
  --with-curlwrappers \
  --with-freetype-dir=/usr \
  --with-fpm-group=users \
  --with-fpm-user=webuser \
  --with-gd \
  --with-iconv-dir=shared \
  --with-ldap-sasl=shared,/usr \
  --with-mcrypt=/usr/local/libmcrytp \
  --with-mhash=shared \
  --with-mssql=shared \
  --with-mysql=/usr \
  --with-mysqli=/usr/bin/mysql_config \
  --with-openssl \
  --with-pdo-mysql=shared \
  --with-zlib \
  --without-cdb \
  --without-pdo-sqlite \
  --with-png-dir=/usr --without-sqlite3
  make
  make install
  3.2.3      配置php
  l  拷贝配置文件
  cp /opt/php5/etc/php-fpm.conf.default  /opt/php5/etc/php-fpm.conf
  cp /usr/local/src/php-5.4.28/php.ini-production /opt/php5/etc/php.ini
  l  修改php.ini
  # vi /opt/php5/etc/php.ini
  在Dynamic Extensions 段下添加以下内容:
  extension=eaccelerator.so
  extension=memcache.so
  extension=mongo.so
  extension=redis.so
  extension=pdo_dblib.so
  extension=pdo_mysql.so
  在末尾增加以下关于eaccelerator的配置:
  short_open_tag="On"
  eaccelerator.cache_dir="/opt/php5/var/tmp/eaccelerator_cache"
  eaccelerator.debug="0"
  eaccelerator.shm_only="1"
  eaccelerator.shm_size="256"
  修改以下配置:
  default_charset = "UTF-8"
  error_log = /opt/php5/var/log/php_errors.log
  html_errors = off
  upload_max_filesize = 32M
  upload_tmp_dir = /opt/php5/var/tmp
  date.timezone="Asia/Shanghai"
  include_path = ".:/opt/php5/include/php:/opt/php5/lib/php"
  short_open_tag = On
  l  配置php-fpm服务
  # cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
  其中. /sapi/fpm/init.d.php-fpm为存放在源码包中的文件
  # chmod 755 /etc/init.d/php-fpm
  # chkconfig --add php-fpm
  # cp /opt/php5/etc/php-fpm.conf.default /opt/php5/etc/php-fpm.conf
  3.2.4      启动,关闭,重新加载php
  l  运行php
  # service php-fpm start
  l  停止php
  # service php-fpm stop
  l  重新加载php
  # service php-fpm restart
  3.3  安装配置mysql
  3.3.1      yum安装mysql
  yum install mysql-server mysql
  3.3.2      启动mysql
  /etc/ini.d/mysqld start
  3.3.3      设置用户密码
  mysqladmin -u root -p password "123456"
  3.4  安装配置cacti
  3.4.1      下载cacti
  这里下载的版本是0.8.8c
  http://www.cacti.net/downloads/cacti-0.8.8c.tar.gz
  http://www.cacti.net/downloads/ (里面可以自己选择相应版本)
  3.4.2      安装cacti
  l  解压cacti
  tar zxvf  cacti-0.8.8c.tar.gz
  l  拷贝cacti
  cp –rf cacti-0.8.8c /opt/nginx/html
  3.4.3      数据库设置
  l  导入cacti数据库
  mysql –uroot –p
  mysql> create database cacti
  mysql> quit
  tar zxvf
  mysql –uroot –p cacti < cacti.sql
  注:cacti.sql文件位置:/opt/nginx/html/cacti/cacti.sql
  l  创建cacti数据库用户
  useradd cacti
  vi /etc/passwd
  cacti:x:501:501::/home/cacti:/sbin/nologin             #设置cacti用户不可登陆,增加安全性
  mysql –uroot –p
  mysql> GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'cacti123';
  3.4.4      配置修改
  vi /opt/nginx/html/cacti/include/config.php
  $database_type = "mysql";
  $database_default = "cacti";
  $database_hostname = "127.0.0.1";
  $database_username = "cacti";
  $database_password = "cacti123";
  $database_port = "3306";
  $database_ssl = false;
  3.4.5      增加crontab
  crontab –e
  */5 * * * * /opt/php5/bin/php /opt/nginx/html/cacti/poller.php
  3.5  网页安装cacti
  注意:如果出现网页图片为x,nginx错误日志报错为这样类似:FastCGI sent in stderr: "Access to the script '/var/www/html//phpmyadmin/setup/styles.css' has been denied (see security.limit_extensions)"
  从5.3.9开始,php官方加入了一个配置"security.limit_extensions",默认状态下只允许执行扩展名为".php"的文件,造成了其他类型的文件不支持的问题。
  修改php-fpm.conf,找到security.limit_extensions把他修改为:
  security.limit_extensions=.php .html .js .css .jpg .jpeg .gif .png .htm (常用的文件扩展名)
  就解决了
  l  安装地址:http://IP/cacti/install 并按Next继续,如图(图3):

  图3
  l  选择New install 并按Next继续,如图(图4):

  图4
  l  填写正确rrdtool和php程序路径,并按Finish完成安装。如图(图5)

  图5
  3.6  登陆cacti
  l  登陆地址:http://IP/cacti/ 初始用户名:admin 初始密码:admin 如图(图6)

  图6
  l  admin用户初次登陆,会被要求强制修改密码,这里我修改密码为:123456,点击“Save(保存)”。如图(图7):

  图7
  l  这是登陆cacti界面,如图(图8):

  图8
  3.7  安装配置cacti-spine
  3.7.1      前言
  出于效率原因,在大量采集数据时使用自带的cmd.php轮询器会比较慢,1分钟1次的采集频率可能无法完成轮询所有机器。这里为了优化,采用官方推荐的spine来高效轮询。
  3.7.2      下载cacti-spine
  注:必须和cacti版本一致
  http://www.cacti.net/downloads/spine/cacti-spine-0.8.8c.tar.gz
  http://www.cacti.net/downloads/spine/(里面可以自己选择相应版本)
  3.7.3      编译安装
  tar zxvf cacti-spine-0.8.8c.tar.gz
  cd cacti-spine-0.8.8c
  ./configure
  make
  make install
  3.7.4      修改配置
  cd /usr/local/spine/etc
  cp spine.conf.dist spine.conf
  vi spine.conf
  DB_Host         127.0.0.1
  DB_Database     cacti
  DB_User         cacti
  DB_Pass         cacti123
  DB_Port         3306
  DB_PreG         0
  3.7.5      配置修改
  l  登陆cacti,选择Settings 如图(图9)

  图9
  l  然后选择poller,并在poller type 里面选择spine 并点击save保存。如图(图10):


  图10
  3.8  安装配置snmp(被监控机操作)
  3.8.1      安装snmp
  yum install net-snmp net-snmp-libs net-snmp-utils
  3.8.2      配置snmp
  vi /etc/snmp/snmpd.conf          修改下内容
  com2sec notConfigUser  192.168.0.1      123456
  cacti的IP       snmp密码
  view all    included  .1     #去掉注释
  access  notConfigGroup ""      any       noauth    exact  all none none   #改成all
  3.8.3      启动snmp
  /etc/init.d/snmpd start
  3.9  窗口界面基本操作
  3.9.1      增加主机
  l  点击devices,再点击add进入添加主机页面,如图(图11)

  图11
  l  填写主机相应信息,并保存。如图(图12,图13)

  图12

  图13
  l  再次进入主机页面,选择相应图形模板添加并保存。如图(图14)

  图14
  3.9.2      增加图形
  l  点击New Graphs进入增加图形界面,如图(图15)

  图15
  l  选择需要增加的图形,然后创建,如图(图16)

  图16
  3.9.3      创建目录树
  l  点击Graph Trees进入创建目录树。并点击Add创建。如图(图17)

  图17
  l  输入名字后,点击创建。如图(图18)

  图18
  l  然后点击Add添加主机到目录树下,如图(图19)

  图19
  l  选择host,再选择主机名,并创建,如图(图20)

  图20
  3.10   查看监控图
  直接点击graphs就可以查看监控图,如图(图21)

  图21
  4      监控IO
  4.1  前言
  监控硬盘IO这里介绍两种方法,一个是通过snmpdiskio监控IO,还一个是Cacti_Net-SNMP监控IO。推荐使用snmpdiskio,但如果这种监控方法失败或者内核已经超过2.6版本。就使用第二种方法Cacti_Net-SNMP。两种方法效果基本是一样的,看个人喜好选择吧。
  4.2  通过snmpdiskio监控IO
  4.2.1      解压snmpdiskio
  tar zxvf snmpdiskio-0.9.4.tar.gz
  4.2.2      拷贝partition.xml(监控机操作)
  cp snmpdiskio-0.9.4/partition.xml /opt/nginx/html/cacti/resource/snmp_queries/
  4.2.3      修改partition.xml
  注意:下面oid要根据实际情况更改,比如如下:
  snmpwalk -v 2c -c public 192.168.8.131 .1.3.6.1.4.1.2021.54
  UCD-SNMP-MIB::ucdavis.54.1.0 = INTEGER: 1
  UCD-SNMP-MIB::ucdavis.54.2.1.2.5.104.100.78.117.109 = STRING: "/bin/bash"
  UCD-SNMP-MIB::ucdavis.54.2.1.3.5.104.100.78.117.109 = STRING: "/usr/local/bin/snmpdiskio hdNum"
  UCD-SNMP-MIB::ucdavis.54.2.1.4.5.104.100.78.117.109 = ""
  UCD-SNMP-MIB::ucdavis.54.2.1.5.5.104.100.78.117.109 = INTEGER: 5
  UCD-SNMP-MIB::ucdavis.54.2.1.6.5.104.100.78.117.109 = INTEGER: 1
  UCD-SNMP-MIB::ucdavis.54.2.1.7.5.104.100.78.117.109 = INTEGER: 1
  UCD-SNMP-MIB::ucdavis.54.2.1.20.5.104.100.78.117.109 = INTEGER: 4
  UCD-SNMP-MIB::ucdavis.54.2.1.21.5.104.100.78.117.109 = INTEGER: 1
  UCD-SNMP-MIB::ucdavis.54.3.1.1.5.104.100.78.117.109 = STRING: "33"
  UCD-SNMP-MIB::ucdavis.54.3.1.2.5.104.100.78.117.109 = STRING: "33"
  UCD-SNMP-MIB::ucdavis.54.3.1.3.5.104.100.78.117.109 = INTEGER: 1
  UCD-SNMP-MIB::ucdavis.54.3.1.4.5.104.100.78.117.109 = INTEGER: 0
  UCD-SNMP-MIB::ucdavis.54.4.1.2.5.104.100.78.117.109.1 = STRING: "33"
  OID是.1.3.6.1.4.1.2021.54.4.1.2.5.104.100.78.117.109.1
  
  snmpwalk -v 2c -c public 192.168.8.131 .1.3.6.1.4.1.2021.55
  UCD-SNMP-MIB::ucdavis.55.1.0 = INTEGER: 1
  UCD-SNMP-MIB::ucdavis.55.2.1.2.7.104.100.73.110.100.101.120 = STRING: "/bin/bash"
  UCD-SNMP-MIB::ucdavis.55.2.1.3.7.104.100.73.110.100.101.120 = STRING: "/usr/local/bin/snmpdiskio hdIndex"
  UCD-SNMP-MIB::ucdavis.55.2.1.4.7.104.100.73.110.100.101.120 = ""
  UCD-SNMP-MIB::ucdavis.55.2.1.5.7.104.100.73.110.100.101.120 = INTEGER: 5
  UCD-SNMP-MIB::ucdavis.55.2.1.6.7.104.100.73.110.100.101.120 = INTEGER: 1
  UCD-SNMP-MIB::ucdavis.55.2.1.7.7.104.100.73.110.100.101.120 = INTEGER: 1
  UCD-SNMP-MIB::ucdavis.55.2.1.20.7.104.100.73.110.100.101.120 = INTEGER: 4
  UCD-SNMP-MIB::ucdavis.55.2.1.21.7.104.100.73.110.100.101.120 = INTEGER: 1
  UCD-SNMP-MIB::ucdavis.55.3.1.1.7.104.100.73.110.100.101.120 = STRING: "1"
  UCD-SNMP-MIB::ucdavis.55.3.1.2.7.104.100.73.110.100.101.120 = STRING: "1
  2
  3
  4
  5
  6
  7
  8
  9
  10
  11
  12
  13
  14
  15
  16
  17
  18
  19
  20
  21
  22
  23
  24
  25
  26
  27
  28
  29
  30
  31
  32
  33"
  UCD-SNMP-MIB::ucdavis.55.3.1.3.7.104.100.73.110.100.101.120 = INTEGER: 33
  UCD-SNMP-MIB::ucdavis.55.3.1.4.7.104.100.73.110.100.101.120 = INTEGER: 0
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.1 = STRING: "1"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.2 = STRING: "2"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.3 = STRING: "3"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.4 = STRING: "4"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.5 = STRING: "5"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.6 = STRING: "6"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.7 = STRING: "7"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.8 = STRING: "8"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.9 = STRING: "9"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.10 = STRING: "10"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.11 = STRING: "11"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.12 = STRING: "12"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.13 = STRING: "13"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.14 = STRING: "14"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.15 = STRING: "15"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.16 = STRING: "16"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.17 = STRING: "17"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.18 = STRING: "18"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.19 = STRING: "19"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.20 = STRING: "20"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.21 = STRING: "21"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.22 = STRING: "22"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.23 = STRING: "23"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.24 = STRING: "24"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.25 = STRING: "25"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.26 = STRING: "26"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.27 = STRING: "27"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.28 = STRING: "28"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.29 = STRING: "29"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.30 = STRING: "30"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.31 = STRING: "31"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.32 = STRING: "32"
  UCD-SNMP-MIB::ucdavis.55.4.1.2.7.104.100.73.110.100.101.120.33 = STRING: "33"
  OID是.1.3.6.1.4.1.2021.55.4.1.2.7.104.100.73.110.100.101.120
  
  snmpwalk -v 2c -c public 192.168.8.131 .1.3.6.1.4.1.2021.56
  UCD-SNMP-MIB::ucdavis.56.1.0 = INTEGER: 1
  UCD-SNMP-MIB::ucdavis.56.2.1.2.7.104.100.68.101.115.99.114 = STRING: "/bin/bash"
  UCD-SNMP-MIB::ucdavis.56.2.1.3.7.104.100.68.101.115.99.114 = STRING: "/usr/local/bin/snmpdiskio hdDescr"
  UCD-SNMP-MIB::ucdavis.56.2.1.4.7.104.100.68.101.115.99.114 = ""
  UCD-SNMP-MIB::ucdavis.56.2.1.5.7.104.100.68.101.115.99.114 = INTEGER: 5
  UCD-SNMP-MIB::ucdavis.56.2.1.6.7.104.100.68.101.115.99.114 = INTEGER: 1
  UCD-SNMP-MIB::ucdavis.56.2.1.7.7.104.100.68.101.115.99.114 = INTEGER: 1
  UCD-SNMP-MIB::ucdavis.56.2.1.20.7.104.100.68.101.115.99.114 = INTEGER: 4
  UCD-SNMP-MIB::ucdavis.56.2.1.21.7.104.100.68.101.115.99.114 = INTEGER: 1
  UCD-SNMP-MIB::ucdavis.56.3.1.1.7.104.100.68.101.115.99.114 = STRING: "ram0"
  UCD-SNMP-MIB::ucdavis.56.3.1.2.7.104.100.68.101.115.99.114 = STRING: "ram0
  ram1
  ram2
  ram3
  ram4
  ram5
  ram6
  ram7
  ram8
  ram9
  ram10
  ram11
  ram12
  ram13
  ram14
  ram15
  loop0
  loop1
  loop2
  loop3
  loop4
  loop5
  loop6
  loop7
  sr0
  sda
  sda1
  sda2
  sda3
  sdb
  sdb1
  sdb2
  dm-0"
  UCD-SNMP-MIB::ucdavis.56.3.1.3.7.104.100.68.101.115.99.114 = INTEGER: 33
  UCD-SNMP-MIB::ucdavis.56.3.1.4.7.104.100.68.101.115.99.114 = INTEGER: 0
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.1 = STRING: "ram0"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.2 = STRING: "ram1"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.3 = STRING: "ram2"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.4 = STRING: "ram3"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.5 = STRING: "ram4"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.6 = STRING: "ram5"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.7 = STRING: "ram6"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.8 = STRING: "ram7"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.9 = STRING: "ram8"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.10 = STRING: "ram9"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.11 = STRING: "ram10"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.12 = STRING: "ram11"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.13 = STRING: "ram12"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.14 = STRING: "ram13"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.15 = STRING: "ram14"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.16 = STRING: "ram15"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.17 = STRING: "loop0"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.18 = STRING: "loop1"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.19 = STRING: "loop2"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.20 = STRING: "loop3"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.21 = STRING: "loop4"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.22 = STRING: "loop5"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.23 = STRING: "loop6"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.24 = STRING: "loop7"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.25 = STRING: "sr0"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.26 = STRING: "sda"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.27 = STRING: "sda1"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.28 = STRING: "sda2"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.29 = STRING: "sda3"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.30 = STRING: "sdb"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.31 = STRING: "sdb1"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.32 = STRING: "sdb2"
  UCD-SNMP-MIB::ucdavis.56.4.1.2.7.104.100.68.101.115.99.114.33 = STRING: "dm-0"
  OID是.1.3.6.1.4.1.2021.56.4.1.2.7.104.100.68.101.115.99.114
  snmpwalk -v 2c -c pubilc 192.168.8.131 .1.3.6.1.4.1.2021.57
  UCD-SNMP-MIB::ucdavis.57.1.0 = INTEGER: 1
  UCD-SNMP-MIB::ucdavis.57.2.1.2.10.104.100.73.110.66.108.111.99.107.115 = STRING: "/bin/bash"
  UCD-SNMP-MIB::ucdavis.57.2.1.3.10.104.100.73.110.66.108.111.99.107.115 = STRING: "/usr/local/bin/snmpdiskio hdInBlocks"
  UCD-SNMP-MIB::ucdavis.57.2.1.4.10.104.100.73.110.66.108.111.99.107.115 = ""
  UCD-SNMP-MIB::ucdavis.57.2.1.5.10.104.100.73.110.66.108.111.99.107.115 = INTEGER: 5
  UCD-SNMP-MIB::ucdavis.57.2.1.6.10.104.100.73.110.66.108.111.99.107.115 = INTEGER: 1
  UCD-SNMP-MIB::ucdavis.57.2.1.7.10.104.100.73.110.66.108.111.99.107.115 = INTEGER: 1
  UCD-SNMP-MIB::ucdavis.57.2.1.20.10.104.100.73.110.66.108.111.99.107.115 = INTEGER: 4
  UCD-SNMP-MIB::ucdavis.57.2.1.21.10.104.100.73.110.66.108.111.99.107.115 = INTEGER: 1
  UCD-SNMP-MIB::ucdavis.57.3.1.1.10.104.100.73.110.66.108.111.99.107.115 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.3.1.2.10.104.100.73.110.66.108.111.99.107.115 = STRING: "0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  2807481356288
  45056
  156467200
  2807324844032
  855380480
  438969344
  416407040
  416194560"
  UCD-SNMP-MIB::ucdavis.57.3.1.3.10.104.100.73.110.66.108.111.99.107.115 = INTEGER: 33
  UCD-SNMP-MIB::ucdavis.57.3.1.4.10.104.100.73.110.66.108.111.99.107.115 = INTEGER: 0
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.1 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.2 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.3 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.4 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.5 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.6 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.7 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.8 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.9 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.10 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.11 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.12 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.13 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.14 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.15 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.16 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.17 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.18 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.19 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.20 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.21 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.22 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.23 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.24 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.25 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.26 = STRING: "2807481356288"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.27 = STRING: "45056"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.28 = STRING: "156467200"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.29 = STRING: "2807324844032"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.30 = STRING: "855380480"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.31 = STRING: "438969344"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.32 = STRING: "416407040"
  UCD-SNMP-MIB::ucdavis.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115.33 = STRING: "416194560"
  OID是.1.3.6.1.4.1.2021.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115
  
  snmpwalk -v 2c -c public 192.168.8.131 .1.3.6.1.4.1.2021.58
  UCD-SNMP-MIB::ucdavis.58.1.0 = INTEGER: 1
  UCD-SNMP-MIB::ucdavis.58.2.1.2.11.104.100.79.117.116.66.108.111.99.107.115 = STRING: "/bin/bash"
  UCD-SNMP-MIB::ucdavis.58.2.1.3.11.104.100.79.117.116.66.108.111.99.107.115 = STRING: "/usr/local/bin/snmpdiskio hdOutBlocks"
  UCD-SNMP-MIB::ucdavis.58.2.1.4.11.104.100.79.117.116.66.108.111.99.107.115 = ""
  UCD-SNMP-MIB::ucdavis.58.2.1.5.11.104.100.79.117.116.66.108.111.99.107.115 = INTEGER: 5
  UCD-SNMP-MIB::ucdavis.58.2.1.6.11.104.100.79.117.116.66.108.111.99.107.115 = INTEGER: 1
  UCD-SNMP-MIB::ucdavis.58.2.1.7.11.104.100.79.117.116.66.108.111.99.107.115 = INTEGER: 1
  UCD-SNMP-MIB::ucdavis.58.2.1.20.11.104.100.79.117.116.66.108.111.99.107.115 = INTEGER: 4
  UCD-SNMP-MIB::ucdavis.58.2.1.21.11.104.100.79.117.116.66.108.111.99.107.115 = INTEGER: 1
  UCD-SNMP-MIB::ucdavis.58.3.1.1.11.104.100.79.117.116.66.108.111.99.107.115 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.3.1.2.11.104.100.79.117.116.66.108.111.99.107.115 = STRING: "0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  0
  4083470336
  2640896
  13680640
  4066096128
  150828032
  138458112
  12132352
  8193024"
  UCD-SNMP-MIB::ucdavis.58.3.1.3.11.104.100.79.117.116.66.108.111.99.107.115 = INTEGER: 33
  UCD-SNMP-MIB::ucdavis.58.3.1.4.11.104.100.79.117.116.66.108.111.99.107.115 = INTEGER: 0
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.1 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.2 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.3 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.4 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.5 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.6 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.7 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.8 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.9 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.10 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.11 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.12 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.13 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.14 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.15 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.16 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.17 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.18 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.19 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.20 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.21 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.22 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.23 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.24 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.25 = STRING: "0"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.26 = STRING: "4083470336"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.27 = STRING: "2640896"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.28 = STRING: "13680640"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.29 = STRING: "4066096128"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.30 = STRING: "150828032"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.31 = STRING: "138458112"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.32 = STRING: "12132352"
  UCD-SNMP-MIB::ucdavis.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115.33 = STRING: "8193024"
  OID是.1.3.6.1.4.1.2021.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115

       Get SNMP Partitions
       Queries a host for a list of monitorable partitions
       .1.3.6.1.4.1.2021.55.4.1.2.7.104.100.73.110.100.101.120
       .1.3.6.1.4.1.2021.54.4.1.2.5.104.100.78.117.109.1
       hdDescr:hdIndex
       numeric
       |chosen_order_field|

      
              
                     Index
                     walk
                     value
                     input
                     .1.3.6.1.4.1.2021.55.4.1.2.7.104.100.73.110.100.101.120
              
              
                     Description
                     walk
                     value
                     input
                     .1.3.6.1.4.1.2021.56.4.1.2.7.104.100.68.101.115.99.114
              
              
                     Bytes Written
                     walk
                     value
                     output
                     .1.3.6.1.4.1.2021.57.4.1.2.10.104.100.73.110.66.108.111.99.107.115
              
              
                     Bytes Read
                     walk
                     value
                     output
                     .1.3.6.1.4.1.2021.58.4.1.2.11.104.100.79.117.116.66.108.111.99.107.115
              
      
  4.2.4      升级snmpdiskio
  由于9.4太老不支持2.6内核,需要修改升级
  vi snmpdiskio-0.9.4/snmpdiskio        将下面内容覆盖到这文件
[table][tr][td]#!/bin/bash
# $Id: snmpdiskio,v 1.5 2008/01/31 21:19:50 dverlaeckt Exp $
# snmpdiskio v0.9.6 (c) 2008 Dieter Verlaeckt
# snmpdiskio v0.9.5 (c) 2007 Pablo Destefanis
# snmpdiskio v0.9.4 (c) 2006 Mikael Fridh

# Fields in /proc/partitions (kernel 2.4)
# major minor #blocks name rio rmerge rsect ruse wio wmerge wsect wuse running use aveq

# Fields in /proc/diskstats (kernel 2.6) for disks (i.e. hda)
# major minor name rio rmerge rsect ruse wio wmerge wsect wuse running use aveq

# Fields in /proc/diskstats (kernel 2.6) for partitions (i.e. hda1)
# major minor name rio rsect wio wsect

# InBlocks = sectors written to disk
# OutBlocks = sectors read from disk

# Set default procfile for kernel 2.4
PROCFILE="/proc/partitions"
MODE="linux24"

# Probably kernel 2.6:
if [ -f /proc/diskstats ]; then
   PROCFILE=/proc/diskstats
   MODE="linux26"
fi


function hdNum()
{
       awk ' BEGIN { num=0 } $1 ~ /[0-9]+/ && $2 ~ /[0-9]+/ { num++ } END { print num } ' $PROCFILE
}

function hdIndex()
{
       awk ' BEGIN { num=0 } $1 ~ /[0-9]+/ && $2 ~ /[0-9]+/ { num++; print num } ' $PROCFILE
}

function hdDescr()
{
       if [ "$MODE" = "linux26" ]; then
               awk ' $1 ~ /[0-9]+/ && $2 ~ /[0-9]+/ { printf "%s\n", $3 }' $PROCFILE
       else
               awk ' $1 ~ /[0-9]+/ && $2 ~ /[0-9]+/ { printf "%s\n", $4 }' $PROCFILE
       fi
}

function hdInBlocks()
{
       if [ "$MODE" = "linux26" ]; then
               awk ' $1 ~ /[0-9]+/ && $2 ~ /[0-9]+/ && NF == 7 { printf "%.0f\n", $7 * 512 }
                     $1 ~ /[0-9]+/ && $2 ~ /[0-9]+/ && NF == 14 { printf "%.0f\n", $10 * 512 } ' $PROCFILE
       else
               awk ' $1 ~ /[0-9]+/ && $2 ~ /[0-9]+/ && NF == 15 { printf "%.0f\n", $11 * 512 } ' $PROCFILE
       fi
}

function hdOutBlocks()
{
       if [ "$MODE" = "linux26" ]; then
               awk ' $1 ~ /[0-9]+/ && $2 ~ /[0-9]+/ && NF == 7 { printf "%.0f\n", $5 * 512 }
                     $1 ~ /[0-9]+/ && $2 ~ /[0-9]+/ && NF == 14 { printf "%.0f\n", $6 * 512 } ' $PROCFILE
       else
               awk ' $1 ~ /[0-9]+/ && $2 ~ /[0-9]+/ && NF == 15 { printf "%.0f\n", $7 * 512 } ' $PROCFILE
       fi
}

function usage()
{
       cat > ${TMPFILE}
    echo "old_user[${a}]=${user[${a}]}" >> ${TMPFILE}
    echo "old_nice[${a}]=${nice[${a}]}" >> ${TMPFILE}
    echo "old_iowait[${a}]=${iowait[${a}]}" >> ${TMPFILE}
    echo "old_irq[${a}]=${irq[${a}]}" >> ${TMPFILE}
    echo "old_softirq[${a}]=${softirq[${a}]}" >> ${TMPFILE}
    echo "old_idle[${a}]=${idle[${a}]}" >> ${TMPFILE}
    echo "old_used[${a}]=${used[${a}]}" >> ${TMPFILE}
    echo "old_total[${a}]=${total[${a}]}" >> ${TMPFILE}
  done
}

read_tmpfile() {
  if [ -e ${TMPFILE} ]; then
    source ${TMPFILE}                   # include the vars from the tmp file
  fi
  (( DEBUG )) && cat ${TMPFILE}
}

########################
# MAIN
########################

parse_options $@

read_tmpfile

procstat=$(cat /proc/stat 2>&1)
(( DEBUG )) && echo "$procstat"
cpucount=$(( $(grep -i cpu

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-661133-1-1.html 上篇帖子: 记录一次crorsync+pacemaker+crmsh配置cacti遇到的问题 下篇帖子: Cacti Realtime不显示实时图形
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表