FeaturedNOTICIAS

Cómo cambiar el tamaño de los contenedores Docker entre servidores usando Kubernetes – CloudSavvy IT


Ilustración que muestra los logotipos de Docker y Kubernetes

Docker es una plataforma de contenedorización orientada a desarrolladores que le permite empaquetar aplicaciones como contenedores independientes. Se ejecutarán siempre que esté disponible un tiempo de ejecución de contenedor compatible.

La popularidad de Docker lo ha convertido casi en sinónimo de contenedores, pero no es la tecnología perfecta para todos los casos de uso. Usar Docker tal como está presenta desafíos en la producción, ya que su CLI solo está equipada para administrar contenedores individuales.

Kubernetes es una plataforma de orquestación que administra pilas de contenedores y las escala en varios servidores. Puede implementar en una flota de máquinas físicas, mejorando la redundancia y la resistencia de su servicio. A continuación, le mostramos cómo puede iniciar su clúster para cambiar el tamaño de sus contenedores «Docker».

Conceptos básicos de Kubernetes

Reconocer algunos términos clave de Kubernetes lo ayudará a comprender las diferencias con Docker. El diccionario de Kubernetes describe docenas de recursos que puede agregar a su clúster. Solo los componentes que controlan la programación del contenedor son relevantes para este artículo.

En un nivel alto, una instalación de Kubernetes es un clúster de «nodos». Los nodos son máquinas físicas independientes que alojan sus cargas de trabajo. Un único nodo «maestro» es responsable de coordinar («orquestar») las operaciones del clúster mediante la «programación» de nuevos contenedores en el nodo trabajador más apropiado.

TE INTERESA>>  "Estoy decepcionado por la sanción, pero me alegro de que George esté bien"

Aquí hay algunos términos críticos:

  • Maestría – El nodo principal administra el clúster. Esta es la máquina en la que instalas Kubernetes. Ejecuta el plano de control y delega el alojamiento de aplicaciones en contenedores a los nodos trabajadores.
  • Plan de control – El plano de control es el componente de software del nodo maestro. Incorpora varios servicios, incluido un servidor API, un almacén de configuración y un planificador de contenedores.
  • Nodo – Un nodo es una máquina que alberga sus contenedores. Cada trabajador ejecuta un componente de Kubernetes llamado Kubelet. Este permanece en contacto con el plan de control, recibiendo instrucciones de programación sobre las que actúa para suministrar nuevos contenedores.
  • vaina – Un pod es la unidad de procesamiento más pequeña en un clúster de Kubernetes, que representa un grupo de instancias de contenedor. La abstracción de pod le permite interactuar con varios contenedores que se ejecutan en conjunto.
  • Conjunto de réplicas – Los conjuntos de réplicas son responsables de cambiar el tamaño de los pods para garantizar que haya una cantidad específica de réplicas disponible. Si solicita tres réplicas de un pod, el conjunto de réplicas garantizará que se cumpla la restricción de disponibilidad. Los pods se reemplazan automáticamente en caso de falla, lo que le permite automatizar la replicación de contenedores entre servidores.

La creación de un clúster escalable requiere un nodo principal, al menos dos nodos trabajadores y una distribución que proporcione varias réplicas. Kubernetes podrá programar sus pods en todos los nodos disponibles, lo que le brindará resistencia en caso de que uno falle.

Crea tu clúster

Kubernetes está disponible como una oferta administrada de la mayoría de los principales proveedores de nube. Estos proporcionan una forma de un clic para crear su plano de control y agregar un número variable de nodos de trabajo.

Puede ejecutar un clúster en su hardware mediante una implementación de Kubernetes independiente, como MicroK8s. Necesitará al menos dos máquinas virtuales o físicas aisladas si desea tener soporte de programación redundante.

TE INTERESA>>  Alibaba deepens price war as Taobao provides independent channel for B2B business 1688 · TechNode

Instale MicroK8 en ambas máquinas. Designe un nodo como maestro y use el add-node comando para iniciar el proceso de registro del nodo:

microk8s add-node

Esto emitirá un microk8s join mando. Cambie a su nodo secundario y ejecute el comando. Se unirá al primer clúster como nuevo trabajador. Ambas máquinas están ahora listas para alojar sus cargas de trabajo en contenedores.

Definición de una implementación escalable

Una aplicación que se ejecuta en varios servidores se describe como «escalada horizontalmente». Se está extendiendo a varios entornos distintos. La ampliación de un sistema implica agregar recursos a un entorno existente.

La forma más sencilla de definir una carga de trabajo de Kubernetes es con una implementación. Este tipo de recurso crea pods a partir de una imagen de contenedor y establece ubicaciones de red pública a través de un servicio. Las implementaciones predeterminadas son una sola instancia de Pod, pero se pueden configurar con varias réplicas.

Aquí hay un manifiesto de implementación simple:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx
spec:
  replicas: 3
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:latest
        ports:
        - containerPort: 80

Aplica el manifiesto a tu clúster con Kubectl:

microk8s kubectl apply -f ./manifest.yaml

Kubernetes creará tres Pods, cada uno de los cuales alojará un servidor web NGINX creado por nginx:latest Imagen. El puerto 80 se expone como un puerto de contenedor para permitir el tráfico entrante.

Los pods se distribuirán automáticamente entre los nodos del clúster. Un nodo será elegible para alojar un pod si puede proporcionar suficientes recursos.

Puede actualizar el número de réplicas en cualquier momento. Cambiar el replicas en su manifiesto y vuelva a aplicarlo a su clúster. El programador de Kubernetes actuará para aprovisionar nuevos pods o cancelar los antiguos según sea necesario. Si vas a escalar replicas hasta 0, puede desconectar la aplicación sin eliminar realmente la distribución o los recursos asociados.

Adición dinámica de nodos

Actualizar el recuento de réplicas le permite utilizar los recursos existentes dentro de su clúster. Con el tiempo, es posible que se quede sin capacidad combinada de nodos, lo que evitará que se planifiquen nuevos pods. Kubernetes ofrece una función de escalado automático de clústeres que puede crear y destruir nudos , en realidad cambiando la cantidad de Pods que se pueden programar.

TE INTERESA>>  Auto chipmaker Black Sesame renews Hong Kong IPO application · TechNode

Configurar el ajuste de escala automático es relativamente complejo. El proceso exacto depende del entorno de alojamiento de su clúster. Requiere integración con un escalador automático de clúster que pueda conectarse a su host para detectar cambios en la demanda. La documentación oficial está disponible para Google Cloud; Las soluciones también están disponibles en Amazon EKS y Microsoft AKS.

El ajuste de escala automático funciona al mantener un control constante de los pods que no se pueden programar debido a una capacidad insuficiente del clúster. También considere si los pods correctamente planificados se podrían colocar en una pequeña cantidad de nodos. Luego, el escalador automático usa la API de su proveedor de nube para agregar y eliminar instancias de computación, ajustando dinámicamente los recursos de su clúster. Esto puede afectar la factura, ya que la creación de una nueva instancia suele ser una operación pagada.

Resumen

Kubernetes facilita la implementación de instancias de contenedores en varios servidores. Registre sus máquinas como nodos o use un clúster de nube administrado, luego cree implementaciones que tengan la replicas conjunto de campo. Puede escalar su carga de trabajo actualizando el recuento de réplicas requerido.

Cuando se esperan grandes cambios en la demanda, utilice el ajuste de escala automático para expandir la capacidad de forma dinámica. Esta función le permite crear nuevos nodos sobre la marcha, agregando recursos adicionales para que pueda seguir aumentando la cantidad de réplicas.

Al cambiar el tamaño de los pods, recuerde que también se requiere alguna forma de distribución del tráfico entrante. Si está exponiendo el puerto 80, Kubernetes debe poder asignar solicitudes al puerto 80 en ninguna de los nodos. Funciona automáticamente con implementaciones y servicios. Kubernetes crea un balanceador de carga que monitorea continuamente los pods para comprender hacia dónde se puede dirigir el tráfico.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Botón volver arriba
hentai creampir hentairulz.com saoff summer xxxx hot zoztube.mobi xhamsted ماياخليفة سكس parabg.com سكس قذف جماعى سكس جنوب افريقيا arab-porno.net سكس بنات محجبة freefuck redwap2.com karnataka blue film نيك خادمة freetvtube.info قصص نيك محارم الارشيف 23 sexy rapes teenextube.mobi latest scandals in bollywood milf manga truehentai.com la blue girl manga ang probinsyano june 19 pinoyshowstv.com enchong pokemon henatai hentaicredo.com boku no pico nokare .com gotporn.mobi www.freesexdoor.com indian first night xxx pornxvideos.info xxx six india sex samantha sex zatube.mobi cuddling porn mom son sleeping sex hdtporno.org velamma episode 74 indian free porn mms youjizz.sex velamma episode 79