Nube

Cómo escalar las implementaciones de servicios con Portainer

Escalar los servicios de Docker es realmente muy simple con Portainer. Jack Wallen le muestra cómo implementar rápidamente Docker Swarm y Portainer, y luego escalar rápidamente un servicio a todos los nodos en Swarm.

jack portainer deployment
Imagen: vectorhot/Adobe Stock

Una de las muchas razones por las que los contenedores han arrasado en las empresas es su capacidad de escalar fácilmente hacia arriba y hacia abajo según sea necesario. Este aspecto de los contenedores es tan crucial que algunos desarrolladores hacen todo lo posible para que sus implementaciones puedan escalar automáticamente para satisfacer las demandas.

Pero no todas las implementaciones requieren ese nivel de flexibilidad. Para aquellas implementaciones de servicios de contenedores que podrían beneficiarse del escalado manual, siempre existe la línea de comando, que no es para nada desafiante (descubra cómo en mi artículo Cómo implementar un servicio en un clúster de Docker Swarm).

Pero para aquellos que prefieren un enfoque de GUI para todos los contenedores, existe mi plataforma de administración favorita, Portainer. Portainer hace que sea aún más fácil escalar hacia arriba o hacia abajo sus servicios Docker implementados, según sea necesario. Eso es exactamente por lo que quiero guiarlo aquí, la escala (hacia arriba y hacia abajo) de sus servicios Docker de implementación, a través de Portainer.

VER: Kit de contratación: Cloud Engineer (Tecnopedia Premium)

Lo que necesitarás

Para escalar sus servicios de esta manera, necesitará una instancia en ejecución de Portainer implementada en un Docker Swarm. Describamos el proceso de implementación de Swarm y Portainer y luego escalaremos un nuevo servicio.

LEER  Microsoft lanzó oficialmente el servicio Azure OpenAI

Cómo implementar Docker Swarm

Voy a destilar este proceso hasta lo esencial. Necesitará al menos tres máquinas y lo demostraré en Ubuntu Server 22.04. En cada máquina, instale Docker con:

sudo apt-get docker.io -y

Asegúrese de que su usuario tenga acceso al grupo docker (en cada máquina) con el comando:

sudo usermod -aG docker $USER

Cerrar sesión y volver a iniciar sesión.

En el controlador Docker, inicialice Swarm con:

docker swarm init --advertise-addr SERVER

Dónde SERVER es la dirección IP del controlador.

Eso generará el comando que debe ejecutar en cada uno de los nodos para conectarse al enjambre. Solo para asegurarnos de que todo funcione y de que tengamos un servicio con el que trabajar más adelante, implemente un servicio con:

docker service create -p 8001:80 --name webservice nginx

Cómo implementar Portainer

Ahora implementaremos Portainer. Primero, crea un volumen con:

docker volume create portainer_data

Ahora puede implementar Portainer con el comando:

docker run -d -p 8000:8000 -p 9443:9443 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce

Después de uno o dos minutos, dirija un navegador web a https://SERVER:9443, donde SERVER es la dirección IP del servidor de alojamiento. Portainer ahora está listo para funcionar.

Cómo escalar un servicio con Portainer

Ahora que tenemos Docker y Portainer en ejecución, es hora de escalar ese servicio al Swarm. Recuerde, solo implementamos un total de tres nodos, por lo que ese es el límite de nuestra escala.

Dentro de Portainer, haga clic en Servicios en la barra lateral izquierda y debería ver nuestro servicio de prueba que creamos anteriormente desde la línea de comando (Figura A).

Figura A

portainerscalea
Imagen: Jack Wallen/Tecnopedia. Nuestro servicio de prueba (denominado servicio web) está listo para escalar.

Debajo de la columna Modo de programación (cuarta desde la izquierda), debería ver una escala 1/1 replicada. Entre 1/1 y Scale hay flechas que apuntan hacia arriba y hacia abajo. Para escalar el servicio, haga clic en las flechas y luego en el campo resultante escriba 3 o use la flecha hacia arriba para escalar el servicio a los tres nodos (Figura B).

Figura B

portainerscaleb
Imagen: Jack Wallen/Tecnopedia. Escalando nuestro servicio a los tres nodos de nuestro Docker Swarm

El servicio tardará un momento en escalar. Al principio leerá 1/3, pero finalmente debería leer 3/3, lo que significa que se ha escalado con éxito a los tres nodos. Es posible que deba actualizar la página de Servicios de Portainer para ver que el servicio se ha escalado (Figura C).

Figura C

portainerscalec
Imagen: Jack Wallen/Tecnopedia. Nuestro servicio se ha escalado con éxito a los tres nodos.

Y eso, mis queridos amigos, es todo lo que se necesita para escalar un servicio con Portainer. No hay nada más fácil que eso.

Suscríbase a How To Make Tech Work de Tecnopedia en YouTube para obtener los últimos consejos tecnológicos para profesionales de negocios de Jack Wallen.

LEER  Por qué expandirse a productos digitales es un proceso incremental para Moleskine

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba