我在这个网站上经历过围绕这个问题的大部分问题,但似乎没有什么帮助我。基本上我要做的是通过Google提供的bdutil脚本在我的VM上实例化Hadoop实例,但问题似乎与我无法进入VM实例的事实有关。
我一直在努力解决这个问题几天,所以我非常感谢你的帮助。
以下是我遵循的步骤:
为了引导您完成我刚创建新VM的步骤
我可以通过开发人员的控制台进行SSH无问题
以下显示了系统信息和操作系统:
uname -a Linux archipelago-vm1 2.6.32-431.20.3.el6.x86_64#1 SMP Thu Jun 19 21:14:45 UTC 2014
tail / etc / redhat-release tail:inotify不能使用,恢复到pollingCentOS版本6.5(最终版)
VM已设置为允许http和https连接
在我的Windows机器上(窗口8.1专业版) 我删除了所有以前创建的SSH文件,以允许创建新文件 我还删除了项目中之前创建的所有密钥(那里有很多垃圾,因为我一直在尝试几种方法来使其工作)
然后我使用gcloud Auth Login
授权新VM此工作正常,我获得授权并登录
我可以使用gcloud计算实例列表
查看实例然后我尝试SSH进入实例
它表示它正在生成我的SSH密钥,它在我的机器和VM实例上都会生成
然而它无法SSH进入机器 注意: 我用传递短语和没有密码短语尝试了这个,在这个例子中我把它留空了
我收到的错误是不支持的身份验证方法
当我检查他们在两个地方创建的文件时 在我的机器上以及元数据/ ssh键部分中的项目
当我比较我机器上的.pub文件和vm上的密钥时,这两个密钥是相同的 我还尝试将密钥添加到特定于vm实例的SSH密钥而没有运气
这里有趣的是,当我在我的机器上使用putty时,我可以毫无问题地登录,使用 C:\ Users \ cleveen.ssh \ google_compute_engine.ppk文件
所以最初我想,没问题我只会使用我的putty,但是当我尝试运行bdutil脚本来实例化Hadoop它给了我错误,我没有通过gcutil登录并且不会运行脚本,所以我然后通过开发人员控制台登录,它仍然无法运行(相同的错误)
然后我进入sshd_config文件并允许密码登录,为我的帐户设置密码然后gcloud SSH,允许我通过密码登录没有问题。
然而,当我运行脚本时,它创建了Hadoop所需的所有实例和驱动器,但是脚本在SSH公钥错误上失败了,我永远无法完成它。
不幸的是,我没有这个脚本的日志文件,因为我删除了它们所在的实例;如果你能看到这些日志,我可以再次通过这些步骤。
然而,这一切似乎都与使用密钥文件的SSH进程不起作用
有关如果我能提供任何其他信息,请告诉我 再次感谢您对此的帮助
答案 0 :(得分:1)
所以,听起来这里有几个问题在起作用:
bdutil仍然使用gcutil ssh
而不是gcloud compute ssh
(但正在进行升级到使用gcloud compute ssh的工作),所以即使您可以配置本地环境来制作{{ 1}} work,bdutil仍需要gcloud compute ssh
才能部署Hadoop集群 - 请注意,在大多数情况下,这两个不同的命令的功能相同。
从cmd.exe或Putty运行并没有为" gcutil&#34 ;;提供充分的环境设置。传统上,指令包括安装" cygwin"提供运行Google Cloud SDK工具的posix环境。
您可以在" gcutil ssh":Unable to run gcutil from command line
中看到关于需要cygwin的相关stackoverflow帖子所以,如果你确定安装了cygwin,然后使用cygwin shell(不是cmd.exe或Putty),你可以确保" gcutil ssh"没有密码短语,那么bdutil应该从cygwin开始工作。
另一种方法是启动一个运行像debian-7这样的n1-standard-1虚拟机作为你的" bdutil跑步者",确保点击"高级设置"并启用云存储和计算引擎"服务帐户"。在那个" bdutil runner"里面,你可以配置自己的能力来实现" gcutil ssh"输入
gcutil ssh
并在提示您时保持密码为空,然后使用该VM运行部署。
答案 1 :(得分:1)
您可以通过以下方式从Windows计算机ssh到GCE实例:
答案 2 :(得分:0)
1)检查.ssh目录权限,在你的目录上尝试 sudo chmod -R 700 .ssh 可能会对你造成问题有所帮助