Amazon ec2 如何通过AWS EC2动态资源清册获取文件系统
在使用ec2动态资源清册通过ansible设置AWS CloudWatch警报时,我发现了一个非常具体的问题 我已成功设置,以监视计算机上磁盘和RAM的使用情况 此外,我还使用ansible模块设置了RAM使用警报 我目前面临的问题是,当设置磁盘使用警报时,Amazon ec2 如何通过AWS EC2动态资源清册获取文件系统,amazon-ec2,ansible,ansible-inventory,Amazon Ec2,Ansible,Ansible Inventory,在使用ec2动态资源清册通过ansible设置AWS CloudWatch警报时,我发现了一个非常具体的问题 我已成功设置,以监视计算机上磁盘和RAM的使用情况 此外,我还使用ansible模块设置了RAM使用警报 我目前面临的问题是,当设置磁盘使用警报时,Filesystem维度参数是必需的,但变量中没有返回 我的一些机器的文件系统设置为/dev/xvda1,其他机器的文件系统设置为:/dev/disk/by uuid/abcd123-def4-… 我目前的“解决方案”如下: -name:“磁
Filesystem
维度参数是必需的,但变量中没有返回
我的一些机器的文件系统设置为/dev/xvda1
,其他机器的文件系统设置为:/dev/disk/by uuid/abcd123-def4-…
我目前的“解决方案”如下:
-name:“磁盘>60%(按固定uuid划分的文件系统)”
ec2_公制_报警:
国家:现在
名称:“{ec2_tag_name}}-磁盘”
地区:“{ec2_地区}”
尺寸:
实例id:“{ec2_id}”
山径:“/”
文件系统:'/dev/disk/by uuid/abcd123-def4-…'
名称空间:“系统/Linux”
指标:磁盘空间利用率
统计:平均值
比较:“>=”
阈值:60.0
单位:百分比
期间:300
评估周期:1
描述:磁盘利用率超过60%并持续5分钟时触发
警报动作:['arn:aws:sns:us-west-2:1234567890:slack']
何时:ec2_标签_名称在['srv1','srv2']
-名称:“磁盘>60%(文件系统/dev/xvda1)”
ec2_公制_报警:
国家:现在
名称:“{ec2_tag_name}}-磁盘”
地区:“{ec2_地区}”
尺寸:
实例id:“{ec2_id}”
山径:“/”
文件系统:'/dev/xvda1'
名称空间:“系统/Linux”
指标:磁盘空间利用率
统计:平均值
比较:“>=”
阈值:60.0
单位:百分比
期间:300
评估周期:1
描述:磁盘利用率超过60%并持续5分钟时触发
警报动作:['arn:aws:sns:us-west-2:1234567890:slack']
何时:ec2_标签_名称不在['srv1','srv2']
这两个任务之间的唯一区别是文件系统
维度和何时
条件(在
中或不在
中)
有没有办法获得
文件系统
值,这样我就可以像使用ec2\u id
一样轻松地使用它们?我最担心的是,在创建新机器时,我必须观察文件系统值,并根据这些值处理机器列表。我找不到解决这个问题的好办法,最后编写了一个bash脚本来生成包含UUID变量的YAML文件
-script:../files/get\u disk\u uuid.sh>/disk\u uuid.yml
#! /bin/bash
# get_disk_uuid.sh
echo '---'
disk_num=0
for entry in `blkid -o export -s LABEL -s UUID`; do
if [[ $entry == LABEL* ]];
then
label=${entry: 6}
elif [[ $entry == UUID* ]];
then
uuid=${entry: 5}
fi
if [ $label ] && [ $uuid ]; then
printf $label: | tr - _
printf ' '$uuid'\n'
label=''
uuid=''
elif [ $uuid ]; then
printf disk$disk_num:
printf ' '$uuid'\n'
label=''
uuid=''
fi
done
我现在正和Ansible发生同样的事情。你找到解决办法了吗?没有。仍在使用问题中提到的版本=(