是什么在我的实例上不断访问 Google 云元数据

What keeps accessing Google Cloud metadata on my instance

我有一个 Google 云计算实例 运行 Ubuntu 18. 我们让 wireshark 运行 跟踪另一个问题,我们注意到每分钟都有东西在访问元数据数据服务器。每分钟三个请求: GET /computeMetadata/v1/instance/virtual-clock/drift-token?alt=json&last_etag=XXXXXXXXXXXXXXXX&recursive=False&timeout_sec=60&wait_for_change=True GET /computeMetadata/v1/instance/network-interfaces/?alt=json&last_etag=XXXXXXXXXXXXXXXX&recursive=True&timeout_sec=60&wait_for_change=True GET /computeMetadata/v1/?alt=json&last_etag=XXXXXXXXXXXXXXXX&recursive=True&timeout_sec=77&wait_for_change=True

在调用案例中,wireshark 表示源是我实例的 IP,目标是 169.254.169.254,它是 Google 元数据服务器。

我没有编写任何访问服务器的代码。第一个让我觉得这是一些正在访问元数据的 Google 特定软件?但我无法证明这一点。令人担忧的是第三个响应包含 ssh 密钥。还有,每一分钟都显得过分了。

我看到另一个 post 在 /usr/share/google 中谈论脚本,但我没有那个目录。我确实看到安装了 google-fluent。我还看到了 google-cloud-sdk 的已安装快照。可能是其中之一吗?我不记得安装过它们,AFAIK,我没有使用它,所以如果是这样,卸载它有什么害处?

你没有什么可担心的。元数据服务器对您的实例是私有的。 Google VM 来宾环境软件和 Stackdriver (fluentd) 正在向元数据服务器发出请求以获取凭据、检测更改(新的 SSH 密钥)、设置时钟等。

IP 地址 169.254.169.254 是一个 IPv4 Link Local 地址。只有您的 VM 有通往该网络的路由。

Compute Engine Guest Environment

不要尝试卸载来宾环境。您可以删除 Stackdriver,但我不建议这样做。 Stackdriver 提供了非常有用的日志记录和监控功能。