LINUX

Cómo instalar Tomcat en Ubuntu 20.04 usando Ansible

Apache Tomcat se utiliza a menudo como servidor de aplicaciones para aplicaciones estrictamente basadas en web. Básicamente ejecuta servlets de Java y presenta páginas web que incluyen codificación JSP.

La instalación manual en Tomcat lleva tiempo. Usando Ansible podemos automatizar fácilmente el proceso de instalación.

En este tutorial aprendemos cómo instalar tomcat en ubuntu 20.04 usando Ansible.

requisitos previos:

Aquí usaremos:

  • Un único nodo de control – donde instalaremos y configuraremos ansible. Desde el nodo de control iniciaremos el manual de Ansible para instalar Tomcat 9.
  • Debes tener abierto Conexión SSH al host remoto.
  • Un nodo anfitrión – donde ansible instalará e iniciará Tomcat 9.
  • Tanto el nodo de control como el host tienen direcciones IP privadas y ambas máquinas son Ubuntu 20.04

Instalación de Ansible en el nodo de control en Ubuntu 20.04

Primero, actualice el sistema con el comando estándar:

$ sudo apt update

Después de la actualización, instale ansible ejecutando el siguiente comando:

$ sudo apt install ansible -y

Para verificar dónde está instalado y ubicado ansible, ejecute el comando:

$ which ansible

Debería ver algo como esto:

La ubicación del sistema de archivos Ansible
La ubicación del sistema de archivos Ansible

Si lista un directorio en /usr/bin

$ ls /usr/bin

Encontrará paquetes de Ansible instalados:

Paquetes de Ansible instalados en /usr/bin
Paquetes de Ansible instalados

Para verificar la versión de Ansible instalada, ejecute el comando:

$ ansible --version

Obtendrás algo como esto:

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]

Como puede ver, además de la versión ansible, también obtiene:

  • Dónde se coloca el archivo de configuración de ansible
  • Dónde se colocan la ruta de búsqueda configurada y los módulos
  • ¿Dónde está la ubicación del módulo ansible python?
  • Ubicación del ejecutable y versión de python

El archivo de configuración principal se almacena en el /etc/ansible/hosts expediente.

Debe agregar el host local o la IP del servidor al archivo, o si tiene una dirección IP privada, debe agregarla.

Abra el archivo de hosts con su editor favorito:

$ sudo nano /etc/anisble/hosts

Verá el archivo de configuración de hosts, algo como esto:

Configuración de hosts de Ansible en /etc/ansible/hosts
El archivo /etc/ansible/hosts

Como puede ver, hay una sección que pertenece # Ej. 1 sección, agregue la dirección IP del host remoto allí sin # frase.

Luego, para verificar si tiene un host con esta dirección IP, ejecute el siguiente comando:

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

Obtendrá la lista de hosts, algo así como la salida en la imagen:

Salida de hosts de Ansible
Lista de hosts anisble

El siguiente paso es agregar la clave SSH pública desde el nodo de control de Ansible a la máquina host remota.
Este paso es esencial para permitir que Ansible instale Tomcat en un servidor remoto.

Genere las claves ssh con el siguiente comando:

$ sudo ssh-keygen

Después de generar las claves, verá dónde se almacenan las claves. Para nosotros ahora solo la clave pública es importante.

Generación de kyps SSH
Claves SSH generadas

Ahora necesitamos copiar la clave pública a un servidor. Recuerde que estamos haciendo esto porque necesitamos permitir que Ansible instale Tomcat en el servidor remoto desde el nodo de control.

NOTA: Solo la clave pública se copia en el servidor. La clave privada nunca debe copiarse en otra máquina.

Use un comando como el siguiente para copiar la clave SSH:

$ sudo ssh-copy-id -i ~/.ssh/id_rsa.pub linoxide@96.126.116.227

Donde están user=linoxide y host=dirección IP para el inicio de sesión remoto SSH.

Después de copiar la clave a la computadora remota, deberá ingresar la contraseña para la conexión ssh remota.

Ahora todo está configurado y listo para ejecutar ansible-playbook.

Instale Tomcat 9 en el nodo de host remoto mediante Ansible

ahora ve a /etc/ansible y crear un archivo allí llamado tomcat-setup.yaml. Puede ver y copiar el archivo desde Repositorio Github:

---
- name: install tomcat server
  hosts: all
  become: true

  tasks:
  - name: Install OpenJDK
    apt:
      name: openjdk-11-jre-headless

  - name: download tomcat server packages
    get_url:
      url: http://mirrors.estointernet.in/apache/tomcat/tomcat-9/v9.0.44/bin/apache-tomcat-9.0.44.tar.gz
      dest: /usr/local

  - name: extract tomcat packages
    unarchive:
      src: /usr/local/apache-tomcat-9.0.44.tar.gz
      dest: /usr/local
      remote_src: yes

  - name: start tomcat services
    shell: nohup /usr/local/apache-tomcat-9.0.44/bin/startup.sh

Como puede ver en el archivo tomcat-setup.yaml, hay cuatro tareas:

1) Instalar OpenJDK
2) Descargue los paquetes del servidor Tomcat y colóquelos en la ubicación de destino.
3) Extraiga paquetes de Tomcat, desde el origen hasta el destino.
4) Inicie el servicio Tomcat usando el script startup.sh

Inicie ansible-playbook con el comando:

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

Verás algo como este resultado:

Estado de salida de Ansible tomcat-setup.yaml
estado ansible tomcat-setup.yaml

Después de comprobar que todo está en orden. Acceder a la máquina host remota y verifique si JAVA está instalado y verifique si el servicio Tomcat se está ejecutando con estos comandos:

$ sudo java -version

Producción:

versión de java en host remoto
versión de java en host remoto

Y verifique si Tomcat 9 se descargó e inició correctamente con el comando:

$ ps -ef | grep tomcat

Producción:

Estado del servicio Tomcat
el estado del servicio tomcat en el host remoto

Vaya a la URL del servidor en puerto 8080 para probar la instalación y configuración de Tomcat 9.

servidor web tomcat:

http://<domain_or_IP_address>:8080

Panel de administración de aplicaciones web de Tomcat:

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

Tablero del administrador de host virtual de Tomcat:

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

Ahora debería poder implementar la aplicación en su servidor Tomcat 9 que se ejecuta en su máquina Linux Ubuntu 20.04.

Conclusión

En este tutorial, aprendimos a instalar Tomcat 9 usando Ansible en el nodo remoto. Este fue un ejemplo de instalación de un servidor Tomcat en un solo nodo de host en el nodo de control. Con Ansible, puede instalar tantos servidores Tomcat como desee en tantos nodos de host como desee.

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar