Podcast
Questions and Answers
¿Cuál es una técnica utilizada para garantizar la disponibilidad de un microservicio frente a fallos externos?
¿Cuál es una técnica utilizada para garantizar la disponibilidad de un microservicio frente a fallos externos?
¿Cuál es el propósito principal del back-off exponencial en el manejo de reintentos?
¿Cuál es el propósito principal del back-off exponencial en el manejo de reintentos?
¿Qué significa la propiedad de idempotencia en microservicios?
¿Qué significa la propiedad de idempotencia en microservicios?
¿Cuál de los siguientes elementos no forma parte de un enfoque de seguridad en microservicios?
¿Cuál de los siguientes elementos no forma parte de un enfoque de seguridad en microservicios?
Signup and view all the answers
¿Qué técnica se usa para dividir recursos entre componentes y evitar que un fallo afecte a otros?
¿Qué técnica se usa para dividir recursos entre componentes y evitar que un fallo afecte a otros?
Signup and view all the answers
¿Cuál de las siguientes herramientas es especialmente útil para la visualización de métricas de microservicios?
¿Cuál de las siguientes herramientas es especialmente útil para la visualización de métricas de microservicios?
Signup and view all the answers
¿Qué tipo de escalado implica aumentar la capacidad física de los servidores existentes?
¿Qué tipo de escalado implica aumentar la capacidad física de los servidores existentes?
Signup and view all the answers
¿Cuál es una característica importante al implementar alertas en sistemas de microservicios?
¿Cuál es una característica importante al implementar alertas en sistemas de microservicios?
Signup and view all the answers
¿Cuál es la función principal de un archivo con extensión .ova?
¿Cuál es la función principal de un archivo con extensión .ova?
Signup and view all the answers
¿Qué tipo de archivo se utiliza para almacenar la configuración de NVRAM en una máquina virtual?
¿Qué tipo de archivo se utiliza para almacenar la configuración de NVRAM en una máquina virtual?
Signup and view all the answers
¿Cuál de las siguientes opciones describe mejor el concepto de 'Thin provisioning'?
¿Cuál de las siguientes opciones describe mejor el concepto de 'Thin provisioning'?
Signup and view all the answers
¿Qué archivo utiliza Hyper-V para el almacenamiento de discos duros virtuales?
¿Qué archivo utiliza Hyper-V para el almacenamiento de discos duros virtuales?
Signup and view all the answers
¿Qué tipo de archivo .vmdk representa en una máquina virtual?
¿Qué tipo de archivo .vmdk representa en una máquina virtual?
Signup and view all the answers
¿Qué archivo se utiliza para almacenar la memoria virtual swap de una máquina virtual?
¿Qué archivo se utiliza para almacenar la memoria virtual swap de una máquina virtual?
Signup and view all the answers
¿Qué define al formato Open Virtualization Format (OVF)?
¿Qué define al formato Open Virtualization Format (OVF)?
Signup and view all the answers
¿Qué información almacena el archivo .vmsd en una máquina virtual?
¿Qué información almacena el archivo .vmsd en una máquina virtual?
Signup and view all the answers
¿Cuál es la función principal de un Replica Set en un clúster Kubernetes?
¿Cuál es la función principal de un Replica Set en un clúster Kubernetes?
Signup and view all the answers
¿Cuál de los siguientes componentes forma parte del Plano de Control en Kubernetes?
¿Cuál de los siguientes componentes forma parte del Plano de Control en Kubernetes?
Signup and view all the answers
¿Qué función desempeña el Scheduler en Kubernetes?
¿Qué función desempeña el Scheduler en Kubernetes?
Signup and view all the answers
¿Qué es un Namespace en el contexto de Kubernetes?
¿Qué es un Namespace en el contexto de Kubernetes?
Signup and view all the answers
¿Cuál es la función del Kubelet en un nodo trabajador?
¿Cuál es la función del Kubelet en un nodo trabajador?
Signup and view all the answers
¿Qué tipo de datos almacena Etcd en Kubernetes?
¿Qué tipo de datos almacena Etcd en Kubernetes?
Signup and view all the answers
¿Cómo contribuye un Deployment a la gestión de aplicaciones en Kubernetes?
¿Cómo contribuye un Deployment a la gestión de aplicaciones en Kubernetes?
Signup and view all the answers
¿Cuál de los siguientes no es un componente de un nodo trabajador en Kubernetes?
¿Cuál de los siguientes no es un componente de un nodo trabajador en Kubernetes?
Signup and view all the answers
¿Cuál es la función principal de Spring Cloud Netflix Ribbon?
¿Cuál es la función principal de Spring Cloud Netflix Ribbon?
Signup and view all the answers
¿Cómo contribuye Spring Cloud Netflix Hystrix a los sistemas distribuidos?
¿Cómo contribuye Spring Cloud Netflix Hystrix a los sistemas distribuidos?
Signup and view all the answers
¿Qué información se puede observar en el Hystrix Dashboard?
¿Qué información se puede observar en el Hystrix Dashboard?
Signup and view all the answers
¿Cuál es el propósito principal de Spring Cloud Netflix Zuul?
¿Cuál es el propósito principal de Spring Cloud Netflix Zuul?
Signup and view all the answers
¿Qué caracteriza a un service mesh en una arquitectura de microservicios?
¿Qué caracteriza a un service mesh en una arquitectura de microservicios?
Signup and view all the answers
¿Cuál de las siguientes características NO es parte del service mesh?
¿Cuál de las siguientes características NO es parte del service mesh?
Signup and view all the answers
En términos de observabilidad, ¿qué función cumple un service mesh?
En términos de observabilidad, ¿qué función cumple un service mesh?
Signup and view all the answers
¿Cuál de las siguientes afirmaciones sobre el balanceo de carga en el contexto de microservicios es correcta?
¿Cuál de las siguientes afirmaciones sobre el balanceo de carga en el contexto de microservicios es correcta?
Signup and view all the answers
¿Cuál de las siguientes afirmaciones sobre la infraestructura de escritorio virtual (VDI) es correcta?
¿Cuál de las siguientes afirmaciones sobre la infraestructura de escritorio virtual (VDI) es correcta?
Signup and view all the answers
¿Qué diferencia fundamental existe entre VDI y DaaS?
¿Qué diferencia fundamental existe entre VDI y DaaS?
Signup and view all the answers
¿Cuál es una característica clave de la virtualización ligera?
¿Cuál es una característica clave de la virtualización ligera?
Signup and view all the answers
¿Cuál de las siguientes tecnologías no está asociada a la virtualización ligera?
¿Cuál de las siguientes tecnologías no está asociada a la virtualización ligera?
Signup and view all the answers
Respecto a la virtualización de sesión remota, ¿cuál es una afirmación incorrecta?
Respecto a la virtualización de sesión remota, ¿cuál es una afirmación incorrecta?
Signup and view all the answers
¿Cuál es una ventaja de la virtualización ligera en comparación con otras tecnologías?
¿Cuál es una ventaja de la virtualización ligera en comparación con otras tecnologías?
Signup and view all the answers
¿Qué opción describe mejor la función de Docker en el contexto de virtualización ligera?
¿Qué opción describe mejor la función de Docker en el contexto de virtualización ligera?
Signup and view all the answers
¿Cuál de las siguientes características no es típica de la virtualización de escritorios?
¿Cuál de las siguientes características no es típica de la virtualización de escritorios?
Signup and view all the answers
Study Notes
Metadatos de Máquinas Virtuales
- .vbox: archivo de configuración de una máquina virtual.
- .ova: archivo que contiene una máquina virtual completa, incluyendo configuraciones, discos virtuales y metadatos para su implementación.
Tipos de Archivos de Máquinas Virtuales
-
.vmdk (Virtual Machine Disk): representa discos duros virtuales de máquinas virtuales.
- Es ampliamente utilizado por VMWare.
- Compatible con productos como VMWare Workstation, Workstation Player, Server, Fusion, ESX, ESXi, Parallels, QEMU, Virtual Box, SUSE studio, Sun xVM, Norton Ghost, Paragon Hard Disk Manager y DiskInternals VMFS Recovery.
-
.vmem: almacena el contenido de la memoria virtual de un proceso virtualizado.
- Se utiliza para persistir el contenido de la memoria, por ejemplo, cuando se suspende una máquina virtual.
-
.nvram: almacena información de configuración de la memoria NO volátil (NVRAM) de la máquina virtual.
- Contiene información como la configuración de la BIOS/UEFI, el reloj y la red.
- .vmsd: almacena metadatos de instantáneas de una máquina virtual.
- .vswp: archivo utilizado en entornos de virtualización para almacenar la memoria virtual swap de una máquina virtual.
Métodos de Aprovisionamiento del Espacio de Almacenamiento
-
Thin provisioning: el espacio de almacenamiento se asigna según se necesita.
- Permite una gestión eficiente del espacio.
- Thick provisioning: el sistema de archivos se crea con el espacio total asignado desde el inicio.
Formatos de Virtualización
-
Open Virtualization Format (OVF): estándar abierto para empaquetar y distribuir máquinas virtuales.
- OVA: archivo TAR que contiene el contenido del formato OVF.
-
Formato VHD: archivo de imagen de disco utilizado en entornos de virtualización para almacenar contenido de un disco duro virtual.
- Utilizado por Hyper-V.
Virtualización de Puestos de Usuario
- Permite que los escritorios de los usuarios (sistema operativo, aplicaciones y configuraciones) se ejecuten en servidores centrales en lugar de en dispositivos físicos.
Tipos de Virtualización de Escritorios:
-
Infraestructura de Escritorio Virtual (VDI):
- Los escritorios virtuales se alojan en un servidor central y los usuarios acceden a ellos a través de una red.
- Los escritorios pueden ser persistentes (conservan configuraciones y datos) o no persistentes (se restablecen al estado original al final de cada sesión).
-
Escritorio como Servicio (DaaS):
- La capa de control está en la nube y los recursos se encuentran en la infraestructura local (on-premise).
-
Virtualización de sesión remota:
- Utiliza un servidor central para proporcionar una sesión de escritorio a los usuarios.
- Soluciones:
- Microsoft Remote Desktop Services (RDS)
- Citrix XenDesktop
- VMWare Horizon
Virtualización Ligera (Virtualización Basada en Contenedores)
- Permite ejecutar múltiples instancias aisladas y seguras de un entorno operativo en un único sistema operativo anfitrión.
Características:
- Kernel Compartido
- Rápido Aprovisionamiento y Escalabilidad
- Portabilidad
- Menor Sobrecarga
Tecnologías:
-
Docker:
- Plataforma de software para crear, ejecutar y gestionar contenedores.
- Imagen: preparación binaria del contenedor.
- Contenedor: instancia del contenedor en memoria.
- CRI-O
- Containerd
-
Podman: herramienta de código abierto alternativa a Docker.
- Es una herramienta sin daemons.
Frameworks:
-
Spring Cloud Netflix Ribbon:
- Librería que permite la comunicación entre diferentes procesos y proporciona algoritmos para el balanceo de carga del lado del cliente (client-side load balancing).
-
Spring Cloud Netflix Hystrix:
- Librería que facilita la implementación del patrón circuit breaker en arquitecturas de servicios distribuidos.
-
Spring Cloud Netflix Hystrix Dashboard:
- Permite monitorear las métricas capturadas por Hystrix en tiempo real, incluyendo peticiones exitosas, fallidas, timeouts, número de hilos, número de hosts, percentiles de tiempos de respuesta, etc.
-
Spring Cloud Netflix Zuul:
- Microservicio que funciona como proxy, gestionando el acceso a los múltiples servicios que componen un sistema.
Service Mesh
- Práctica de arquitectura para administrar y visualizar conjuntos de múltiples microservicios basados en contenedores.
- Diseñado para abordar las complejidades de las arquitecturas de microservicios.
- La responsabilidad de la comunicación entre microservicios se elimina de los microservicios mismos.
- Puede ser considerado como una infraestructura de software dedicada a manejar la comunicación entre microservicios.
Características:
-
Abstracción:
- Abstrae los problemas de arquitectura de microservicios para los desarrolladores.
- Balanceo de carga
- Descubrimiento de servicios
- Centralización: punto de entrada para controlar las funciones de los microservicios.
- Trazabilidad
-
Observabilidad:
- Telemetría y Métricas: recolecta datos sobre las solicitudes (latencia, tasas de error, etc.) para su monitoreo.
Kubernetes
- Plataforma de código abierto para orquestar contenedores.
- Al menos 1 worker - 1 master.
Componentes:
- Servicio:* Conjunto de pods a los que se envía tráfico (ingress).
- Volumen:* Directorio con datos accesibles a los contenedores del pod.
- Namespace:* Cluster virtual o partición del cluster.
- Replica Set:* Garantiza que haya un número específico de réplicas de un Pod ejecutándose en un clúster en cualquier momento. Si un Pod falla, el ReplicaSet asegura que se cree otro para mantener el número deseado de réplicas.
- Deployment:* Gestiona y supervisa la creación y actualización de Pods y ReplicaSets. Se usa para implementar aplicaciones, gestionar cambios en las versiones y controlar la escalabilidad.
- Plano de Control:* Se encarga de gestionar el clúster completo y orquestar el funcionamiento de los nodos trabajadores.
Elementos del Plano de Control:
- API Server (kube-apiserver): Punto central de comunicación en Kubernetes. Actúa como una interfaz REST para interactuar con el clúster.
- Etcd: Base de datos clave-valor distribuida que almacena información sobre el estado del clúster.
- Scheduler (kube-scheduler): Asigna los Pods a los nodos trabajadores.
- Controller Manager (kube-controller-manager): Ejecuta los controladores que supervisan el estado deseado del clúster y ajustan los recursos.
- Nodos Trabajadores (Worker Nodes):* Máquinas (físicas o virtuales) donde se ejecutan los contenedores de las aplicaciones.
Elementos de los Nodos Trabajadores:
- Kubelet: Agente que se ejecuta en cada nodo trabajador, recibe instrucciones del API Server y asegura que los contenedores se ejecuten según las especificaciones.
- Kube-proxy: Gestiona la red en cada nodo. Actúa como proxy de red, distribuyendo el tráfico a los Pods correctos.
Observabilidad de Microservicios
- Agregación de logs
- Agregando métricas
- Trazas distribuidas
- Alertas
Productos de Observabilidad
- Jaeger
- Kiali
- Elasticsearch
- Prometheus
- Grafana
Seguridad en Microservicios
- Debe ser parte del desarrollo desde el inicio.
- Mínimo privilegio posible y alcances limitados.
- Las cuentas de servicio solo deben tener acceso a lo necesario.
- Credenciales fuera del código, almacenadas en el entorno o en Secrets Managers.
- Autenticaciones S2S, OAuth2, TLS, JSON Web Token.
Resiliencia en Microservicios
- Capacidad de un sistema para mantener un nivel aceptable de funcionamiento y recuperarse rápidamente de fallos y errores.
Estrategias de Resiliencia:
-
Timeout & Reintentos:
- Establecer un tiempo límite para la ejecución de las operaciones.
- Reintentos con back-off exponencial y un número máximo de intentos.
-
Circuit Breaker:
- Detención de las peticiones a un microservicio que falla.
- Recuperación del servicio.
- Restablecimiento de las peticiones cuando el servicio se recupera.
-
Bulkheads:
- Protección de recursos mediante barreras.
- Se establecen cuotas de uso para CPU, RAM, persistencia, y APIs.
- Se implementa rate limit para evitar ataques DoS.
-
Idempotencia:
- Capacidad de realizar una acción varias veces sin que cambie el resultado final.
Escalado en Microservicios
-
Escalado Vertical:
- Mejora de los recursos hardware.
- Más memoria, CPU, almacenamiento y ancho de banda.
-
Escalado Horizontal:
- Añadir más instancias del servicio.
- Se mantienen las instancias pequeñas y se replican según la demanda.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
Este cuestionario explora diferentes tipos de archivos relacionados con máquinas virtuales y sus usos. Desde archivos de configuración hasta discos virtuales y almacenamiento de memoria, aprenderás su importancia en la virtualización. Prepárate para poner a prueba tus conocimientos sobre virtualización y sus archivos asociados.