AWS Centos磁盘和内存监控脚本

前端之家收集整理的这篇文章主要介绍了AWS Centos磁盘和内存监控脚本前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

centos上使用AWS官方的硬盘和内存监控脚本,会发现脚本出错,无法正常工作,这是因为aws的官方文档中提到该脚本没有在centos上做过测试,并不能保证脚本能正常使用 那么该如何解决呢,需要安装以下软件:

  1. yuminstall-yperl-CPAN
  2.  
  3. exportPERL_MM_USE_DEFAULT=1
  4. #setupdefaultconfig
  5. perl-MCPAN-eshell#进入MCPANShell,自动生成默认配置,并退出
  6.  
  7. #类似于yum,下载安装各种包,需要花点时间
  8. perl-MCPAN-e'CPAN::Shell->rematein("notest","install","Bundle::CPAN")'
  9. perl-MCPAN-e'CPAN::Shell->rematein("notest","CPAN")'
  10. perl-MCPAN-e'CPAN::Shell->rematein("notest","Bundle::LWP")'
  11. perl-MCPAN-e'CPAN::Shell->rematein("notest","LWP")'
  12. perl-MCPAN-e'CPAN::Shell->rematein("notest","LWP::Protocol::https")'
  13. perl-MCPAN-e'CPAN::Shell->rematein("notest","Crypt::SSLeay")'
  14. perl-MCPAN-e'CPAN::Shell->rematein("notest","Switch")'

安装完成后,可能仍然会出现问题:

  1. Can'tlocateobjectmethod"new"viapackage"LWP::Protocol::https::Socket"

需要再次安装:

  1. cpan>
  2. installNet::HTTPS
  3. installNet::SSL
  4. installIO::Socket::SSL

但是仍然报错:

  1. [root@serveraws-scripts-mon1]#perlmon-put-instance-data.pl--mem-util
  2. ERROR:FailedtocallCloudWatch:HTTP500.Message:Can'tconnecttomonitoring.us-east-1.amazonaws.com:443
  3. (Crypt-SSLeaycan'tverifyhostnames)Net::SSLfromCrypt-SSLeaycan'tverifyhostnames;
  4. eitherinstallIO::Socket::SSLorturnoffverificationbysettingthePERL_LWP_SSL_VERIFY_HOSTNAME
  5. environmentvariableto0at/usr/local/share/perl5/LWP/Protocol/http.pmline46.

提示IO::Socket::SSL没安装,但确实是安装了;不过,根据错误提示可以设置环境变量得以解决

  1. [root@pa01aws-scripts-mon]#exportPERL_LWP_SSL_VERIFY_HOSTNAME=0
  2. [root@pa01aws-scripts-mon]#perlmon-put-instance-data.pl--mem-util
  3. SuccessfullyreportedmetricstoCloudWatch.ReferenceId:cab2a044-1515-11e7-9631-9fb8068ec2cc

再次执行就成功了;但是,注意监控脚本一般是放在crontab中执行的,因此crontab中还需要加入环境变量

  1. */5****exportPERL_LWP_SSL_VERIFY_HOSTNAME=0&&perl/opt/alarm/aws-scripts-mon/mon-put-instance-data.pl--mem-util--mem-avail--mem-used--swap-used--swap-util

猜你在找的CentOS相关文章