abdennour.tomcat_ansible_role
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
: 15tomcat_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
: 8080tomcat_port_shutdown
: 8005tomcat_port_redirect
: 8443tomcat_port_ajp
: 8009tomcat_port_debug
: 8000
Quelques valeurs par défaut (probablement sans besoin de modification) :
tomcat_service_name
: tomcattomcat_service_enabled_on_startup
: Truetomcat_java_home
: /usr/lib/jvm/jretomcat_downloadURL
: https://archive.apache.org/disttomcat_user
: tomcattomcat_group
: tomcattomcat_listen_address
: 0.0.0.0tomcat_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
: 500tomcat_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
: Truetomcat_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!