使用 SSH 连接到我的虚拟机时,当虚拟机向元数据服务器请求身份验证令牌时,该过程会无限期挂起。使用浏览器 shell(虚拟机选项卡上的 SSH 按钮)以及使用 Cloud Shell 时都会发生这种情况。这是我能够连接到的串行控制台的输出。
serialport: Connected to peerless-rite-139921.us-central1-b.wrangl-reload port 1 (session ID: 305e0a35ea71dec437aaae0302eb479de1d20562, active connections: 1).
Jul 25 18:38:34 wrangl-reload dhclient[567]: DHCPACK of 10.128.0.3 from 169.254.169.254
Jul 25 18:38:34 wrangl-reload dhclient[567]: bound to 10.128.0.3 -- renewal in 37979 seconds.
Jul 25 18:46:11 wrangl-reload collectd[692]: write_gcm: Asking metadata server for auth token
Jul 25 19:19:47 wrangl-reload systemd[1]: Starting Daily apt download activities...
Jul 25 19:19:54 wrangl-reload systemd[1]: Started Daily apt download activities.
Jul 25 19:19:54 wrangl-reload systemd[1]: apt-daily.timer: Adding 11h 43min 24.702830s random time.
Jul 25 19:19:54 wrangl-reload systemd[1]: apt-daily.timer: Adding 2h 56min 56.298278s random time.
Jul 25 19:21:11 wrangl-reload collectd[692]: write_gcm: Asking metadata server for auth token
Jul 25 19:53:11 wrangl-reload collectd[692]: write_gcm: Asking metadata server for auth token
Jul 25 20:51:11 wrangl-reload collectd[692]: write_gcm: Asking metadata server for auth token
此外,如果我尝试使用终端从我的 Mac 上使用我在本地创建的公钥进行 SSH 连接,我会得到Permission denied (publickey).
我曾尝试从其他虚拟机使用 SSH 访问服务器,这也导致了Permission denied (publickey).
磁盘未满。我尝试过startup-script
在元数据中使用,但也失败了。
防火墙规则是整个项目的,我们在同一个项目中还有另外两个虚拟机,都可以通过 SSH 访问。
答案1
经过几轮 Google 支持后,他们建议重新安装 Google Guest Environment。他们说:“它非常敏感。如果你更改单个文件的权限,它可能会崩溃。”重新安装后,问题得到解决。
https://cloud.google.com/compute/docs/images/guest-environment https://cloud.google.com/compute/docs/images/install-guest-environment#in_place