如何将 .jar 上传到 AWS EC2 并重新启动它所在的 JVM 运行?
How to upload .jar to AWS EC2 and restart JVM in which it's running?
我是 Amazon Web Services 的新手,我想了解将 .jar 工件上传到 EC2 的最佳方法。
我有一个 EC2 Linux 实例,上面有 Java 服务器 运行ning。我想要一种简单而优雅的方式来更新服务器。至于现在,我必须通过 SSH 终止服务器,通过 SFTP 上传新的 .jar,然后 运行 通过 SSH 再次服务器。
是否有比仅编写上述脚本更好、更具可扩展性的解决方案?
如果它有任何意义,我使用 IntelliJ IDEA,所以它的插件也适合。
或者可能有一个框架接管更新?
您可以在每个 EC2 实例上尝试一个 cron 运行,它会检查新的 JAR 文件(在 S3 存储库中)并在每次更新时重新启动您的 JVM。有点 hacky 但绝对比为每个实例执行脚本更具可扩展性(特别是如果你想在未来使用自动缩放组)
根据您需要解决方案的重量级,我会给 CodeDeploy 看看这个:http://aws.amazon.com/codedeploy/details/
如果你想要更轻量的东西:
- 你可以看看 Ansible
- 您可以查看定期拉取 jar 的 cron-job,它与 运行 stops/copies/starts 服务相比是新的。
- 如果我们谈论的是几台机器,那么只使用 SSH 没有任何问题。
如果您正在开发相对较小的应用程序并且想在 400 美元 windows 笔记本电脑上快速完成它:
- 从 aws 获取密钥...进行转换。
- 设置第 1 步中的腻子。
- 安装 winscp 导入 putty 连接
- 运行 winscp ... 点击 winscp 中的 aws ec2 实例。
- 将 springboot jar 拖放到 aws。
---结束---
我是 Amazon Web Services 的新手,我想了解将 .jar 工件上传到 EC2 的最佳方法。
我有一个 EC2 Linux 实例,上面有 Java 服务器 运行ning。我想要一种简单而优雅的方式来更新服务器。至于现在,我必须通过 SSH 终止服务器,通过 SFTP 上传新的 .jar,然后 运行 通过 SSH 再次服务器。
是否有比仅编写上述脚本更好、更具可扩展性的解决方案?
如果它有任何意义,我使用 IntelliJ IDEA,所以它的插件也适合。 或者可能有一个框架接管更新?
您可以在每个 EC2 实例上尝试一个 cron 运行,它会检查新的 JAR 文件(在 S3 存储库中)并在每次更新时重新启动您的 JVM。有点 hacky 但绝对比为每个实例执行脚本更具可扩展性(特别是如果你想在未来使用自动缩放组)
根据您需要解决方案的重量级,我会给 CodeDeploy 看看这个:http://aws.amazon.com/codedeploy/details/
如果你想要更轻量的东西:
- 你可以看看 Ansible
- 您可以查看定期拉取 jar 的 cron-job,它与 运行 stops/copies/starts 服务相比是新的。
- 如果我们谈论的是几台机器,那么只使用 SSH 没有任何问题。
如果您正在开发相对较小的应用程序并且想在 400 美元 windows 笔记本电脑上快速完成它:
- 从 aws 获取密钥...进行转换。
- 设置第 1 步中的腻子。
- 安装 winscp 导入 putty 连接
- 运行 winscp ... 点击 winscp 中的 aws ec2 实例。
- 将 springboot jar 拖放到 aws。 ---结束---