GCE - 我们无法通过端口22

时间:2016-01-17 13:56:00

标签: google-compute-engine google-cloud-platform

当我尝试通过SSH连接到Google Compute Engine上的实例时出现以下错误。

Connection Failed. We are unable to connect to the VM on port 22.

我为解决这个错误而做的步骤

  • 使用Ubuntu模板创建了一个新实例。
  • 通过SSH连接并安装了我所需的所有应用程序。
  • 删除实例但删除实例时不删除启动盘。
  • 使用已删除实例的启动盘创建新的自定义映像。
  • 使用自定义图片启动了一个新实例。
  • 点击GCE控制台的SSH链接。

这是实例的串行控制台输出。

[    0.338119] Loading compiled-in X.509 certificates
[    0.339445] Loaded X.509 cert 'Magrathea: Glacier signing key: e09b1e7e9841e9cfef256b70ab210562dab1ef68'
[    0.341236] registered taskstats version 1
[    0.342183] Key type trusted registered
[    0.342872] Key type encrypted registered
[    0.343453] AppArmor: AppArmor sha1 policy hashing enabled
[    0.344592] ima: No TPM chip found, activating TPM-bypass!
[    0.345433] evm: HMAC attrs: 0x1
[    0.345974]   Magic number: 0:206:635
[    0.346956] rtc_cmos 00:00: setting system clock to 2016-01-17 13:37:20 UTC (1453037840)
[    0.348137] BIOS EDD facility v0.16 2004-Jun-25, 0 devices found
[    0.349722] EDD information not available.
[    0.524305] input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2
[    0.525744] md: Waiting for all devices to be available before autodetect
[    0.526718] md: If you don't use raid, use raid=noautodetect
[    0.527798] md: Autodetecting RAID arrays.
[    0.528396] md: Scanned 0 and added 0 devices.
[    0.529008] md: autorun ...
[    0.529414] md: ... autorun DONE.
[    0.529988] VFS: Cannot open root device "sda1" or unknown-block(0,0): error -6
[    0.530970] Please append a correct "root=" boot option; here are the available partitions:
[    0.532106] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[    0.533250] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.19.0-43-generic #49~14.04.1-Ubuntu
[    0.534451] Hardware name: Google Google, BIOS Google 01/01/2011
[    0.535409]  ffffea0002edc240 ffff88012af0fdb8 ffffffff817afcd5 00000000000011ba
[    0.536095]  ffffffff81a7c8b8 ffff88012af0fe38 ffffffff817a9b15 ffff88012af0fdd8
[    0.536095]  ffffffff00000010 ffff88012af0fe48 ffff88012af0fde8 ffff88012af0fe38
[    0.536095] Call Trace:
[    0.536095]  [<ffffffff817afcd5>] dump_stack+0x45/0x57
[    0.536095]  [<ffffffff817a9b15>] panic+0xc1/0x1f5
[    0.536095]  [<ffffffff81d3e5f3>] mount_block_root+0x210/0x2a9
[    0.536095]  [<ffffffff81d3e822>] mount_root+0x54/0x58
[    0.536095]  [<ffffffff81d3e993>] prepare_namespace+0x16d/0x1a6
[    0.536095]  [<ffffffff81d3e304>] kernel_init_freeable+0x1f6/0x20b
[    0.536095]  [<ffffffff81d3d9a7>] ? initcall_blacklist+0xc0/0xc0
[    0.536095]  [<ffffffff817a01d0>] ? rest_init+0x80/0x80
[    0.536095]  [<ffffffff817a01de>] kernel_init+0xe/0xf0
[    0.536095]  [<ffffffff817b7658>] ret_from_fork+0x58/0x90
[    0.536095]  [<ffffffff817a01d0>] ? rest_init+0x80/0x80
[    0.536095] Kernel Offset: 0x0 from 0xffffffff81000000 (relocation range: 0xffffffff80000000-0xffffffffbfffffff)
[    0.536095] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

所以我的问题是如何通过SSH连接到我的实例,以及如何确保在创建新的自定义图像时不会再次发生。

感谢。

4 个答案:

答案 0 :(得分:0)

重新启动您的实例。它与我合作。

答案 1 :(得分:0)

我的一个GCP VM实例遇到相同的问题。我的解决方案是:

  1. 关闭实例
  2. 单击实例的“编辑”
  3. 在“自定义元数据”部分下,添加带有值的“ startup-script”键:
#! /bin/bash
sudo ufw allow 22
  1. 点击“保存”
  2. 再次启动实例,然后通过SSH进入

希望有帮助!

答案 2 :(得分:0)

请关注the documentation

  1. 创建一个新的防火墙规则并删除所有现有的防火墙
  2. 停止虚拟机
  3. 重启你的虚拟机并尝试运行 SSH

它会起作用。

答案 3 :(得分:-1)

打开google cloud-转到您的VM实例-单击“停止”-单击“开始”,提示其效果不佳... :)

此问题与SSH终端有关,因为您直接关闭ssh终端,所以在您不会出现该问题之后,使用musy tyoe“” close命令比取消浏览器选项卡:)

祝你好运。