Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Memory Google云平台:如何监控VM实例的内存使用_Memory_Google Cloud Platform_Memory Management_Google Compute Engine_Google Cloud Dataproc - Fatal编程技术网

Memory Google云平台:如何监控VM实例的内存使用

Memory Google云平台:如何监控VM实例的内存使用,memory,google-cloud-platform,memory-management,google-compute-engine,google-cloud-dataproc,Memory,Google Cloud Platform,Memory Management,Google Compute Engine,Google Cloud Dataproc,我最近执行了到谷歌云平台的迁移,我非常喜欢它 但是,我找不到一种方法来监视Dataproc VM的内存使用情况。正如您在附件中看到的,控制台提供有关CPU、磁盘和网络的利用率信息,但不提供有关内存的信息 在不知道使用了多少内存的情况下,如何理解是否需要额外的内存 您可以使用/proc/meminfo虚拟文件系统获取当前内存使用情况的信息。您可以创建一个简单的bash脚本,从/proc/meminfo读取内存使用信息。该脚本可以作为cron作业服务定期运行。如果内存使用超过给定阈值,脚本可以发送警

我最近执行了到谷歌云平台的迁移,我非常喜欢它

但是,我找不到一种方法来监视Dataproc VM的内存使用情况。正如您在附件中看到的,控制台提供有关CPU、磁盘和网络的利用率信息,但不提供有关内存的信息

在不知道使用了多少内存的情况下,如何理解是否需要额外的内存


您可以使用/proc/meminfo虚拟文件系统获取当前内存使用情况的信息。您可以创建一个简单的bash脚本,从/proc/meminfo读取内存使用信息。该脚本可以作为cron作业服务定期运行。如果内存使用超过给定阈值,脚本可以发送警报电子邮件


请参阅此链接:

通过在GCE虚拟机中安装,可以监控额外的内存。Stackdriver还为您提供了一些功能。然而,代理度量仅适用于

代理度量页面可能有用:

您需要安装stackdriver。请参阅:“您的项目名称”

stackdriver metrics页面将提供一些指导。您需要更改“项目名称”(如SINUUE-dog-133823)以适合您的账户:

此REST调用将获取cpu使用率。您需要修改参数以适应您的项目名称(如SINUUE-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
GET/v3/projects/sinuious-cat-233823/timeSeries?filter=metric.type=“agent.googleapis.com/memory/bytes\u used”resource.type=“gce\u instance”&;聚合.crossSeriesReducer=REDUCE\u NONE&;聚合。校准周期=+60s&;聚合。perSeriesAligner=ALIGN_MEAN&;secondary aggregation.crossSeriesReducer=REDUCE\u NONE&;间隔开始时间=2019-03-06T20:40:00Z&;间隔结束时间=2019-03-07T02:51:00Z&$唯一=gc673 HTTP/1.1
主持人:content-monitoring.googleapis.com
授权:持票人
缓存控制:没有缓存
邮递员代币:039cabab-356e-4ee4-99c4-d9f4685a7bb2

stackdriver代理目前仅支持对E2系列的RAM进行监控。其他实例类型,如N1、N2、,。。。不支持

请参阅支持内容的最新文档


这里是最新的答案

如何在GCP中查看内存使用情况?
  • 在虚拟机上安装代理。不到5分钟
  • 代码段应安装代理的最新版本,但有关最新指南,您可以随时参考

  • 安装完成后,一两分钟后,您应该会在GCP的监控部分看到其他指标。
  • 解释以及为什么默认情况下它是不可见的? 指标(如CPU使用率或内存使用率)可以在不同的地方收集。例如,CPU使用率是主机(运行虚拟机的带有特殊软件的机器)可以收集的一条信息。 内存使用和虚拟机的问题是,管理它的是底层操作系统(虚拟机的操作系统)。主机无法真正知道使用了多少,因为它在给该虚拟机的内存中只能看到一个字节流


    这就是为什么有这样一个想法:在虚拟机内部安装代理,从内部收集度量并将其发送到可以解释它们的地方。有许多类型的代理可用,但谷歌推出了自己的-监控代理,它很好地集成到了整个GCP套件中。

    默认情况下,虚拟机内存指标不可用,它需要云监控代理


    您显示的UI是Dataprooc,它已经安装了代理,但默认情况下已禁用,您不必重新安装它。要为Dataproc群集启用云监控代理,请在创建群集时设置
    --properties Dataproc:Dataproc.Monitoring.stackdriver.enable=true
    。然后,您可以监控VM内存并在云监控UI(尚未与Dataproc UI集成)中创建警报。

    据我所知,没有简单的方法。但是如果你把它设置得太低,你会得到一个带有具体建议的警告。卡洛斯的回答可以接受吗?如果是,请接受它,以便人们更容易找到。@skeller88我不确定它是否可以接受。我有代理,但只能记录CPU和磁盘读取。不确定他的响应中是否缺少步骤。我们是否需要在虚拟机上手动安装该步骤,或者是否有方法在创建虚拟机时请求安装该步骤?是的,必须在GCE实例中手动安装代理。如果您在创建群集时使用。我的Stackdriver代理不记录VM内存,默认情况下只记录CPU和磁盘读取。我们需要编辑一些东西来获得实例内存吗?链接不再工作了。您可以更新它吗?一些GCP环境不需要用户安装代理,例如问题中所示的Dataproc。
    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