Comment installer Tomcat sur Ubuntu 20.04 à l’aide d’Ansible

Apache Tomcat est souvent utilisé comme serveur d’application pour les applications strictement Web. Il exécute essentiellement des servlets Java et affiche des pages Web qui incluent le codage JSP.

L’installation manuelle sur Tomcat prend du temps. En utilisant Ansible, nous pouvons facilement automatiser le processus d’installation.

Dans ce tutoriel, nous apprenons à installer Tomcat au Ubuntu 20.04 en utilisant Ansible.

Conditions préalables:

Ici, nous allons utiliser :

  • Un nœud de contrôle – où nous allons installer et configurer l’ansible. Depuis le nœud de contrôle, nous allons démarrer le playbook Ansible pour installer Tomcat 9.
  • Vous devez avoir une ouverture connexion SSH à l’hôte distant.
  • Un nœud hôte – où ansible installera et démarrera Tomcat 9.
  • Le nœud de contrôle et l’hôte ont tous deux des adresses IP privées et les deux machines sont Ubuntu 20.04

Installation d’Ansible sur le nœud de contrôle sur Ubuntu 20.04

Tout d’abord, mettez à jour votre système avec la commande standard :

$ sudo mise à jour appropriée

Après la mise à jour, installez ansible en exécutant la commande suivante :

$ sudo apt install ansible -y

Pour vérifier où l’ansible est installé et situé, exécutez la commande :

$ which ansible

Vous devriez voir quelque chose comme ceci :

Emplacement du système de fichiers Ansible

Si vous listez un répertoire dans /usr/bin

$ ls /usr/bin

Vous trouverez les packages installés Ansible :

Paquets installés avec Ansible dans /usr/binPaquets installés avec Ansible

Pour vérifier la version d’Ansible installé, exécutez la commande :

$ ansible --version

Vous obtiendrez une sortie comme celle-ci :

ansible 2.9.6
config file = /etc/ansible/ansible.cfg
configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python3/dist-packages/ansible
executable location = /usr/bin/ansible
python version = 3.8.5 (default, Jan 27 2021, 15:41:15) [GCC 9.3.0]

Comme vous pouvez le voir, en plus de la version ansible, vous obtiendrez également :

  • Où est placé le fichier de configuration ansible
  • Où est placé le chemin de recherche configuré et les modules
  • Où est l’emplacement du module python ansible
  • Emplacement de l’exécutable et version python

Le fichier de configuration principal est stocké dans /etc/ansible/hosts déposer.

Vous devez ajouter votre hôte local ou IP de serveur au fichier, ou si vous avez une adresse IP privée, vous devez l’ajouter.

Ouvrez le fichier hosts avec votre éditeur préféré :

$ sudo nano /etc/anisble/hosts

Vous verrez le fichier de configuration des hôtes, quelque chose comme ceci :

Configuration des hôtes Ansible dans /etc/ansible/hostsFichier /etc/ansible/hosts

Comme vous pouvez le voir, il y a une section qui appartient au #Ex 1 section, ajoutez-y votre adresse IP d’hôte distant sans # expression.

Ensuite, pour vérifier que vous avez un hôte avec cette adresse IP, exécutez la commande suivante :

$ sudo ansible all -i hosts --list-hosts

Vous obtiendrez la liste des hôtes, quelque chose comme cette sortie dans l’image :

Sortie des hôtes AnsibleListe des hôtes anisble

L’étape suivante consiste à ajouter la clé SSH publique du nœud de contrôle Ansible à la machine hôte distante.
Cette étape est essentielle pour permettre à Ansible d’installer Tomcat sur un serveur distant.

Générez vos clés ssh par la commande suivante :

$ sudo ssh-keygen

Après avoir généré les clés, vous verrez où sont stockées les clés. Pour nous est maintenant seulement important la clé publique.

Générer des kyps SSHClés SSH générées

Nous devons maintenant copier la clé publique sur un serveur. N’oubliez pas que nous faisons cela car nous devons autoriser Ansible à installer Tomcat sur le serveur distant à partir du nœud de contrôle.

REMARQUE: Seule la clé publique est copiée sur le serveur. La clé privée ne doit jamais être copiée sur une autre machine.

Utilisez une commande comme la suivante pour copier la clé SSH :

$ sudo ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]

Où se trouvent user=linoxide et host=IP address pour la connexion à distance SSH.

Après avoir copié la clé sur la machine distante, vous devrez entrer votre mot de passe pour la connexion ssh à distance.

Maintenant, tout est configuré et prêt à exécuter ansible-playbook.

Installer Tomcat 9 sur le nœud hôte distant à l’aide d’Ansible

Allez maintenant à /etc/ansible et y créer un fichier appelé tomcat-setup.yaml. Vous pouvez voir et copier le fichier à partir du dépôt Github:

— – nom : installez les hôtes du serveur Tomcat : tous deviennent : true tâches : – nom : installez OpenJDK apt : nom : openjdk-11-jre-headless – nom : téléchargez les packages du serveur Tomcat get_url : url : https://mirrors. estointernet.in/apache/tomcat/tomcat-9/v9.0.44/bin/apache-tomcat-9.0.44.tar.gz destination : /usr/local – nom : extraire les packages Tomcat unarchive : src : /usr/local/ apache-tomcat-9.0.44.tar.gz destination : /usr/local remote_src : oui – nom : start tomcat services shell : nohup /usr/local/apache-tomcat-9.0.44/bin/startup.sh

Comme vous pouvez le voir dans le fichier tomcat-setup.yaml, il y a quatre tâches :

1) Installer OpenJDK
2) Téléchargez les packages Tomcat Server et placez-les à l’emplacement de destination.
3) Extrayez les packages Tomcat, de la source au lieu de destination.
4) Démarrez le service Tomcat à l’aide du script startup.sh

Démarrez ansible-playbook avec la commande :

$ sudo ansible-playbook -i hosts tomcat-setup.yaml

Vous verrez quelque chose comme cette sortie :

État de sortie d'Ansible tomcat-setup.yamlstatut tomcat-setup.yaml ansible

Après avoir vérifié que tout va bien. Accédez à votre machine hôte distante et vérifiez que JAVA est installé et vérifiez si le service Tomcat s’exécute avec ces commandes :

$ sudo java -version

Sortir:

version java sur hôte distantversion java sur hôte distant

Et vérifiez si Tomcat 9 est correctement téléchargé et démarré avec la commande :

$ ps -ef | grep tomcat

Sortir:

État du service Tomcat état du service tomcat sur l’hôte distant

Visitez l’URL du serveur sur port 8080 pour tester l’installation et la configuration de Tomcat 9.

Serveur Web Tomcat :

https://<domain_or_IP_address>:8080

Tableau de bord du gestionnaire d’applications Web Tomcat :

https://<domain_or_IP_address>:8080/manager/html

Tableau de bord du gestionnaire d’hôte virtuel Tomcat :

https://<domain_or_IP_address>:8080/host-manager/html

Vous devriez maintenant pouvoir déployer votre application sur le serveur Tomcat 9 exécuté sur la machine Linux Ubuntu 20.04.

Conclusion

Dans ce didacticiel, nous avons appris à installer Tomcat 9 à l’aide d’Ansible sur le nœud distant. C’était un example comment installer un serveur Tomcat sur un seul nœud hôte à partir du nœud de contrôle. Avec Ansible, vous pouvez installer autant de serveurs Tomcat que vous le souhaitez sur autant de nœuds hôtes que vous le souhaitez.