[英]Google Cloud Platform: how to monitor memory usage of VM instances
通过在 GCE 虚拟机中安装Stackdriver 代理,可以监控内存等其他指标。 Stackdriver 还为您提供警报和通知功能。 尽管如此,代理指标仅适用于高级帐户。
Stackdriver 代理目前仅支持监控 E2 系列的 RAM。 不支持其他实例类型,例如 N1、N2、...。
查看支持的最新文档; https://cloud.google.com/monitoring/api/metrics_gcp#gcp-compute
那么您可以使用 /proc/meminfo 虚拟文件系统来获取有关当前内存使用情况的信息。 您可以创建一个简单的 bash 脚本,从 /proc/meminfo 读取内存使用信息。 该脚本可以作为 cron 作业服务定期运行。 如果内存使用量超过给定阈值,脚本可以发送警报电子邮件。
请参阅此链接: https : //pakjiddat.netlify.app/posts/monitoring-cpu-and-memory-usage-on-linux
最新的答案在这里。
curl -sSO https://dl.google.com/cloudagents/add-monitoring-agent-repo.sh
sudo bash add-monitoring-agent-repo.sh
sudo apt-get update
sudo apt-get install stackdriver-agent
代码片段应安装最新版本的代理,但有关最新指南,您始终可以参考https://cloud.google.com/monitoring/agent/installation#joint-install 。
可以在不同位置收集指标(例如 CPU 使用率或内存使用率)。 例如,CPU 使用率是主机(带有运行虚拟机的特殊软件的机器)可以收集的一条信息。 内存使用和虚拟机的问题是,它是管理它的底层操作系统(虚拟机的操作系统)。 主机无法真正知道使用了多少,因为它在分配给该虚拟机的内存中只能看到一个字节流。
这就是为什么有一个想法在该虚拟机内安装代理,从内部收集指标并将其发送到可以解释的地方。 有许多类型的代理可用,但 Google 推广了它们自己的代理——监控代理——并且它很好地集成到整个 GCP 套件中。
代理指标页面可能有用: https : //cloud.google.com/monitoring/api/metrics_agent
您需要安装堆栈驱动程序。 请参阅: https : //app.google.stackdriver.com/? project = “您的项目名称”
Stackdriver 指标页面将提供一些指导。 您需要更改“项目名称”(例如sinuous-dog-133823 )以适合您的帐户:
此 REST 调用将为您提供 CPU 使用率。 您将需要修改参数以适应您的项目名称(例如sinuous-dog-133823 )和其他参数以满足需要。
GET /v3/projects/sinuous-cat-233823/timeSeries?filter=metric.type="agent.googleapis.com/memory/bytes_used" resource.type="gce_instance"& aggregation.crossSeriesReducer=REDUCE_NONE& aggregation.alignmentPeriod=+60s& aggregation.perSeriesAligner=ALIGN_MEAN& secondaryAggregation.crossSeriesReducer=REDUCE_NONE& interval.startTime=2019-03-06T20:40:00Z& interval.endTime=2019-03-07T02:51:00Z& $unique=gc673 HTTP/1.1
Host: content-monitoring.googleapis.com
authorization: Bearer <your token>
cache-control: no-cache
Postman-Token: 039cabab-356e-4ee4-99c4-d9f4685a7bb2
本文现已过时,因为 Stackdriver 现在是遗留代理。 这已被 Ops Agent 取代。 请阅读 GCP 上有关迁移到 Ops Agent 的最新文章
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.