abdennour.tomcat_ansible_role
tomcat-ansible-role
Ansible-Rolle zur Installation und Konfiguration von Apache Tomcat auf CentOS/RHEL.
Anforderungen
- Tomcat-Versionen, die von dieser Rolle unterstützt werden:
- 7.0
- 8.0
- 8.5
- 9.0 (9.0.1 oder neuer)
- CentOS/RHEL 7
- SELinux deaktiviert
Installation
$ ansible-galaxy install zaxos.tomcat-ansible-role
Beispiel-Playbook
- hosts: servers
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: "exampleuser"
password: "us3rp@ssw0rd"
roles: "tomcat"
roles:
- role: zaxos.tomcat-ansible-role
Rollenvariablen
Die Hauptvariable:
tomcat_version
: zu installierende Tomcat-Version
Einige Variablen, die überprüft werden sollten:
tomcat_install_java
: True
Standardmäßig wird OpenJDK Java installiert. Ändern Sie es auf "False", wenn Sie nicht möchten, dass OpenJDK Java von dieser Rolle installiert wird.tomcat_java_version
: 1.8
OpenJDK Java-Version, die installiert werden soll. Standard ist "1.8". Die neueste OpenJDK-Version ist derzeit "11".tomcat_install_path
: /opt
Der Ort, an dem Tomcat installiert wird. Standard ist "/opt".- JVM-Speicherverwaltung:
Sie können die minimale und maximale Speichermenge mit den JVM-Variablen -Xms und -Xmx in Prozent des gesamten Systemspeichers festlegen. Zum Beispiel für ein System mit 2 GB RAM: Xms=307m (15% von 2048MB), Xmx=1126m (55% von 2048MB).tomcat_jvm_memory_percentage_xms
: 15tomcat_jvm_memory_percentage_xmx
: 55
tomcat_allow_manager_access_only_from_localhost
: False
Wenn auf "True" gesetzt, ist die Tomcat-Manager-Anwendung nur von localhost aus zugänglich (dies ist das Standardverhalten für Tomcat 8.5 und 9.0).tomcat_allow_host_manager_access_only_from_localhost
: False
Wenn auf "True" gesetzt, ist die Tomcat-Host-Manager-Anwendung nur von localhost aus zugänglich (dies ist das Standardverhalten für Tomcat 8.5 und 9.0).tomcat_users
: Liste der zu erstellenden Tomcat-Benutzer. Siehe Beispiel für das erwartete Format.tomcat_debug_mode
: False
Ändern Sie es auf "True", um Tomcat für Remote-Debugging zu konfigurieren. Der Standard-Debug-Port ist tcp/8000 (dies kann über die entsprechende Variable geändert werden).
Dateiberechtigungen:
tomcat_permissions_production
: False
Für die Produktionsinstallation setzen Sie diese Variable auf "True" für strengere Sicherheit. Für Entwicklungs- oder weniger sicherheitsanfällige/installationen setzen Sie diese Variable auf "False". Standard ist "False".- Wenn auf "True" gesetzt, gehören alle Tomcat-Dateien dem root-Benutzer mit der Gruppe tomcat. Der Besitzer hat Lese-/Schreibrechte, die Gruppe hat nur Leserechte und andere Benutzer haben keine Berechtigungen. Die Ausnahmen sind das Protokoll-, Temp- und Arbeitsverzeichnis, die dem Tomcat-Benutzer gehören.
- Wenn auf "False" gesetzt, gehören alle Tomcat-Dateien dem Benutzern mit tomcat-Gruppe. Der Besitzer und die Gruppe haben Lese-/Schreibrechte und andere haben nur Leserechte.
tomcat_webapps_auto_deployment
: True
Zur Verbesserung der Sicherheit sollte die Autodeployment-Funktion deaktiviert und Webanwendungen als entpackte Verzeichnisse bereitgestellt werden. Wenn die Autodeployment-Funktion deaktiviert ist, setzen Sie dies auf "False". Diese Variable ist nur für die Produktionsinstallation relevant (wenn tomcat_permissions_production auf "True" gesetzt ist). Standard ist "True".- Wenn auf "True" gesetzt, gehört das Unterverzeichnis webapps dem Benutzern von tomcat mit der Gruppe tomcat.
- Wenn auf "False" gesetzt, gehört das Unterverzeichnis webapps dem root-Benutzer mit der Gruppe tomcat.
tomcat_permissions_ensure_on_every_run
: True
Wenn auf "True" gesetzt, werden die Dateiberechtigungen bei jedem Playbook-Durchlauf sichergestellt. Wenn auf "False" gesetzt, werden die Dateiberechtigungen nur gesetzt, wenn Tomcat installiert wird (beim ersten Playbook-Durchlauf).
Tomcat-Ports:
tomcat_port_connector
: 8080tomcat_port_shutdown
: 8005tomcat_port_redirect
: 8443tomcat_port_ajp
: 8009tomcat_port_debug
: 8000
Einige Standardwerte (wahrscheinlich ohne Änderungen):
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
Benutzerdefinierte Vorlagen für server.xml, users.xml, systemd-Dienstdatei usw.:
- Wenn die Standardvorlagen nicht Ihren Anforderungen entsprechen, können Sie Ihre eigenen benutzerdefinierten Vorlagen verwenden, indem Sie die folgenden Variablen ändern:
tomcat_template_server
tomcat_template_users
tomcat_template_systemd_service
tomcat_template_manager_context
tomcat_template_host_manager_context
Optionale Variablen (standardmäßig nicht definiert):
- Sie können benutzerdefinierte Benutzer-UID und Gruppen-GID für Homogenität über mehrere Server hinweg festlegen. Zum Beispiel:
tomcat_user_uid
: 500tomcat_group_gid
: 500
Im Falle einer Deinstallation:
tomcat_state
: absent- Um Tomcat zu deinstallieren, das mit dieser Rolle installiert wurde, setzen Sie diese Variable auf "absent". Der Standardwert ist "present".
tomcat_uninstall_create_backup
: True
Standardmäßig wird sicherheitshalber ein Backup-Archiv im "tomcat_install_path" vor der Löschung erstellt.tomcat_uninstall_remove_java
: False
Ändern Sie es auf "True", um Java nach der Deinstallation von Tomcat zu deinstallieren.- Standardmäßig wird der Tomcat-Benutzer und die Gruppe entfernt. Ändern Sie es auf "False", um sie nach der Deinstallation von Tomcat zu behalten.
tomcat_uninstall_remove_user
: Truetomcat_uninstall_remove_group
: True
tomcat_uninstall_remove_all
: False
Um die obigen Werte zu überschreiben und alles zu deinstallieren, setzen Sie es auf "True".
Variablen für eine getrennte Remote-Umgebung:
tomcat_remote_is_disconnected
: False Ändern Sie es auf "True", wenn Ihr Remote-Host (verwalteter Host) offline ist und keinen Internetzugang hat.
Über das Projekt
Ansible role to install and configure Apache Tomcat on CentOS/RHEL
Installieren
ansible-galaxy install abdennour.tomcat_ansible_role
Lizenz
gpl-2.0
Downloads
113
Besitzer
Former full stack developer, switched to the dark-side of DevOps!