I'm having the following error when I try to connect via SSH to my instance on Google Compute Engine.
Connection Failed. We are unable to connect to the VM on port 22.
Steps I did to get that error
This is the Serial console output for the instance.
[ 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)
So my question is how can I connect via SSH to my instance and how to make sure it doesn't happen again when I create a new custom image.
Thanks.
ssh) Could not SSH to the instance. It is possible that your SSH key has not propagated to the instance yet. Try running this command again. If you still cannot connect, verify that the firewall and instance are set to accept ssh traffic.
Select Allow all or Deny all , depending on the action, to have the rule apply to all protocols and destination ports. Define specific protocols and destination ports: Select tcp to include the TCP protocol and destination ports. Enter all or a comma-delimited list of destination ports, such as 20-22, 80, 8080 .
To connect to an instance without an external IP address, use the gcloud compute ssh command with the --internal-ip flag. In the Google Cloud console, go to the VM Instances page and find the internal IP address for the instance that you want to connect to. Connect to the instance.
I had the same issue with one of my GCP VM instance. My solution was:
#! /bin/bash
sudo ufw allow 22
Hope it helps!
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With