PHP*_*ger 5 authentication automated-install amazon-web-services amazon-vpc elastic-beanstalk
我有一个VPC
公共和私有子网。
Nating
和Bastion
实例ec2
使用我的项目 war 文件运行 tomcat7 的3 个实例)。这 3 个实例背后是ELB
每当我想更新战争文件时,我都可以通过两种方式进行。
手动的
Bastion
服务器(只能通过 SSH 连接)我对每个实例重复上述步骤(目前有 3 个实例)
半手动 这是步骤
第一种方法很快,但需要很多手动步骤。SSH 进出实例(实例上的 SSH 仅允许来自 BASTION 服务器)。下载、停止、替换、启动。
第二种方法很慢,实际上不是自动的。旧实例终止时间 + 新实例启动时间 + 部署新战争
我想实现以下目标
有人可能会想为什么我不使用 Beanstalk,它很简单,只需上传新的战争文件,如果出现任何问题,自动升级所有具有回滚功能的实例?
这是我的原因(有些事情可能只是我的假设或缺乏知识)。
mode_jk
),然后这个 Apache 位于 ELB 之后。而且我认为 ELB->Apache-mode_jk->tomcat 的东西有点矫枉过正(我错了)。现在你知道背景了。让我们坚持我在顶部解释的示例的简单版本。
我希望升级是快速和自动的,也不想使用第三方工具与这些工具共享我的凭据(我听说过一些基于云的工具可以为您提供透明度并在您选择的云环境中执行所有任务) .
我唯一能想到的是编写一个 ANT 脚本或一些 Java 代码,它们可以执行第一种方法中解释的所有步骤。虽然不确定他们是否会被允许在 aws 上执行这些操作。
小智 0
同样的问题,花了大约两天多的时间后,我意识到有一个名为 Publish artifacts over SSH for jenkins 的插件(如果你有 CI)并做了一些配置更改以允许 NAT 与 jenkins 服务器对话,至少这解决了我。
我确实有相同的设置,作为私有子网中的服务器和公共子网中的 NAT,我从那里通过 ssh 将 war 部署到私有计算机。
希望这可以帮助!
归档时间: |
|
查看次数: |
564 次 |
最近记录: |