Dominio de Docker, Ansible y Protocolos de Gestión de Redes

Clasificado en Informática

Escrito el en español con un tamaño de 4,12 KB

Docker: Plataforma de Contenedores para el Desarrollo Moderno

Docker es una plataforma abierta diseñada para desarrolladores y administradores de sistemas con el fin de compilar, enviar y ejecutar aplicaciones en sistemas Linux. Ofrece soporte para entornos como Amazon EC2, Google Compute Engine o RackSpace. Se caracteriza por su ligereza, cabeceras mínimas y por estar basado en contenedores Linux con un sistema de ficheros copy-on-write, lo que lo hace altamente portable y autosuficiente.

Arquitectura y Componentes de Docker

La arquitectura de Docker se compone de:

  • Docker Engine: Incluye la interfaz de línea de comandos (CLI), el Daemon y el Registry.
  • Docker Hub: Servicio en la nube para compartir imágenes.
  • Docker Images: Plantillas de solo lectura.
  • Docker Containers: Instancias ejecutables de las imágenes.

El flujo de trabajo consiste en crear una imagen Docker que albergue la aplicación, generar un contenedor Docker a partir de esas imágenes para ejecutar la aplicación o compartir dichas imágenes a través de la nube en Docker Hub.

Herramientas del Ecosistema Docker

  • Dockerfile: Fichero que especifica las órdenes para crear una imagen (ejecución de la aplicación, configuración de puertos). Las órdenes son independientes y no se guarda el estado entre ellas.
  • Docker Machine: Permite crear servidores, instalar Docker en ellos y configurar el cliente Docker para comunicarse con dichos nodos.
  • Docker Swarm: Herramienta que controla un grupo de hosts Docker y los presenta como un único host virtual.
  • Docker Compose: Define qué contenedores Docker van a ser ejecutados, cómo están conectados y sus puertos de salida.

Ansible: Automatización e Idempotencia

Ansible soluciona los problemas comunes de los scripts al cambiar las versiones gracias a sus órdenes idempotentes. En su arquitectura no existe un nodo maestro y no es necesario instalar agentes en los nodos remotos. Se configura mediante el lenguaje YAML utilizando Playbooks (recetas para cada tipo de servidor), donde se indica el resultado final deseado en lugar del orden secuencial de instalación de paquetes.

SNMP (Simple Network Management Protocol)

El protocolo SNMP opera en el nivel de aplicación y está orientado a la administración de dispositivos de red como routers, switches, hubs y módems. Se basa en agentes que se ejecutan en los equipos administrados.

Mecanismos de Funcionamiento

  • Sondeo (Polling): Es el método más habitual. La estación de administración envía una solicitud a un agente, este consulta la información y ejecuta la acción para cambiar el estado. Una cantidad excesiva de nodos puede generar congestión en la red.
  • Interrupción (Trap): Este mecanismo mitiga la posible saturación del polling. El agente envía proactivamente una notificación trap a la estación de administración ante un evento.

Arquitectura SNMP

La arquitectura se define mediante:

  • SMI: Define el nombre, tipo y formato de los datos.
  • MIB: Base de datos que contiene el estado del nodo administrado.

Syslog: Registro y Monitorización del Sistema

Los sistemas Syslog registran la contabilidad del sistema, la actividad del kernel y los programas que producen datos. Son fundamentales para alertar sobre fallos y detectar problemas de seguridad.

Clasificación de Mensajes

Los mensajes se categorizan según su origen y nivel de severidad:

  • Orígenes (Facilidades): Kernel (kern), sistema de correo (mail), demonios (daemon).
  • Niveles de Severidad: Emergencia (emer/panic), alerta (alert), crítico (crit), error (err) y advertencia (warning).

Entradas relacionadas: