MICROSERVICIOS Flashcards

1
Q

¿En que consiste la virtualización basada en contenedores?

A

En una capa de virtualización que permite ejecutar instancias de usuario de manera independiente, llamadas contenedores, pero compartiendo el mismo Kernel.

Estos contenedores incluyen las librerias, configuraciones y binarios para ejecutarse.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Nombre cuatro tecnologias de contenedores

A

Docker
RKT
OpenVZ
Apache Mesos

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

¿Como se denomina a la plantilla de Docker que tenemos construida o generada en disco, lista para ser ejecutada?

A

imagen

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

¿Como se denomina en Docker a un imagen que la hemos puesto en funcionamiento?

A

contenedor

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

¿Cual es el concepto que hay detras de asociarle a un contenedor Docker la posibilidad de un almacenamiento persistente?

A

volumen

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

¿Con que herramientas se pueden gestionar los contendores en distintos nodos de un cluster, asi como monitorizarlos, etc?

A

Kubernetes
Docker-swarm

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Cuando manejamos en desarrollo unos cuantos contenedores de Docker y se hace un poco tediosa la tarea de manejarlos, ¿existe alguna herramienta con la que podamos actuar sobre todos ellos a la vez?

A

Docker compose

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

¿Que dos grandes diferencias de filosofia existe entre una VM y un Contenedor?

A
  • Los contenedores se crean y se detruyen continuamente
  • Ocupan poco espacio (virtualizacion ligera)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Para que sirve el siguiente comando y la etiqueta:

docker build -t etiqueta .

A

Construye en disco una imagen según el fichero Docker file y le asocia esa etiqueta para luego poder referirnos a ella cuando lancemos algún contenedor

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

¿Que patron utilizarías para que si un microservicio deja de responder o responde errores, no le enviemos peticiones hasta que se recupere?

A

Circuit Breaker

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

¿Que técnicas asíncronas de comunicación entre microservicios conocemos?

A

Petición Respuesta (Request-response)

Datos compartidos (Common Data)

Dirigido por eventos (Event-driven)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

¿Cómo se pueden implementar transacciones en una arquitectura de microservicios?

A

Transacciones Distribuidas (2-phase-commit) (voting - commit)

Usando las SAGAS que consiste en partir una transaccion en microtransacciones, gobernadas por un orquestador o una coreografía, y aplicar mecanismos de reintentos, compensación o rollback en caso de errores.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

¿En que consiste CQRS?

A

Command and Query Responsibility Segregation

Separar las operaciones de lectura de las de escritura en una bbdd:

Separando sólo por APIs
Separando los modelos de datos de esas APIs
Separando también las BBDD en instancias de R y W sincronizadas

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

¿Como se llama a la agrupación de contenedores que se ejecutan en un Nodo de Kubernetes?

A

POD

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Cuando agrupamos PODS y los ‘servimos’ con una dirección de red, lo denominamos ___________

A

Servicio

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

¿En que consiste FaaS?

A

Function as a Service

Nos preocupamos de publicar el código fuente, que se activa, hace su trabajo y se destruye, aislandonos de toda la gestión del entorno de ejecución

Proveedores Cloud: Google Cloud Functions, AWS Lambda, Azure Functions, Qinling de OpenStack

17
Q

¿En que consiste la idempotencia en microservicios?

A

Múltiples ejecuciones de la misma función o microservicio, con los mismos datos, deben producir el mismo resultado (no un incremento o acumulado si ocurriese un reintento o una repetición)

18
Q

¿Como podemos escalar fácilmente microservicios bajo demanda? ¿Y si se quedan cortos de memoria, como se llamaría ese escalado?

A

Escalado Horizontal o duplicación horizontal: Lanzamos más instancias (contenedores/pods) en otros nodos worker.

Si necesitamos mejorar los recursos asignados al pod/contenedor usamos el escalado vertical

19
Q

¿Que herramientas de observabilidad en microservicios conocemos?

A

Prometheus

Grafana

ElasticSearch

Jaeger

Kiali

20
Q

Enumere distintos tipos de pases a producción en arquitecturas de microservicios

A

Green and Blue (ejecuciones paralelas)

Tests A/B

Canary builds

Ramped/Rolling

21
Q

¿Donde debemos guardar nuestras imágenes tras crearlas?

A

En un repositorio de imagenes, ya sea público como Docker HUB o privado como Nexus o Container Registries de los proveedores de Nube.