我正在尝试配置aws cloudwatch
脚本来监控内存等。在执行脚本时我们得到以下错误并且升级了perl
包,LWP版本最新也是6但是脚本仍然失败以下错误。
我尝试将env变量设置为PERL_LWP_ENV_PROXY=1
和PERL_LWP_SSL_VERIFY_HOSTNAME=0
,但仍然失败。请帮忙。
[ec2-user @ ip-10-175-82-195 aws-scripts-mon] $ sudo ./mon-put-instance-data.pl --mem-util --mem-used --mem-avail --aws-凭证文件=。/ awscreds.template
错误:无法调用CloudWatch:HTTP 500.消息:无法连接 monitoring.ap-southeast-1.amazonaws.com:443(超时)
LWP :: Protocol :: https :: Socket:connect:timeout at /usr/local/share/perl5/LWP/Protocol/http.pm第47行。
有关详情,请运行' mon-put-instance-data.pl --help'
答案 0 :(得分:2)
PERL_LWP_ENV_PROXY=1
我想这也意味着你将http_proxy
环境变量设置为它应该使用的代理,并且除了使用这个代理之外没有办法到达目标。
$ sudo ./mon-put-instance-data.pl
使用sudo调用某些内容将以不同的权限运行它。出于安全原因,在调用程序之前,sudo之前会对环境变量进行大量清理,这可能意味着sudo运行的程序http_proxy
为空。这再次意味着它将尝试直接到达目标站点而不是使用代理,并且将在连接时超时,因为只能使用代理访问站点。
答案 1 :(得分:0)
似乎是build-essential没有安装。 请安装构建必需品。我遇到了同样的问题。构建完成后,安装所有相关的cpan模块。
sudo apt-get install build-essential
由于 阿米特
答案 2 :(得分:0)
尝试以下方法:
yum install openssl openssl-devel
perl -MCPAN -e 'install LWP::Protocol::https'
如果问题仍然存在,请尝试
perl -MCPAN -e 'install Bundle::CPAN'
perl -MCPAN -e 'install Bundle::LWP5_837'