zaxos.tomcat-ansible-role
tomcat-ansible-role
Ansible rola do instalacji i konfiguracji Apache Tomcat na CentOS/RHEL.
Wymagania
- Wersje Tomcat wspierane przez tę rolę:
- 7.0
- 8.0
- 8.5
- 9.0 (9.0.1 lub nowsze)
- CentOS/RHEL w wersji 7 lub 8
- Wyłączony SELinux
Instalacja
$ ansible-galaxy install zaxos.tomcat-ansible-role
Przykładowy 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
Zmienne roli
Główna zmienna:
tomcat_version
: wersja tomcat do zainstalowania
Kilka zmiennych do przemyślenia:
tomcat_install_java
: True
Domyślnie będzie zainstalowane OpenJDK. Zmień na "False", jeśli nie chcesz instalować OpenJDK.tomcat_java_version
: 1.8
Wersja OpenJDK do zainstalowania, domyślnie "1.8". Aktualnie najnowsza wersja to "11".tomcat_install_path
: /opt
Miejsce, w którym zostanie zainstalowany tomcat, domyślnie "/opt".- Zarządzanie pamięcią JVM:
Możesz ustawić minimalny i maksymalny rozmiar pamięci za pomocą zmiennych JVM -Xms i -Xmx jako procent całkowitej pamięci systemu. Na przykład, dla systemu z 2GB RAM: Xms=307m (15% z 2048MB), Xmx=1126m (55% z 2048MB).tomcat_jvm_memory_percentage_xms
: 15tomcat_jvm_memory_percentage_xmx
: 55
tomcat_allow_manager_access_only_from_localhost
: False
Ustaw na "True", aby dostęp do aplikacji zarządzającej tomcatem miał tylko localhost z powodów bezpieczeństwa. (Takie zachowanie jest domyślne dla Tomcat 8.5 i 9.0)tomcat_allow_host_manager_access_only_from_localhost
: False
Ustaw na "True", aby menedżer hostów tomcat miał dostęp tylko z localhost. (Takie zachowanie jest domyślne dla Tomcat 8.5 i 9.0)tomcat_users
: Lista użytkowników tomcat do utworzenia. Zobacz przykład dla właściwego formatu.tomcat_debug_mode
: False
Zmień na "True", aby skonfigurować tomcat do zdalnego debugowania. Domyślny port debugowania to tcp/8000 (możesz to zmienić przez odpowiednią zmienną).
Uprawnienia do plików:
tomcat_permissions_production
: False
Dla instalacji na produkcji ustaw tę zmienną na "True" dla bardziej restrykcyjnego bezpieczeństwa. Dla instalacji deweloperskich lub o niższym stopniu bezpieczeństwa ustaw to na "False". Domyślnie jest "False".- Jeśli ustawisz na "True", wszystkie pliki tomcat będą należały do roota z grupą tomcat. Właściciel ma prawa do odczytu/zapisu, grupa ma tylko prawa do odczytu, a świat nie ma żadnych uprawnień. Wyjątki stanowią logi, temp i katalog roboczy, które są należące do użytkownika tomcat, a nie roota.
- Jeśli ustawisz na "False", wszystkie pliki tomcat będą należały do tomcat z grupą tomcat. Właściciel i grupa mają prawa do odczytu/zapisu, a świat ma tylko prawa do odczytu.
tomcat_webapps_auto_deployment
: True
Dla lepszego bezpieczeństwa automatyczne wdrażanie powinno być wyłączone, a aplikacje webowe powinny być wdrażane jako rozpakowane katalogi. Jeśli automatyczne wdrażanie jest wyłączone, ustaw to na "False". Ta zmienna ma sens tylko dla instalacji produkcyjnej (jeśli tomcat_permissions_production to "True"). Domyślnie jest "True".- Jeśli ustawisz na "True", subkatalog webapps należy do tomcat z grupą tomcat.
- Jeśli ustawisz na "False", subkatalog webapps należy do roota z grupą tomcat.
tomcat_permissions_ensure_on_every_run
: True
Jeśli ustawisz na "True", uprawnienia do plików będą zapewniane przy każdym uruchomieniu playbooka. Jeśli ustawisz na "False", uprawnienia do plików zostaną ustawione tylko podczas instalacji tomcat (przy pierwszym uruchomieniu playbooka).tomcat_prod_modes
:
Lista podkatalogów tomcat, tryby katalogów i tryby plików. Uprawnienia są stosowane rekurencyjnie.
tomcat_prod_modes:
- ['bin', '2750', '0640']
- ['conf', '2750', '0640']
- ['lib', '2750', '0640']
- ['logs', '0300', '0640']
- ['temp', '0750', '0640']
- ['work', '0750', '0640']
- ['webapps', '0750', '0640']
Porty Tomcat:
tomcat_port_connector
: 8080tomcat_port_shutdown
: 8005tomcat_port_redirect
: 8443tomcat_port_ajp
: 8009tomcat_port_debug
: 8000
Tomcat AJP:
tomcat_ajp_enabled
: False
Ustaw na "True", aby włączyć AJP Connector.tomcat_ajp_listen_address
: "::1"
Domyślnie, connector będzie nasłuchiwał na adresie loopback. O ile JVM nie jest skonfigurowane inaczej za pomocą właściwości systemowych, łączniki oparte na Javie (NIO, NIO2) będą nasłuchiwać zarówno na adresach IPv4, jak i IPv6, gdy są skonfigurowane z "0.0.0.0" lub "::". Łącznik APR/native będzie nasłuchiwał tylko na adresach IPv4, jeśli jest skonfigurowany z "0.0.0.0" i na adresach IPv6 (i opcjonalnie adresach IPv4, w zależności od ustawienia ipv6v6only), jeśli jest skonfigurowany z "::".tomcat_ajp_secret
: "my-@jp-s3cr3t"
Atrybut ten musi być określony jako wartość niepusta i niezerowa, chyba że "secretRequired" jest jawnie skonfigurowane jako "false". Proszę zmienić tę domyślną wartość na coś bezpiecznego.tomcat_ajp_secret_required
: True
Ustaw na "False", aby skonfigurować "secretRequired=False".
Niektóre domyślne (zapewne nie wymagające zmian):
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/ansibletomcattempdirtomcat_systemd_config_path
: /etc/systemd/system
Szablony własne dla server.xml, users.xml, pliku usługi systemd itp.:
- Jeśli domyślne szablony nie spełniają Twoich potrzeb, możesz użyć własnych szablonów, zmieniając następujące zmienne:
tomcat_template_server
tomcat_template_users
tomcat_template_systemd_service
tomcat_template_setenv
tomcat_template_manager_context
tomcat_template_host_manager_context
Zmienne opcjonalne (domyślnie niezdefiniowane):
- Możesz ustawić niestandardowe UID użytkownika i GID grupy w celu uzyskania jednorodności na wielu serwerach. Na przykład:
tomcat_user_uid
: 500tomcat_group_gid
: 500
W przypadku dezinstalacji:
tomcat_state
: absent- Aby odinstalować tomcat zainstalowany za pomocą tej roli, ustaw tę zmienną na "absent". Domyślna wartość to "present".
tomcat_uninstall_create_backup
: True
Domyślnie, dla bezpieczeństwa, zostanie utworzony archiwum tar w "tomcat_install_path" przed usunięciem.tomcat_uninstall_remove_java
: False
Zmień na "True", aby odinstalować Java po usunięciu tomcat.- Domyślnie, użytkownik i grupa tomcat zostaną usunięte. Zmień na "False", aby je zachować po usunięciu tomcat.
tomcat_uninstall_remove_user
: Truetomcat_uninstall_remove_group
: True
tomcat_uninstall_remove_all
: False
Aby nadpisać powyższe wartości i odinstalować wszystko, ustaw na "True".
Zmienne dla odłączonego środowiska zdalnego:
tomcat_remote_is_disconnected
: False
Zmień na "True", jeśli Twój zdalny host (zarządzany host) jest offline i nie ma dostępu do internetu.
O projekcie
Ansible role to install and configure Apache Tomcat on CentOS/RHEL
Zainstaluj
ansible-galaxy install zaxos.tomcat-ansible-role
Licencja
gpl-2.0
Pobrania
108.5k
Właściciel