从快照还原磁盘后,访问我的一个虚拟机(在此称为myvm1)时遇到问题。这是我昨天所做的(效果很好):
一切正常,并且可以根据需要访问disk2上的数据库数据。该磁盘上没有太多其他东西。
今天,我要做的是将disk2重命名为disk1(以避免将来Terraform设置出现问题)。我通过执行以下操作来做到这一点:
gcloud compute --project=myproject instances attach-disk myvm1 --disk disk1
此后,当我尝试ssh进入myvm1(以卸载和挂载)时,我得到了
ssh:连接到主机myvm1端口22:连接被拒绝
我试图通过以下方法解决此问题/调查:
其他信息:
ssh调用的调试信息:
me@mycomputer:~/project$ ssh myvm1 -vvv OpenSSH_7.2p2 Ubuntu-4ubuntu2.4, OpenSSL 1.0.2g 1 Mar 2016 debug1: Reading configuration data /home/me/.ssh/config debug1: Reading configuration data /etc/ssh/ssh_config debug1: /etc/ssh/ssh_config line 19: Applying options for * debug2: resolving "myvm1" port 22 debug2: ssh_connect_direct: needpriv 0 debug1: Connecting to myvm1 [10.23.0.3] port 22. debug1: connect to address 10.23.0.3 port 22: Connection refused ssh: connect to host myvm1 port 22: Connection refused
我已经看过这里提到的解决方案 Why Google Cloud Compute Engine instance gives ssh connection refused after restart? 但是由于我尚未安装/卸载任何磁盘,所以我看不出这可能是同样的问题。
非常感谢您能给我任何帮助。涉及创建新实例的解决方案无关紧要,因为我首先想知道出了什么问题,这样在生产环境中就不会发生。幸运的是,myvm1只是一个沙箱系统。
答案 0 :(得分:0)
端口22错误可能来自两个来源:防火墙未在GCP上正确设置,或者端口22不接受实例中的SSH连接。假设由于防火墙可以在其他实例上正常使用而正确设置了防火墙,请尝试使用串行控制台登录并检查您的iptable。
要连接到串行控制台,您将必须执行以下操作:
1)。激活“连接到串行控制台”按钮。
转到VM实例,单击您的VM,然后在“远程访问”区域中单击“编辑”,然后激活“启用连接到串行端口”,然后单击“保存”。
2)。创建用户名和密码。
转到Vm实例,再次单击您的Vm,进行编辑,并在自定义元数据部分中填写:
输入键:startup-script
值:
#!/bin/bash
sudo useradd -G sudo pamela
sudo echo 'pamela:pamela5' | chpasswd
(这是一个创建用户名:pamela和密码:pamela5的脚本,稍后将使用。出于安全目的,请使用其他名称)
3)。需要重新启动才能使更改生效。
答案 1 :(得分:0)
我有同样的问题。我认为快照文件已损坏。