使用Jenkins在EC2实例上执行CI / CD

我不知道jenkins和CI / CD,所以我想在这里得到一些build议。

我有一个EC2实例,在这个实例中,它将有WildFly + Appeon,我将在WildFly上部署一个War文件。

这个战争文件将被存储在S3桶中。 Jenkins的工作将从S3获取war文件,然后转到该EC2实例,停止WildFly服务器和Appeon,更换EC2实例上的WAR文件,然后重新启动Wildfly和Appeon。

我应该知道什么才能完成这项工作? 有什么build议?

我的环境也有类似的工作。 我假设这是一个负载均衡体系结构中的生产环境(有两个节点)。 对于正常的部署,首先在停止应用程序之前,通过将LB健康检查删除到节点,将节点从LB池中取出。 确保LB已启用连接排空。 然后LB将确保所有机上用户对该节点的请求都已完成,然后再将该节点设置为OutofService。 此时,LB在完成node1上的部署后,也将开始向LB后面的第二个节点发送后续用户请求。

这样用户将看不到白页或504服务器错误