Amazon Elastic Beanstalk 腻子

Posted

技术标签:

【中文标题】Amazon Elastic Beanstalk 腻子【英文标题】:Amazon Elastic Beanstalk Putty 【发布时间】:2014-12-15 22:13:24 【问题描述】:

我已将我的 Django 项目部署到 Amazon Elastic Beanstalk。当您创建 EBS 环境时,您可以为其分配一个密钥对,并使用 Putty SSH 到 EC2 实例,一切正常,但是当您使用 git aws.push 时,尝试 SSH 到同一个会话(只需加载它在 Putty 中),不接受之前的密钥对,并返回“服务器拒绝我们的密钥”。

如果您再次为 EBS 环境分配一个新的密钥对,您可以使用 Putty 进行 SSH 并且没有任何问题,但是通过分配一个新的密钥,它会终止当前的 EC2 实例并创建一个新的实例,从而导致丢失所有您之前使用 SSH 完成的设置。

任何帮助将不胜感激。

【问题讨论】:

Elastic Beanstalk 有时可以替换 EC2 实例,因为您的实例是自动扩展组的一部分。您确定实例不是一夜之间更换的吗? 如果您不想终止之前的实例并创建一个新实例,您也可以按照此文档中的说明进行操作:docs.aws.amazon.com/AWSEC2/latest/UserGuide/… 我认为这确实很乏味。 【参考方案1】:

只需使用 CLI 工具命令:

eb ssh

从您的应用程序目录级别,您将能够 ssh 到当前和任何未来的节点实例。

【讨论】:

【参考方案2】:

首先猜测是您的 IP 地址发生了变化。许多 ISP 经常轮换您的 IP 地址。默认情况下,AWS 通过已知 IP 地址限制对特定端口的访问。假设您的公共 IP 地址已更改,您需要在每次 IP 地址更改时更新您的 AWS 安全设置。

转到您的 AWS EC2 实例列表。在顶部窗格中选择您的实例,然后在底部窗格中查找安全组,右列,向下大约五行。查看规则。确保您的机器被列为允许的入站来源。

如果您编辑规则,下拉值之一是“我的 IP”。它会将规则刷新为您当前的公共 IP 地址。

【讨论】:

我什至试过这个并在安全组中使用“所有流量”。 我很好奇,这个问题是否与您如何终止腻子有关?因为昨晚我只是让我的笔记本电脑进入睡眠模式,没有终止 putty。 不,这不会影响这个,它只是在时间到期时断开连接。 您是否更改了用户名,或者您是否使用了其他一些初始磁盘映像?对于大多数发行版,名称是“ec2-user”。一些 Redhat 镜像使用“root”,Ubuntu 使用“ubuntu”,一些 Fedora 镜像使用“fedora”。看起来像“LAMP Stack powered by Bitnami”的图像,用户名需要是“bitnami”。这不太可能,因为您已经连接,但可能值得一试。 没有。我没有改变任何东西。我在 Python 2.7 中使用 32 位 AMAZON LINUX。在这种情况下,我的用户名应该是“ec2-user”,它一直工作到昨晚。我唯一做的就是让我的笔记本电脑进入睡眠模式,然后在今天早上再次打开它。有趣的是,当我尝试用户名“root”时,它返回一条消息说您应该使用“ec2-user”登录,而当使用“ec2-user”登录时,它不接受。

以上是关于Amazon Elastic Beanstalk 腻子的主要内容,如果未能解决你的问题,请参考以下文章

在 Amazon Elastic Beanstalk 上安装 Anaconda

Amazon Elastic Beanstalk 腻子

Amazon Elastic Beanstalk 如何采用自定义 python 命令?

如何卸载 Amazon Elastic Beanstalk 命令行界面?

Elastic Beanstalk 是不是支持 Amazon 的 Aurora DB?

使用 RabbitMQ 的 Amazon Elastic Beanstalk 上的芹菜超时异常