2017-08-11 1 views
0

Je ne connais pas Jenkins et CI/CD, donc je veux obtenir quelques conseils ici.Utilisation de Jenkins pour faire du CI/CD sur l'instance EC2

J'ai une instance EC2, sur cette instance, il aura WildFly + Appeon, que je vais déployer un fichier War sur WildFly.

Ce fichier War sera stocké dans un compartiment S3. Le travail Jenkins récupère le fichier war à partir de S3, puis passe à cette instance EC2, arrête le serveur WildFly et Appeon, remplace le fichier WAR sur l'instance EC2 et redémarre Wildfly et Appeon.

Que devrais-je savoir pour faire ce travail? Aucun conseil?

+0

vous pouvez simplement utiliser un script de ligne de commande qui a SSFE commandes cli et commandes ssh à l'intérieur de celui-ci. Jenkins peut également exécuter des commandes arbitraires. Faites juste un aws s3 cp ..... suivi par scp, suivi par le service ssh X restart. Je pense que vous êtes en sécurité en copiant le fichier puis en redémarrant le service –

Répondre

1

J'ai aussi un travail similaire dans mon environnement. Je suppose qu'il s'agit d'un environnement de production (avec deux nœuds) dans une architecture Load balanced. Pour un déploiement fluide, avant d'arrêter l'application, supprimez le noeud du pool LB en supprimant le contrôle d'intégrité LB du noeud. Assurez-vous que la connexion LB est activée. Le LB s'assurera alors que toutes les requêtes d'utilisateurs en vol à destination de ce noeud sont terminées avant de faire du noeud OutofService. À ce stade, le LB commencera également à envoyer des requêtes ultérieures d'utilisateurs au deuxième noeud derrière la LB pendant que vous terminez le déploiement sur node1.

De cette façon, les utilisateurs ne verront pas une page blanche ou 504 erreur de serveur