更新:好吧,很奇怪,我的实例公共 DNS 似乎发生了变化?可能吗?现在我可以在更改为新的 DNS 后通过 ssh 登录。但仍然无法通过基于浏览器的连接通过 ssh 登录。
我有一个 ubuntu 18 的 ec2 t2.micro 实例,每次我重建它并让它再次运行时,它都会不断重复同样的问题。我正在运行以下命令pm2 deploy ecosystem.config.js development
PM2 是一个节点包,它始终为我运行节点服务器,它允许部署到一个实例,在该实例中,它使用 ssh,拉下存储库,并运行节点,它可以从我的 github 存储库中提取。
这是带有配置的 Ecosystem.js 文件
module.exports = {
apps: [
{
name: "app",
script: "npm",
args: "start",
watch: false,
env: {
NODE_ENV: "development",
MY_SANITY_TOKEN:
"obsf",
},
},
],
deploy: {
development: {
user: "ubuntu",
host: "obsf.compute-1.amazonaws.com",
ref: "origin/development",
repo: "[email protected]:name/website-gatsby-main.git",
path: "/home/ubuntu/deploy",
"pre-deploy-local": "",
"post-deploy":
"npm install && pm2 reload ecosystem.config.js --env development && npm install -g gatsby-cli",
"pre-setup": "",
},
},
}
现在,我第一次设置 pm2 并部署它时,它工作正常,但在几次成功部署之后,突然我无法再通过 ssh 进入我的实例。我尝试重新启动实例,我可以连接。我甚至无法使用EC2 Instance Connect (browser-based SSH connection)
我的安全组进行连接,因为我的安全组没有改变,所以 ssh 是打开的。这种情况发生在几个实例上,我不得不从头开始重建,这确实减慢了我的速度。
发生这样的事情后,我调试 ssh 问题的第一步是什么?
提前致谢