¿Qué es una computadora?

Una computadora es un dispositivo electrónico que manipula información o datos. Tiene la capacidad de almacenar, recuperar y procesar datos.

Hardware

DispositivoDescripción
ProcesadorEs la Unidad Central de Procesamiento (CPU).
RAM"Random Access Memory", es volátil.
ROMMemoria no volátil, guarda la BIOS. La BIOS es el tipo de software que se encarga de arrancar el sistema.
Placa MadrePlaca impresa de circuitos que tiene el procesador, RAM, ROM, red y Entrada y Salida, entre otros componentes.
ChipsetConjunto de microchips en una placa madre que se encargan de administrar funciones específicas.
AlmacenamientoUn dispositivo de almacenamiento no volátil, tal cómo un Disco Duro o un Disco de Estado Sólido.

Software

  • Software de sistema es necesario para que el hardware funcione.
  • El sistema operativo controla el hardware
  • Software de aplicación le dice al sistema que ejecute una acción.

¿Qué es un Servidor?

  • Es una computadora con hardware diseñado para estar en funcionamiento 24/7 y posee un software especializado para tal función.

  • Brinda un servicio a múltiples clientes en una misma o diferente locación.

    ucr_linux001
Tipos de servidores
  • Servidores WEB
  • Servidores de archivos
  • Servidores de correos electrónicos
  • Servidores DNS, DHCP, PROXY
  • Servidores de bases de datos (Oracle, Mysql)
  • Servidores de almacenamiento

¿Qué virtualización?**

La virtualización es la capa de tecnología situada entre el hardware físico de un dispositivo y el sistema operativo, encargada de crear una o varias copias del dispositivo.

¿Qué es una máquina virtual?

Una máquina virtual es un equipo de software que, como en el caso de los equipos físicos, ejecuta un sistema operativo y sus aplicaciones. La máquina virtual puede ejecutar los mismos programas y comportarse exactamente como la máquina original que usted puede tocar con sus dedos. En realidad la máquina virtual no puede tocarse porque sólo existe dentro del programa informático.

Para ser completamente funcional, una máquina virtual requiere los mismos componentes que un equipo físico, como un teclado, un ratón, una CPU, RAM y más. La siguiente imagen muestra algunos de los componentes que necesita una VM.

ucr_linux002

¿Qué es un Hipervisor?

  • Software instalado sobre hardware, crea la capa de virtualización.
  • Aloja máquinas virtuales. Las máquinas virtuales se alojan en un host.
  • Hipervisor Tipo 1 - Hipervisor "bare metal" (VMware ESXi)
  • Hipervisor Tipo 2 - Hipervisor, alojado (VMware Workstation / Fusion)
Máquina física vs Máquina virtual
Máquina físicaMáquina virtual
Difícil de mover o copiar/clonar.Fácil de mover y copiar/clonar porque está encapsulada en archivos y es independiente del hardware físico.
Limitada a un conjunto de componentes de hardware específicos.Fácil de administrar porque está aislada de otras máquinas virtuales funcionando en el mismo hardware físico.
Suele tener ciclos de vida cortos.Protegida de cambios en el hardware físico.
Requiere contacto físico para la actualización del hardware.

Hipervisor Tipo 1 (bare metal hypervisor)

El hipervisor de tipo 1, también llamado hipervisor de "bare-metal" o de "nivel de hardware", se ejecuta directamente sobre el hardware físico sin necesidad de un sistema operativo intermediario. Este tipo de hipervisor controla el hardware directamente y proporciona recursos a las máquinas virtuales.

Esta arquitectura permite que el hipervisor actúe como la primera capa de software, gestionando de manera eficiente las máquinas virtuales (VM) al interactuar directamente con la CPU, la memoria y el almacenamiento.

Las principales características de los hipervisores tipo 1 incluyen:

  • Eficiencia: Al tener acceso directo al hardware, ofrecen un rendimiento superior y una baja latencia, lo que se traduce en tiempos de respuesta rápidos para las máquinas virtuales

  • Seguridad: Al no depender de un sistema operativo host, tienen menos componentes que pueden ser vulnerables a ataques, lo que mejora la seguridad general del entorno virtual

  • Aislamiento: Proporcionan un fuerte aislamiento entre las diferentes máquinas virtuales, lo que significa que un fallo en una VM no afectará a las demás

  • Uso en entornos de producción: Es común en centros de datos y entornos de servidores, donde la eficiencia y el control directo del hardware son cruciales.

Ventajas:
  • Menor latencia y mayor rendimiento, ya que no existe un sistema operativo intermediario.

  • Mayor control y seguridad, dado que se reduce el número de capas de software que podrían ser vulnerables.

  • Escalabilidad y estabilidad para entornos empresariales y de alta demanda.

Ejemplos de hipervisores tipo 1
  • KVM (Kernel-based Virtual Machine): Integrado en el núcleo de Linux, es ampliamente utilizado en entornos de virtualización y cloud

  • AHV de Nutanix: Ofrece un alto rendimiento y una gestión centralizada dentro de infraestructuras hiperconvergentesCitrix Hypervisor: Anteriormente conocido como XenServer, se utiliza para crear y gestionar entornos virtualizados seguros

  • VMware ESXi, Microsoft Hyper-V (en modo de servidor), y Xen.

    ucr_linux003

Hipervisor Tipo 2 (hosted virtualization)

El hipervisor de tipo 2, también llamado hipervisor "hosteado", se ejecuta sobre un sistema operativo existente. En este caso, el hipervisor actúa como una aplicación que se instala en el sistema operativo y luego gestiona las máquinas virtuales.

No interactúa directamente con el hardware, sino que depende del sistema operativo para acceder a los recursos físicos.

Sus características incluyen:

  • Facilidad de uso: Son más sencillos de instalar y configurar, lo que los hace ideales para usuarios individuales o entornos de desarrollo
  • Interfaz gráfica: A menudo incluyen interfaces gráficas que facilitan la gestión de las máquinas virtuales
  • Latencia y rendimiento: Debido a que deben pasar por el sistema operativo host para acceder a los recursos, pueden experimentar una mayor latencia y menor rendimiento en comparación con los hipervisores tipo 1
Ventajas:
  • Mayor compatibilidad: Dado que depende del sistema operativo anfitrión, es más sencillo de implementar en computadoras personales.
  • Ideal para uso no crítico, como para probar diferentes sistemas operativos o ejecutar software en un entorno virtualizado sin afectar el sistema base.
Ejemplos de hipervisores tipo 2
  • VMware Workstation: Popular entre desarrolladores y profesionales que necesitan ejecutar múltiples sistemas operativos en sus PCs.
  • Oracle VirtualBox: Una opción gratuita y de código abierto que permite a los usuarios ejecutar diferentes sistemas operativos en máquinas virtuales.
  • Parallels Desktop.
Comparación entre Hipervisores Tipo 1 y Tipo 2
CaracterísticaHipervisor Tipo 1Hipervisor Tipo 2
EjecuciónDirectamente en hardwareSobre un sistema operativo huésped
RendimientoAlto (baja latencia)Moderado (mayor latencia)
SeguridadMás seguro (menos componentes)Menos seguro (dependencia del SO)
Uso típicoEntornos empresariales grandesUsuarios individuales o desarrollo
InterfazGeneralmente sin GUIInterfaz gráfica disponible
UsoCentros de datos, servidoresDesktops, pruebas, desarrollo
ComplejidadRequiere configuración más avanzadaFácil de instalar y configurar

Ambos tipos de hipervisores son útiles en diferentes contextos; la elección entre uno u otro depende principalmente de los requisitos específicos del entorno de virtualización.

El hipervisor Tipo 1 es más eficiente y adecuado para entornos de alto rendimiento, mientras que el hipervisor Tipo 2 es más flexible y fácil de usar en entornos no críticos o de desarrollo.

Los desarrolladores de programas informáticos prefieren usar un hipervisor de Tipo 2 porque les permite probar su código en diferentes sistemas informáticos utilizando diferentes sistemas operativos. Si el código no funciona correctamente y la computadora se estropea, simplemente pueden apagar la máquina virtual y reiniciarla para continuar realizando más pruebas.

¿Qué es un snapshot?

Un snapshot captura instantáneamente todo el estado de la máquina virtual en el momento en que se toma la instantánea. Esto incluye:

  • El estado de los discos de la máquina virtual.
  • El contenido de la memoria de la máquina virtual.
  • La configuración de la máquina virtual.

Cuando usted vuelve al snapshot, devuelve todos estos elementos al estado en el que estaban en el momento en que tomó la instantánea.

ucr_linux004

¿Qué es un Data Center o Centro de Datos?

La infraestructura de los centros de datos consta de tres componentes principales: un sistema informático (un servidor), los dispositivos de almacenamiento y las redes.

ucr_linux005
Tipos de Servidores
  1. Tower Compute

    • Servidores en formato de torre, similares a una computadora de escritorio grande.
    • Ideales para entornos pequeños o oficinas.
  2. Rack-Mounted Compute System

    • Servidores diseñados para instalarse en un rack (bastidor) dentro de un centro de datos.
    • Optimizan el espacio y facilitan la administración y escalabilidad.
  3. Blade Compute System

    • Servidores modulares (hojas o blades) que se insertan en un chasis compartido.
    • Comparten recursos como energía, refrigeración y red, aumentando la eficiencia.
Por tipo de servicio (software):
  • Servidores WEB – Alojan sitios web.

  • Servidores de archivos – Gestionan el almacenamiento y acceso a archivos en red.

  • Servidores de correo – Administran el envío y recepción de emails.

  • Servidores DNS, DHCP, PROXY – Gestionan nombres de dominio, direcciones IP y tráfico de red.

  • Servidores de bases de datos – Alojan y gestionan bases de datos (Oracle, MySQL, etc.).

Beneficios de un Centro de Datos Virtual
  • Los Centros de Datos usan mucho hardware, la virtualización hace que el hardware sea más eficiente.

  • El incremento en recursos de computación resulta en una mayor disponibilidad de aplicaciones.

  • Menos trabajo necesario para monitorear los Centros de Datos, ya que el administrador puede monitorear desde su escritorio usando un programa.

  • Software-Defined Data Center (SDDC): El hipervisor agrupa los recursos de los Centros de Datos físicos en uno virtual.

¿Qué es vSphere?

  • Suite de tecnología de virtualización diseñado para la administración de Centros de Datos de nivel empresarial.
  • Las herramientas de virtualización de vSphere incluyen:
    • ESXi: Es el software hypervisor tipo 1 de VMware, instalado directamente en el servidor físico, crea la capa de virtualización.

      • Componentes de ESXi: Microkernel Unix, VMware Kernel (VMkernel)
      ucr_linux006
    • vCenter: Software de administración (instalado en el servidor de administración).

      • Software instalado en un servidor dedicado para administrar los servidores ESXi y otros componentes de un Centro de Datos virtualizado.
    • vSphere Client: Programa que controla los servidores huésped y las máquinas virtuales.

      • Programa con una interfaz gráfica que le permite al administrador de Centro de Datos conectarse al vCenter y al ESXi remótamente.
      ucr_linux007

Tipos de Computación en la Nube

La computación en la nube es categorizada en distintos modelos de servicio. Los más grandes son:

  • Software as a Service (SaaS):

    • Qué es: Aplicaciones completas listas para usar a través de internet.

    • Ejemplo: Slack (mensajería), Gmail, Microsoft 365, Salesforce.

    • Característica clave: No gestionas infraestructura ni plataforma, solo usas el software.

  • Platform as a Service (PaaS):

    • Qué es: Un entorno listo para desarrollar, ejecutar y gestionar aplicaciones sin preocuparse por la infraestructura subyacente.

    • Ejemplo: Amazon Web Services (AWS) Elastic Beanstalk, Google App Engine, Microsoft Azure App Services, Heroku.

    • Característica clave: Te concentras en el código, el proveedor gestiona el sistema operativo, servidores, almacenamiento y red.

  • Infrastructure as a Service (IaaS):

    • Qué es: Servicios de infraestructura fundamental (servidores virtuales, almacenamiento, redes) bajo demanda.

    • Ejemplo: Amazon EC2, Microsoft Azure Virtual Machines, Google Compute Engine, DigitalOcean Droplets.

    • Característica clave: Tienes control total sobre el sistema operativo y el software, el proveedor gestiona el hardware físico.

¿Qué es Linux?

Es un sistema operativo Open Source con Licencia Pública General (GNU), creado por Linus Torvalds. Se basa en los principios y diseños del sistema operativo UNIX. Es el sistema operativo más utilizado en servidores.

¿Qué es UNIX?

  • Nació a principios de la década de los 70 por los desarrolladores Ken Thompson y Dennis Ritchie. Fue creado en los Laboratorios Bell, que pertenecen a la famosa compañía AT&T. Fue creado como un sistema operativo para manejar servidores.

  • Unix es un sistema propietario que no se puede modificar, propiedad de la compañía AT&T que es la única que tiene permiso de modificarlo v actualizarlo.

LINUX vs UNIX

  • El kernel de Linux se basa en UNIX.

  • Linux está bajo licencia GNU y por lo tanto, el kernel Linux es completamente libre y gratuito y cualquier persona puede modificar el código fuente, el cual está disponible para todo el mundo.

  • Unix es un sistema propietario que no se puede modificar, propiedad de la compañía AT&T que es la única que tiene permiso de modificarlo y actualizarlo.

Linux en números
  • El 100% de las 500 supercomputadoras más potentes del mundo funcionarán en Linux para 2021
  • El 90% de todos los efectos especiales de Hollywood se realizan en Linux.
  • En 2020, el 55,9% de todos los desarrolladores profesionales utilizaron Linux.
  • El 38,3% de todos los sitios web utilizan Linux en lo que va de 2021.
  • El 94% de la nube EC2 de Amazon se ejecuta en Linux.
Distribuciones de Linux

ucr_linux008 ucr_linux009

GNU GRUB o gestor de arranque

  • El gestor de arranque carga todo lo necesario para que inicie nuestro sistema operativo de manera correcta, como el kernel y sus opciones predefinidas. Una vez carga el kernel, el Grub pasa el control al mismo para que complete el proceso de inicio.

  • El Grub bootloader se activa al cargar el primer elemento del Master Boot Record (MBR) en el disco de arranque.

Kernel de Linux

El kernel es el núcleo de un sistema operativo que se encarga de gestionar o administrar los recurso de nuestro servidor.

ucr_linux010
Proceso de arranque de Linux
  • BIOS (Firmware)
  • MBR (512mb ubicado en el primer sector del HDD, Tabla de particiones)
  • GRUB
  • KERNEL
  • INIT (Archivos de iniciación del sistema operativo)
  • Runlevel Programs
Definiciones Básicas
  • Directorio: Carpetas

  • Archivo: Documento

  • Comando: Orden que se le envía a una computadora para que realice una tarea en específico

  • Terminal: Intérprete de línea de comandos

  • Cron: Es un administrador de tareas que por lo general se ejecuta en segundo plano

  • CLI: Interfaz de línea de comando

  • GUI: Interfaz gráfica

Árbol de directorios
DirectorioDescripción / Propósito
/binBinarios de usuario
/bootEjecutables y archivos requeridos para el arranque
/devArchivos de información de todos los volúmenes
/etcArchivos de configuración del sistema y de aplicaciones
/homeDirectorio personal con las carpetas de usuario
/libBibliotecas necesarias para la ejecución de binarios
/mediaDirectorio de montaje de volúmenes extraíbles
/optFicheros de aplicaciones externas que no se integran en /usr
/procFicheros de información de procesos
/rootDirectorio personal de superusuario
/sbinBinarios de sistema
/srvArchivos relativos a servidores web. FTP etc.
/sysArchivos virtuales con información de eventos del sistema
/tmpDirectorio de ficheros temporales
/usrArchivos programas y aplicaciones instaladas
/varArchivos de variables, logs. emails de los usuarios del sistema. etc.
Arquitectura de discos
MBR (1GEN)GPT / UEFI (2GEN)
4 particiones primariasInterfaz grafica
4TB por disco128 particiones primarias
Legacy (Windows 7, XP, Linux)18 exabytes por disco
Actualización por red
Doble BIOS
Secure boot
Built with LogoFlowershow