La infraestructura de Tecnologías de la Información (TI) es fundamental para el
funcionamiento de cualquier organización moderna. Está compuesta por tres
elementos principales: hardware, software y redes.
1. Hardware
El hardware es la parte física de la infraestructura de TI, es decir, los dispositivos y
componentes que hacen funcionar el sistema. Algunos ejemplos son:
•
Servidores: Máquinas que almacenan y gestionan datos o aplicaciones, y
proporcionan servicios a otros dispositivos dentro de la red.
Los servidores son componentes esenciales dentro de la infraestructura de TI, y
existen varios tipos según la función que desempeñan. A continuación te
explico los principales tipos de servidores:
o Servidor Web
El servidor web es responsable de almacenar y servir contenido web a los
usuarios que acceden a un sitio a través de navegadores. Este tipo de
servidor procesa solicitudes HTTP y devuelve páginas web, imágenes,
videos, o cualquier otro contenido almacenado en él.
▪
▪
Ejemplos de software de servidor web: Apache HTTP Server,
Nginx, Microsoft IIS.
Función: Gestiona la entrega de contenido web a través de
Internet o intranets.
o Servidor de Base de Datos
El servidor de base de datos almacena, organiza y gestiona grandes
volúmenes de datos estructurados. Es responsable de procesar
consultas, insertar, actualizar o eliminar datos en las bases de datos.
▪ Ejemplos de software de servidor de base de datos: MySQL,
PostgreSQL, Oracle Database, Microsoft SQL Server.
▪ Función: Facilita el almacenamiento y la gestión eficiente de
datos, permitiendo el acceso rápido y seguro a la información.
Funciones principales de un servidor de base de datos:
1. Almacenamiento de datos: El servidor guarda los datos en una base de datos
estructurada. Esto puede incluir cualquier tipo de datos: desde información de
usuarios, productos, transacciones, hasta datos complejos de aplicaciones
empresariales.
2. Gestión de consultas: El servidor es responsable de recibir y procesar
consultas (usualmente en SQL, Structured Query Language), y devolver
resultados basados en esos comandos. La base de datos permite realizar
consultas rápidas y eficientes sobre los datos almacenados.
3. Integridad y seguridad de los datos: Asegura que los datos sean consistentes,
correctos y estén disponibles de manera segura. Esto incluye el uso de
transacciones, validación de entradas, y permisos de acceso para evitar la
corrupción de datos.
4. Gestión de la concurrencia: Muchos usuarios o aplicaciones pueden acceder a
la base de datos simultáneamente. El servidor gestiona este acceso
concurrente, asegurándose de que las operaciones no interfieran entre sí y
manteniendo la integridad de los datos.
5. Respaldo y recuperación: Los servidores de bases de datos tienen
mecanismos integrados para realizar copias de seguridad regulares de los datos
y recuperarlos en caso de fallos, asegurando la disponibilidad de la información.
6. Escalabilidad y rendimiento: Un servidor de base de datos optimiza el
rendimiento en términos de tiempo de respuesta de las consultas y puede
escalar horizontalmente (añadiendo más servidores) o verticalmente
(aumentando recursos en un solo servidor) para manejar mayores volúmenes de
datos o usuarios.
Componentes clave de un servidor de base de datos:
•
•
•
Motor de base de datos: Es el software que ejecuta las operaciones de la base
de datos, como la gestión de las consultas, el almacenamiento y la
recuperación de datos. Es responsable de la mayor parte de las funciones del
servidor de base de datos.
Base de datos: Es el almacenamiento real donde se guardan los datos. Los
datos se organizan en tablas (relacionales), documentos (NoSQL), o estructuras
más complejas según el tipo de base de datos.
Sistema de gestión de bases de datos (DBMS): El DBMS es el software que
facilita la creación, modificación y administración de bases de datos. Se
encarga de las interacciones entre los usuarios o aplicaciones y los datos.
Tipos de servidores de bases de datos:
1. Relacionales (RDBMS): Son las bases de datos que almacenan los datos en
tablas organizadas en filas y columnas. Utilizan SQL (Structured Query
Language) para realizar consultas, actualizar y manipular datos.
a. Ejemplos:
i. MySQL: Un sistema de base de datos relacional de código abierto
ampliamente utilizado.
ii. PostgreSQL: Base de datos relacional avanzada de código
abierto, conocida por su capacidad para manejar datos complejos
y ser altamente extensible.
iii. Oracle Database: Sistema de base de datos relacional
ampliamente utilizado en entornos empresariales, con alta
disponibilidad y capacidades avanzadas.
iv. Microsoft SQL Server: Base de datos relacional de Microsoft,
utilizada principalmente en aplicaciones empresariales que
requieren alta integración con otras herramientas de Microsoft.
2. No Relacionales (NoSQL): Son bases de datos que no siguen el modelo
tradicional de tablas y relaciones, y son más adecuadas para manejar grandes
volúmenes de datos no estructurados o semi-estructurados (como JSON, XML,
etc.).
a. Ejemplos:
i. MongoDB: Base de datos orientada a documentos que almacena
datos en formato JSON.
ii. Cassandra: Base de datos distribuida de alta disponibilidad, ideal
para grandes volúmenes de datos que requieren escalabilidad
horizontal.
iii. Redis: Base de datos en memoria que se usa principalmente para
almacenamiento en caché y gestión de datos en tiempo real.
iv. CouchDB: Base de datos orientada a documentos que utiliza un
modelo de almacenamiento flexible.
3. De Grafos: Estas bases de datos son ideales para almacenar y consultar datos
con relaciones complejas entre sí (por ejemplo, redes sociales, rutas de
transporte, etc.).
a. Ejemplos:
i. Neo4j: Una de las bases de datos de grafos más populares,
adecuada para manejar relaciones complejas entre entidades.
ii. ArangoDB: Base de datos multi-modelo que soporta grafos,
documentos y claves-valor.
4. Bases de Datos en la Nube: Son servidores de bases de datos que se gestionan
y operan en la infraestructura de la nube, facilitando la escalabilidad y el acceso
remoto.
a. Ejemplos:
i. Amazon RDS: Servicio de bases de datos gestionado en la nube
por Amazon Web Services (AWS), que soporta varios motores de
bases de datos como MySQL, PostgreSQL, SQL Server, y Oracle.
ii. Google Cloud SQL: Servicio gestionado de bases de datos
relacionales en la nube de Google, compatible con MySQL,
PostgreSQL y SQL Server.
iii. Azure SQL Database: Servicio de base de datos relacional en la
nube proporcionado por Microsoft Azure.
¿Cómo funciona un servidor de base de datos?
1. Recepción de solicitudes: Un cliente (como una aplicación o un usuario) envía
una consulta al servidor de base de datos. Esta consulta podría ser una solicitud
para obtener información (como un SELECT), insertar datos (INSERT), actualizar
registros (UPDATE), o eliminar datos (DELETE).
2. Procesamiento de consultas: El servidor de base de datos interpreta y procesa
la consulta recibida. Si es una consulta de lectura, busca la información en la
base de datos y la devuelve al cliente. Si es una consulta de escritura, realiza los
cambios en la base de datos.
3. Manejo de transacciones: Las transacciones son importantes para mantener
la coherencia de los datos. El servidor asegura que todas las operaciones dentro
de una transacción se realicen correctamente (ACID: Atomicidad, Consistencia,
Aislamiento y Durabilidad).
4. Respuestas al cliente: Después de procesar la consulta, el servidor envía la
respuesta al cliente, que podría ser un conjunto de datos solicitados, una
confirmación de la operación realizada, o un error si algo salió mal.
Beneficios de usar un servidor de base de datos:
•
•
•
•
Seguridad: Los servidores de base de datos permiten configurar roles y
permisos para asegurar que solo usuarios autorizados accedan o modifiquen
los datos.
Escalabilidad: Los servidores pueden manejar desde pequeñas cantidades de
datos hasta grandes volúmenes de datos de manera eficiente, y muchos
ofrecen opciones de escalabilidad horizontal.
Disponibilidad y Respaldo: Los servidores de bases de datos pueden estar
configurados para ser altamente disponibles, con copias de seguridad
automáticas y recuperación ante fallos.
Rendimiento: Utilizan índices y técnicas de optimización para garantizar que las
consultas se ejecuten de manera rápida y eficiente.
o Servidor de Archivos
El servidor de archivos almacena y gestiona archivos digitales,
permitiendo que los usuarios accedan a ellos a través de una red. Estos
servidores proporcionan acceso centralizado a archivos y documentos
dentro de una organización.
▪ Ejemplos de software de servidor de archivos: Samba, Windows
File Server, NFS (Network File System).
▪ Función: Facilita la organización, almacenamiento y el acceso
compartido a documentos y archivos dentro de la red.
o Servidor de Correo Electrónico
El servidor de correo electrónico es responsable de enviar, recibir y
almacenar correos electrónicos. Los usuarios pueden enviar y recibir
mensajes a través de sus clientes de correo, pero en el fondo, los
servidores gestionan el tráfico de los correos electrónicos.
▪ Ejemplos de software de servidor de correo: Microsoft Exchange
Server, Postfix, Sendmail.
▪ Función: Gestiona el tráfico de correo electrónico entre usuarios y
otros sistemas de correo electrónico.
o Servidor DNS (Domain Name System)
El servidor DNS traduce los nombres de dominio (como
www.ejemplo.com) en direcciones IP, permitiendo que los usuarios se
conecten a los sitios web sin tener que recordar direcciones IP
numéricas.
▪ Ejemplos de software de servidor DNS: BIND (Berkeley Internet
Name Domain), Microsoft DNS Server.
▪ Función: Traduce los nombres de dominio a direcciones IP para
facilitar la navegación web y otros servicios relacionados.
o Servidor Proxy
El servidor proxy actúa como intermediario entre los usuarios de una red
y los servidores a los que acceden. Los usuarios hacen solicitudes al
proxy, que luego las reenvía al servidor de destino. Se utiliza para mejorar
el rendimiento y la seguridad.
▪ Ejemplos de software de servidor proxy: Squid, Nginx (en modo
proxy inverso), Apache HTTP Server (como proxy).
▪
Función: Mejora la seguridad y el rendimiento al filtrar solicitudes
y almacenar en caché las respuestas.
o Servidor de Aplicaciones
El servidor de aplicaciones es un software que proporciona servicios y
plataformas para ejecutar aplicaciones de negocio. A menudo se utiliza
en arquitecturas cliente-servidor y proporciona un entorno para la
ejecución de aplicaciones de empresa.
▪ Ejemplos de software de servidor de aplicaciones: Apache
Tomcat, JBoss, WebLogic, WebSphere.
▪ Función: Gestiona la ejecución de aplicaciones empresariales,
como aquellas basadas en Java EE o en otras tecnologías de
servidor.
o Servidor de Virtualización
El servidor de virtualización permite ejecutar múltiples máquinas
virtuales en un solo hardware físico, utilizando software de virtualización.
Cada máquina virtual puede tener su propio sistema operativo y
aplicaciones, lo que maximiza la eficiencia del hardware.
▪ Ejemplos de software de virtualización: VMware vSphere,
Microsoft Hyper-V, Oracle VM VirtualBox.
▪ Función: Proporciona una plataforma para crear y gestionar
entornos virtualizados, lo que permite una mejor utilización de los
recursos y la capacidad de crear múltiples entornos en un solo
servidor físico.
o Servidor de Autenticación (LDAP)
El servidor de autenticación se utiliza para gestionar la identidad y el
acceso de los usuarios. Un servidor LDAP (Lightweight Directory Access
Protocol) es uno de los más comunes, y se utiliza para almacenar
información sobre los usuarios, grupos y otros recursos de la red.
▪ Ejemplos de software de servidor de autenticación: Microsoft
Active Directory, OpenLDAP.
▪ Función: Proporciona un mecanismo centralizado para gestionar
la autenticación y autorización de los usuarios en una red.
o Servidor FTP (File Transfer Protocol)
Un servidor FTP facilita la transferencia de archivos entre sistemas a
través de una red utilizando el protocolo FTP. Los usuarios pueden subir
o descargar archivos al servidor FTP mediante un cliente FTP.
▪ Ejemplos de software de servidor FTP: vsftpd, FileZilla Server,
ProFTPD.
▪ Función: Permite la transferencia de archivos a través de la red,
comúnmente utilizado en sitios web o para la transferencia de
archivos grandes.
o Servidor de Backup
El servidor de backup está dedicado a realizar copias de seguridad de los
datos de la organización, asegurando que la información esté protegida
en caso de pérdida o daño.
▪ Ejemplos de software de servidor de backup: Veeam, Acronis,
Bacula.
▪ Función: Realiza copias de seguridad regulares de los datos
críticos de la empresa, garantizando la recuperación en caso de
un desastre.
o Servidor de Video Streaming
El servidor de video streaming es responsable de transmitir contenido de
video a los usuarios en tiempo real. Se utiliza para distribuir contenido de
medios, como películas o transmisiones en vivo.
▪ Ejemplos de software de servidor de video streaming: Wowza
Streaming Engine, Red5, Nginx (con RTMP).
▪ Función: Transmite contenido multimedia en vivo o bajo demanda
a los usuarios a través de la red.
•
•
•
•
Computadoras: Estaciones de trabajo o terminales desde donde los usuarios
acceden a los recursos y servicios.
Dispositivos de almacenamiento: Como discos duros, unidades SSD, o
almacenamiento en red (NAS), utilizados para almacenar datos.
Dispositivos de red: Routers, switches, firewalls, y puntos de acceso Wi-Fi que
permiten la interconexión entre dispositivos.
Periféricos: Impresoras, escáneres, teclados, ratones, etc., que permiten
interactuar con las computadoras.
2. Software
El software es el conjunto de programas y aplicaciones que permiten que el hardware
realice tareas específicas. Está dividido en:
•
•
•
Software de sistema: Incluye los sistemas operativos (como Windows, Linux,
macOS) que gestionan los recursos del hardware.
Software de aplicación: Son los programas que los usuarios utilizan para
realizar tareas específicas, como aplicaciones de productividad (Microsoft
Office, Google Docs), herramientas de diseño (Photoshop, AutoCAD) o
aplicaciones empresariales (ERP, CRM).
Software de red y servidores: Incluye aplicaciones y servicios como servidores
web (Apache, Nginx), bases de datos (MySQL, SQL Server) y software de gestión
de redes.
3. Redes
Las redes son los sistemas que permiten la comunicación entre los distintos
componentes de la infraestructura de TI. Se encargan de transportar la información
entre dispositivos y servidores, y también de conectar la infraestructura interna con el
exterior (como Internet). Algunos elementos clave de las redes son:
•
•
•
•
•
Infraestructura de red: Incluye cables (como Ethernet), fibra óptica y
dispositivos de comunicación (como routers, switches, hubs, firewalls).
Protocolos de comunicación: Son las reglas y normas que gobiernan cómo los
datos se transmiten entre los dispositivos, como TCP/IP, HTTP, FTP, etc.
Redes locales (LAN): Son redes privadas que conectan dispositivos dentro de
un área limitada, como una oficina o un edificio.
Redes de área amplia (WAN): Conectan múltiples redes LAN a través de
distancias geográficas grandes, como entre ciudades o países.
Redes privadas virtuales (VPN): Se utilizan para crear conexiones seguras a
través de redes públicas, como Internet, permitiendo que los usuarios accedan
a recursos corporativos de forma remota.
Interacción entre los tres componentes
Estos tres elementos (hardware, software y redes) trabajan en conjunto para garantizar
que la infraestructura de TI funcione de manera eficiente. El hardware proporciona la
base física, el software gestiona la funcionalidad y las redes aseguran la conectividad.
En resumen:
•
•
•
Hardware: El "cuerpo" físico (servidores, computadoras, dispositivos de red).
Software: El "cerebro" que le dice al hardware qué hacer (sistemas operativos,
aplicaciones).
Redes: Los "canales de comunicación" que permiten la conexión y
transferencia de datos entre los componentes.