【发布时间】:2018-07-18 08:19:41
【问题描述】:
我对 Amazon Web Services 非常陌生,并且一直在尝试与他们一起学习边做边学的方法。
总之,我试图为我的 web 应用程序使用弹性 beanstalk 命令行界面设置 Git。但是,我想使用我的 SSH 密钥对进行身份验证(aws-access-id,secret),并且由于我的天真和无知,我只是提供了这些信息(SSH 密钥文件),现在我无法让它工作.更具体的说明如下。
我已经设置了带有 Git 的项目目录,以便它可以工作。然后我打开 git bash 窗口 MINGW64(我在 Windows 10 上)并尝试设置 eb。
$ eb init
然后它告诉我我的凭据没有设置并要求我提供 aws-access-id 和密码。我刚刚设置了 SSH 密钥对并尝试输入这些文件;尝试有什么害处?事实证明,EB 失败。现在,这些实例似乎运行良好,在 AWS 控制台网站上查看它们的状态。但是,无论我在 bash 中输入什么:
$ eb init
$ eb status
$ eb deploy
$
没有输出。甚至没有错误。它只是默默地回到等待我的新命令。
当对这些命令使用 --debug 选项时,会返回一长串操作,以
结尾botocore.parsers.ResponseParserError: Unable to parse response (no element found: line 1, column 0), invalid XML received:
b''
我以为我可以注销或类似的东西,这样我就可以输入我从一开始就搞砸的正确凭据。我从 AWS 网页界面重新启动了 Web 应用程序并重新启动了我的 PC。没有成功。
提前致谢。
编辑: 我还尝试重新安装 awscli 和 awsebcli:
pip uninstall awsebcli
pip uninstall awscli
pip install awscli
pip install awsebcli --upgrade --user
问题仍然存在,但现在只有一个输出(以前只在 --debug 选项下看到):
$ eb init
ERROR: ResponseParserError - Unable to parse response (no element found: line 1, column 0), invalid XML received:
b''
$
【问题讨论】:
-
您能否将
--debugboto标志传递给eb <command>以查看botocore收到的看似错误的响应是什么样的?此外,请查看您的 ~/.aws/credentials 和 ~/.aws/config 文件,看看您的 SSH 密钥是否已替换 AWS ID/Secret Key。 -
@progfan 写一个答案,我可以接受。这是我修改并设置为正确值的配置文件。在那之后,它完美地工作了。谢谢!
-
太棒了,很高兴你发现了问题。
标签: amazon-web-services amazon-ec2 amazon-elastic-beanstalk ebcli