abdennour.tomcat_ansible_role

Statut du Build Ansible Galaxy

tomcat-ansible-role

Rôle Ansible pour installer et configurer Apache Tomcat sur CentOS/RHEL.

Exigences

  • Versions prises en charge par ce rôle :
    • 7.0
    • 8.0
    • 8.5
    • 9.0 (9.0.1 ou plus récent)
  • CentOS/RHEL 7
  • SELinux désactivé

Installation

$ ansible-galaxy install zaxos.tomcat-ansible-role

Exemple de Playbook

- hosts: serveurs
  become: true
  vars:
    tomcat_version: 8.5.23

    tomcat_permissions_production: True
    
    tomcat_users:
      - username: "tomcat"
        password: "t3mpp@ssw0rd"
        roles: "tomcat,admin,manager,manager-gui"
      - username: "exempleutilisateur"
        password: "us3rp@ssw0rd"
        roles: "tomcat"        
  roles:
    - role: zaxos.tomcat-ansible-role

Variables de Rôle

La variable principale :

  • tomcat_version: version de tomcat à installer

Certaines variables à examiner :

  • tomcat_install_java: True
    Par défaut, OpenJDK Java sera installé. Changez-le à "False" si vous ne souhaitez pas qu'OpenJDK soit installé par ce rôle.
  • tomcat_java_version: 1.8
    Version d'OpenJDK à installer. La valeur par défaut est "1.8". La dernière version actuelle est "11".
  • tomcat_install_path: /opt
    Dossier d'installation de tomcat. Valeur par défaut : "/opt".
  • Gestion de la mémoire JVM :
    Vous pouvez définir la taille de la mémoire minimale et maximale avec les variables JVM -Xms et -Xmx comme un pourcentage de la mémoire totale du système. Par exemple, pour un système avec 2 Go de RAM, en utilisant les valeurs par défaut : Xms=307m (15 % de 2048 Mo), Xmx=1126m (55 % de 2048 Mo).
    • tomcat_jvm_memory_percentage_xms: 15
    • tomcat_jvm_memory_percentage_xmx: 55
  • tomcat_allow_manager_access_only_from_localhost: False
    Si réglé sur "True", l'application de gestion tomcat sera accessible uniquement depuis localhost pour des raisons de sécurité. (Ce comportement est par défaut pour les versions Tomcat 8.5 et 9.0)
  • tomcat_allow_host_manager_access_only_from_localhost: False
    Si réglé sur "True", l'application de gestion des hôtes tomcat sera accessible uniquement depuis localhost pour des raisons de sécurité. (Ce comportement est par défaut pour les versions Tomcat 8.5 et 9.0)
  • tomcat_users: Liste des utilisateurs tomcat à créer. Voir l'exemple pour le format attendu.
  • tomcat_debug_mode: False
    Changez-le à "True" pour configurer tomcat afin de permettre le débogage à distance. Le port de débogage par défaut est tcp/8000 (vous pouvez le changer avec la variable correspondante).

Permissions de fichier :

  • tomcat_permissions_production: False
    Pour une installation en production, réglez cette variable sur "True" pour une sécurité plus stricte. Pour un développement ou une installation à faible sécurité, réglez-la sur "False". La valeur par défaut est "False".
    • Si réglé sur "True", tous les fichiers tomcat appartiennent à root avec le groupe tomcat. Le propriétaire a des privilèges de lecture/écriture, le groupe n'a que des droits de lecture, et le monde n'a aucune permission. Les exceptions sont les journaux, le temp et le dossier de travail qui appartiennent à l'utilisateur tomcat plutôt qu'à root.
    • Si réglé sur "False", tous les fichiers tomcat sont la propriété de tomcat avec le groupe tomcat. Le propriétaire et le groupe ont des privilèges de lecture/écriture, et le monde n'a que des permissions de lecture.
  • tomcat_webapps_auto_deployment: True
    Pour une meilleure sécurité, l'auto-déploiement devrait être désactivé et les applications web devraient être déployées sous forme de répertoires éclatés. Si l'auto-déploiement est désactivé, réglez ceci sur "False". Cette variable n'a de sens que pour une installation en production (si tomcat_permissions_production est "True"). La valeur par défaut est "True".
    • Si réglé sur "True", le sous-dossier webapps appartient à tomcat avec le groupe tomcat.
    • Si réglé sur "False", le sous-dossier webapps appartient à root avec le groupe tomcat.
  • tomcat_permissions_ensure_on_every_run: True
    Si réglé sur "True", les permissions de fichier sont vérifiées à chaque exécution du playbook. Si réglé sur "False", les permissions de fichier sont définies uniquement lors de la première exécution du playbook.

Ports Tomcat :

  • tomcat_port_connector: 8080
  • tomcat_port_shutdown: 8005
  • tomcat_port_redirect: 8443
  • tomcat_port_ajp: 8009
  • tomcat_port_debug: 8000

Quelques valeurs par défaut (probablement sans besoin de modification) :

  • tomcat_service_name: tomcat
  • tomcat_service_enabled_on_startup: True
  • tomcat_java_home: /usr/lib/jvm/jre
  • tomcat_downloadURL: https://archive.apache.org/dist
  • tomcat_user: tomcat
  • tomcat_group: tomcat
  • tomcat_listen_address: 0.0.0.0
  • tomcat_temp_download_path: /tmp/ansibletomcattempdir

Modèles personnalisés pour server.xml, users.xml, fichier de service systemd, etc. :

  • Si les modèles par défaut ne répondent pas à vos besoins, vous pouvez utiliser vos propres modèles personnalisés en modifiant les variables suivantes :
    • tomcat_template_server
    • tomcat_template_users
    • tomcat_template_systemd_service
    • tomcat_template_manager_context
    • tomcat_template_host_manager_context

Variables optionnelles (par défaut non définies) :

  • Vous pouvez définir un uid utilisateur et un gid de groupe personnalisés pour une homogénéité sur plusieurs serveurs. Par exemple :
    • tomcat_user_uid: 500
    • tomcat_group_gid: 500

En cas de désinstallation :

  • tomcat_state: absent
    • Pour désinstaller tomcat installé avec ce rôle, réglez cette variable sur "absent". La valeur par défaut est "present".
  • tomcat_uninstall_create_backup: True
    Par défaut, pour être prudents, une archive de sauvegarde tar sera créée au chemin "tomcat_install_path" avant la suppression.
  • tomcat_uninstall_remove_java: False
    Changez-le à "True" pour désinstaller Java après la désinstallation de tomcat.
  • Par défaut, l'utilisateur et le groupe tomcat seront supprimés. Changez sur "False" pour les conserver après la désinstallation de tomcat.
    • tomcat_uninstall_remove_user: True
    • tomcat_uninstall_remove_group: True
  • tomcat_uninstall_remove_all: False
    Pour rétrograder les valeurs ci-dessus et tout désinstaller, réglez-le sur "True".

Variables pour un environnement distant déconnecté :

  • tomcat_remote_is_disconnected: False Changez-le à "True" si votre hôte distant (hôte géré) est hors ligne et ne peut pas accéder à Internet.
À propos du projet

Ansible role to install and configure Apache Tomcat on CentOS/RHEL

Installer
ansible-galaxy install abdennour.tomcat_ansible_role
Licence
gpl-2.0
Téléchargements
113
Propriétaire
Former full stack developer, switched to the dark-side of DevOps!