使用 Stackdriver 并尝试为 GCE 和 AWS 实例创建缺席警报。GCE 实例显示在下拉列表中INSTANCE_ID
,但我们没有看到我们的 AWS 实例列在该下拉列表中,即使它们正在发送日志并显示在日志查看器中。
这是否意味着在 Stackdriver 中配置的 AWS 实例无法发出缺席警报?我该如何实现此功能?
答案1
我们在 Stackdriver 服务被 Google 收购之前就已经在使用它们了。旧版 Stackdriver。
我们仍在使用它,并且为自定义指标或来自代理的指标创建警报策略没有重大问题。
如果您在 Stackdriver 界面(例如仪表板)中或在创建警报策略时看不到任何 EC2 实例,则您可能在将 AWS 帐户链接到 Stackdriver 时遇到问题。
检查您是否具有适当的 IAM 角色,该角色可授予 Stackdriver 正确的权限来执行其工作。
检查用于将您的 AWS 账户链接到 Stackdriver 的 IAM 角色中的信任关系和条件配置。
一般来说;
您必须在 Stackdriver 中正确配置您的 AWS 账户。
- 在您考虑在 AWS 实例上安装 stackdriver 代理之前,您必须采取几个步骤。
- 您必须按照以下步骤将您的 AWS 帐户链接到 StackdriverAWS 快速入门
- 注意:不要更改 GOOGLE_APPLICATION_CREDENTIALS 文件位置。保留原样即可:“/etc/google/auth/application_default_credentials.json”
- 我在这里添加了一个注释,因为我花了一些时间调试这个,显然代理并不关心这个环境变量。(至少在我写这篇文章的时候)
- 您的 AWS 帐户与 Stackdriver 之间的同步需要一些时间。请等待一小时以获取所有 Cloudwatch 指标、s3 存储桶大小等...
- 在您的实例上安装代理并等待 5-10 分钟即可开始生成内存/cpu/磁盘/等指标。
- 创建新的警报策略。
- 点击状况
- 选择度量缺失
- 选择资源类型:实例 (EC2)
- 选择单个/组或全部。(定义此警报将监控谁)
- 选择您确定应该始终拥有的 TRIGGER IF METRIC。
- 例如:“CPU 用户(代理)”
- 选择“缺席”——例如 20 分钟。
- 点击保存条件
- 添加通知方式(可以定义多种通知方式)
- 输入策略名称并单击保存政策
您可以在单个警报策略中拥有最多条件。