【发布时间】:2020-09-30 05:55:26
【问题描述】:
我希望根据内存扩展我的 Compute Engine 实例,内存是 Stackdriver 中的一个代理指标。需要注意的是,在代理可以监控的 5 个状态中(缓冲、缓存、空闲、平板、已使用)see the link here,我只想查看“已使用”内存以及该值是否高于某个百分比阈值组(或每个实例也适用于我),我想自动缩放。
我已经在托管实例组的所有节点中安装了 Stackdriver Monitoring 代理,并且我能够成功地在我的监控仪表板中可视化“已用”内存,因为我非常熟悉它。
很遗憾,我无法为自动缩放执行此操作。这是我在 MIG 的自动缩放部分配置它时看到的。
在我看来,添加过滤器表达式应该可以按预期工作,因为此表达式在 Stackdriver 控制台中使用 Monitoring 信息中心可以正常工作。此外,here 提到该语法与 here 给出的 Cloud Monitoring 过滤器语法兼容。
我尝试了过滤表达式字段中语法的不同组合,但没有一个有效。请帮忙。
【问题讨论】:
-
您的指标标识符已经表明已使用的内存百分比,将相同的内容放入额外的过滤器中会不会是多余的?
-
@WilfredL.,Stackdriver 可以监控 5 个阶段的内存(缓冲、缓存、空闲、平板和已使用)。请参阅此处的链接:cloud.google.com/monitoring/api/metrics_agent#agent-memory。我只想根据“使用”的内容进行自动缩放。
-
我尝试复制并遇到同样的问题,但在自动缩放的文档中从未提及它可以以这种方式进行微调。您可能需要向 Google 打开一个公共问题跟踪器 [1],以便他们可以更好地处理此问题。 [1]issuetracker.google.com
-
好吧,在那种情况下,我真的不明白过滤器表达式的用途。
-
我能够使用的唯一通过 UI 验证的语法是
metric.label.state="used"。但是,当我这样做时,之后我收到一条错误消息,说“区域托管实例组不支持使用每组指标进行自动缩放。”。因此,如果您不使用区域实例组,它可能只适用于您的用例。
标签: google-cloud-platform google-compute-engine autoscaling stackdriver google-cloud-monitoring