Está en la página 1de 12

UNIVERSIDAD TECNOLÓGICA DE TABASCO

DIVISIÓN DE TECNOLÓGIAS DE LA INFORMACIÓN Y


COMUNICACIÓN

INGENIERÍA EN REDES DIGITALES Y CIBERSEGURIDAD

ALUMNO
Bryan Rivera Méndez

ASIGNATURA
ADMINISTRACIÓN AVANZADA DE INFRAESTRUCTURA VIRTUALIZADA

DOCENTE
RAFAEL GONZALO ÁLVAREZ CAMPOS

REPORTE

Ansible

VILLAHERMOSA, TABASCO, DICIEMBRE 2023


INTRODUCCIÓN
Ansible® es una herramienta open source que automatiza los procesos
informáticos para preparar la infraestructura, gestionar la configuración,
implementar las aplicaciones y organizar los sistemas, entre otros procedimientos
manuales de TI. A diferencia de las herramientas de gestión más simples, los
usuarios de Ansible (como los administradores de sistemas, los desarrolladores y
los arquitectos) pueden utilizar la automatización que ofrece esta herramienta para
instalar sistemas de software, automatizar las tareas diarias, preparar la
infraestructura, mejorar la seguridad y el cumplimiento, ejecutar parches en los
sistemas y compartir la automatización en toda la empresa.

Ansible se conecta con los recursos que desea automatizar e implementa


programas para ejecutar instrucciones que se llevarían a cabo de forma manual.
Los programas utilizan módulos de Ansible que se escribieron en función de las
expectativas específicas de la interfaz, los comandos y la conectividad del
extremo. Ansible ejecuta los módulos con el protocolo SSH de forma
predeterminada y los elimina al finalizar, en caso necesario.

No se requiere ningún servidor, daemon ni base de datos adicional. Por lo general,


trabajará con su terminal favorita, un editor de texto y un sistema de control de
versiones para hacer un seguimiento de los cambios en el contenido.
OBJETIVO

El objetivo principal de Ansible es facilitar la automatización de tareas relacionadas


con la administración de sistemas, implementación de software y gestión de
configuraciones en entornos de tecnologías de la información (TI). Algunos de los
objetivos clave de Ansible incluyen:

Automatización Eficiente: Ansible busca simplificar y automatizar tareas


repetitivas y propensas a errores que los administradores de sistemas y los
equipos de operaciones enfrentan en sus entornos diarios.

Infraestructura como Código: Ansible promueve la idea de tratar la


infraestructura y la configuración del sistema como código. Esto facilita la gestión,
colaboración y versionado de la configuración, permitiendo la creación de
infraestructuras de manera consistente y reproducible.

Facilitar la Orquestación: Ansible permite orquestar tareas en una secuencia


lógica, lo que es esencial para la gestión de infraestructuras complejas y la
coordinación de servicios en entornos distribuidos.

Gestión de Configuración: Proporciona un marco para definir y mantener la


configuración del sistema, garantizando que los sistemas estén configurados de
acuerdo con los estándares deseados.

Despliegue de Aplicaciones: Ansible facilita el despliegue y la actualización de


aplicaciones, asegurando una implementación suave y eficiente de software en
diferentes entornos.

No Requiere Agentes en los Nodos Gestionados: Ansible utiliza una


arquitectura sin agentes, lo que significa que no es necesario instalar software
adicional en los nodos que se gestionan. Esto simplifica la implementación y
reduce la complejidad.
SUSTENTO TEORICO

Principios teóricos que respaldan la filosofía y el diseño de Ansible:


Infraestructura como Código (IaC): Ansible se alinea con el concepto de Infraestructura
como Código, donde la infraestructura y la configuración se definen y gestionan mediante
código, específicamente en formato YAML en el caso de Ansible. Este enfoque permite
tratar la infraestructura de manera consistente y reproducible, aplicando principios de
desarrollo de software a la gestión de sistemas.
Declaratividad vs. Imperatividad: Ansible adopta un enfoque declarativo en lugar de
imperativo. En lugar de indicar paso a paso cómo lograr un estado deseado, los usuarios
declaran el estado deseado y Ansible determina cómo llevar el sistema a ese estado. Este
enfoque simplifica la definición de tareas y reduce la complejidad.
Sin Agentes (Agentless): Ansible se basa en una arquitectura sin agentes, lo que significa
que no es necesario instalar software adicional en los nodos gestionados. Esto simplifica la
implementación y reduce la sobrecarga en los sistemas gestionados.
Orquestación: Ansible ofrece capacidades de orquestación para coordinar tareas en
múltiples nodos de manera secuencial o paralela. Esto es esencial para gestionar
infraestructuras complejas y servicios distribuidos.
Módulos Reutilizables: Ansible utiliza módulos para realizar tareas específicas en los
nodos gestionados. Estos módulos son unidades de trabajo autónomas y reutilizables que
simplifican la definición de tareas y la creación de playbooks.
Gestión de Configuración: Ansible se basa en principios de gestión de configuración para
asegurar que los sistemas estén configurados de acuerdo con las especificaciones
deseadas. La gestión de configuración automatizada mejora la coherencia y reduce la
posibilidad de errores humanos.
Lenguaje de Programación en YAML: Ansible utiliza YAML como lenguaje para definir
playbooks y configuraciones. YAML es un formato legible por humanos que facilita la
comprensión y la colaboración entre equipos.
La importancia de Ansible radica en su capacidad para simplificar y mejorar la
automatización en la administración de sistemas y la gestión de configuraciones.
DESARROLLO

1.- La instalación es sencilla ... lo siguiente debe realizarse en todos los servidores
en los que desee utilizar Ansible. En este caso, por encima de ambos servidores.

 Ejecute el siguiente comando para instalar el software necesario requerido


para instalar ansible.

 2.- Instale el repositorio con el paquete ansible.

3. Actualización de la herramienta de empaquetado avanzada (apt)


4.- Ejecute el siguiente comando “apt install ansible”

5.- Ejecutamos el siguiente comando ansible Core


6. -Ansible se conecta a su cliente a través de SSH (Secure shell).

Primero generaremos una clave pública en el servidor ansible, que debe copiarse
en el cliente ansible.

Asegúrese de haber iniciado sesión como usuario root.

 Usar ssh-keygen comando como se muestra a continuación

En este apartado generados la clave en nuestro servidor para poder copiarla


en nuestro cliente.
7. En este paso nos dirigimos a nuestro cliente en donde accederemos a la
carpeta .ssh del cliente para poder hacer los cambios requeridos.
Vamos cd /root/.ssh
Damos ls-l para ver el estatus

8.- Aquí se copia la clave único que generamos en el servidor y la pegamos


en el cliente.
ssh-copy-id -i ~/.ssh/id_rsa.pub root@10.0.0.23
9. Accedemos a sudo nano /etc/ansible/hosts en este apartado se realizan las configuraciones
especificadas en Cómo instalar y utilizar Ansible en Ubuntu 20.04 | DigitalOcean

10. Ejecutamos el siguiente comando ansible-inventory --list -y para ver ips


12. En este paso haremos que el servidor conozca nuestro cliente insertando el siguiente comando
en nuestro editor favorito. (En nuestra guía se trabajó con ip 10.0.0. 25 pero nosotros trabajamos
con la 23.

[Client] node1 ansible_ssh_host=10.0.0.23


13. Prueba de exito
Realizamos ping a 10.0.0.24

En esta imagen se puede apreciar que no se perdió ningún solo paquete.


Conclusión

Ansible ha emergido como una herramienta fundamental en el ámbito de la


tecnología de la información, brindando soluciones efectivas para la
automatización de tareas, la gestión de configuraciones y la orquestación de
infraestructuras. En este documento, exploraremos la importancia de Ansible
y cómo su adopción puede transformar positivamente la eficiencia y la
confiabilidad de los entornos de TI.
Ansible facilita la gestión de configuraciones al permitir la definición y
aplicación de políticas de configuración de manera eficiente y escalable. A
través de su lenguaje declarativo, los administradores pueden describir el
estado deseado de los sistemas, y Ansible se encarga de llevarlos a ese
estado, garantizando coherencia en entornos distribuidos y evitando
desviaciones no deseadas.
En resumen, Ansible ha demostrado ser una herramienta integral para la
automatización de tareas, la gestión de configuraciones y la orquestación de
infraestructuras. Su adopción no solo mejora la eficiencia operativa, sino que
también contribuye a la agilidad, la consistencia y la seguridad en entornos
de TI. Ansible se presenta como una pieza clave en la evolución hacia
prácticas modernas como la Infraestructura como Código y la integración
continua, estableciéndose como una tecnología fundamental en la gestión de
sistemas y la administración de recursos tecnológicos.

También podría gustarte