Utilice Sealos para instalar un clúster K8 a la velocidad de la luz en un entorno fuera de línea

Autor: Yin Min. Embajador de la comunidad de código abierto de Sealos, entusiasta de los nativos de la nube.

Cuando la entrega en contenedores se encuentra con entornos fuera de línea

En el acelerado entorno de entrega de software actual, la entrega en contenedores se ha convertido en la tecnología elegida por muchas empresas. En un entorno con acceso a la red pública, la entrega en contenedores no solo puede mejorar la eficiencia del desarrollo y la entrega de software, sino también ayudar a las empresas a lograr una iteración rápida y una entrega continua.

Sin embargo, en un entorno fuera de línea, la entrega en contenedores enfrenta muchos desafíos, incluida la dificultad para preparar paquetes de software e imágenes, una configuración engorrosa y un largo tiempo de implementación. En este artículo, exploraremos los puntos débiles del uso de la entrega en contenedores en entornos fuera de línea desde una perspectiva de operación y mantenimiento, y propondremos algunas soluciones para ayudar a las empresas a lograr una entrega en contenedores eficiente en entornos fuera de línea.

escena empresarial

Nuestra empresa se dirige principalmente a clientes gubernamentales y empresariales , y los productos entregados deben implementarse en la intranet. Como persona a cargo de operaciones y mantenimiento, me preocupa cómo entregar sistemas comerciales en contenedores en el entorno fuera de línea del cliente. El entorno único de las salas de computación de IDC para clientes gubernamentales y empresariales ha resultado en que los estudiantes actuales de operación y mantenimiento sean ineficientes al utilizar la entrega en contenedores y la satisfacción del cliente no sea alta. Para resolver este problema, necesitamos encontrar una solución que pueda rápidamente implementar e implementar en un entorno fuera de línea Herramientas para administrar clústeres de Kubernetes.

Existen los siguientes puntos débiles comunes con la entrega en contenedores en entornos fuera de línea:

1. Alto costo de aprendizaje y comprensión.

Kubernetes es un sistema complejo que requiere cierto aprendizaje y comprensión antes de poder utilizarlo de manera competente. Esta es una gran dificultad para los ingenieros de operación y mantenimiento que no dominan muy bien esta tecnología.

2. Gestión de imágenes

En un entorno fuera de línea, las imágenes y dependencias de Kubernetes no se pueden descargar directamente desde Internet. Por lo tanto, debe descargar las imágenes y dependencias requeridas localmente con anticipación e importarlas al clúster de Kubernetes. Esto puede requerir algo de tiempo y esfuerzo.

3. Configuración del entorno

En un entorno fuera de línea, debe configurar manualmente todos los componentes y dependencias requeridos por Kubernetes, como etcd, kube-apiserver, kube-controller-manager, kube-scheduler, kubelet, kube-proxy, etc. Esto requiere una gran experiencia en operación y mantenimiento durante la implementación para solucionar problemas de inicialización del entorno.

4. Configuración de red

Los clústeres de Kubernetes deben tener la configuración de red configurada correctamente para que los contenedores puedan comunicarse entre sí. En un entorno fuera de línea, la configuración de la red puede ser más compleja y requiere una configuración cuidadosa para garantizar un funcionamiento adecuado.

Con base en los puntos débiles comunes anteriores, podemos ver que el uso de tecnología de contenedorización para la entrega en un entorno fuera de línea todavía tiene un alto umbral de aprendizaje y dificultad de configuración, y no puede lograr el efecto de la entrega relámpago lista para usar.

solución

1. ¿Utiliza Sealos para lograr un embalaje con un solo clic y una entrega relámpago?

Sealos puede reflejar todo el clúster como Docker para realizar la construcción, entrega y operación de software distribuido.

Dirección del proyecto Sealos: https://github.com/labring/sealos

2. Escenarios de aplicación

  • Instalación del clúster de Kubernetes
  • Los clústeres, bases de datos, middleware y aplicaciones SaaS de Kubernetes se empaquetan y entregan con un solo clic.
  • Entrega sin conexión, soporte multiarquitectura, soporte de localización
  • Entrega de varias aplicaciones distribuidas orquestadas en Kubernetes

3. Diagrama de arquitectura de implementación

4. Escriba un Kubefile que sea muy similar a Dockerfile para crear una imagen de clúster y use Clusterfile para ejecutar un clúster.

Despliegue real

1. Descargar los binarios de Sealos

$ wget https://github.com/labring/sealos/releases/download/v4.1.4/sealos_4.1.4_linux_amd64.tar.gz \
   && tar zxvf sealos_4.1.4_linux_amd64.tar.gz sealos && chmod +x sealos && mv sealos /usr/bin

2. Escriba kubefile y cree una imagen de clúster

Nota: Aquí, la imagen que contiene Calico se encapsula según Kubernetes 1.24.0 como demostración. La imagen empresarial real también se puede encapsular según este método.

FROM labring/kubernetes:v1.24.0-amd64
COPY cni ./cni
CMD ["kubectl apply -f cni/tigera-operator.yaml","kubectl apply -f cni/custom-resources.yaml"]
$ sealos build -t registry.cn-hangzhou.aliyuncs.com/flowyun/kubernetes-calico:latest -f Kubefile .

3. Guarde la imagen construida.

$ sealos save -o Kubernetes.tar registry.cn-hangzhou.aliyuncs.com/demo/Kubernetes-calico:latest

4. Copie el archivo binario sealos y la imagen del clúster al entorno fuera de línea.

$ tar zxvf sealos_4.1.4_linux_amd64.tar.gz sealos && chmod +x sealos && mv sealos /usr/bin
$ sealos load -i Kubernetes.tar

5. Compruebe si la imagen del clúster se importó correctamente

$ sealos images

6. Instale el clúster

Nota: Tome la instalación independiente como ejemplo; la instalación en clúster es la misma.

$ sealos run registry.cn-hangzhou.aliyuncs.com/demo/Kubernetes-calico:latest --single

7. Verificar el clúster

$ kubectl get pod -A

8. Acceda a la verificación del sistema empresarial

Comparación de eficiencia

Nombre del servicio de implementación Los métodos de entrega tradicionales requieren mucho tiempo para implementarse Tiempo de implementación del método de entrega de rayos Sealos
base de datos mariadb 1 hora 1 minuto
Middleware (redis, nacos) 1 hora 30 minutos
Configuración de Kubernetes 4 horas
Configuración y depuración de componentes de Kubernetes 2 horas
Servicios de sistemas empresariales 2 horas
12'hora/persona 31'min/persona

7. Resumen

  1. Sealos puede implementar y actualizar rápidamente clústeres de Kubernetes. Dado que Sealos utiliza paquetes fuera de línea para proporcionar software, no necesita depender de conexiones a Internet y puede implementar y actualizar clústeres rápidamente en un entorno fuera de línea, lo que mejora la eficiencia de la implementación.
  2. Sealos opera de manera muy estable y confiable en un entorno fuera de línea. Dado que no se ve afectado por las fluctuaciones de la red externa, el diseño de Sealos lo hace muy estable y confiable cuando se ejecuta en un entorno fuera de línea, lo que mejora la confiabilidad.
  3. Sealos utiliza paquetes fuera de línea y no necesita descargar software de Internet, por lo que es menos susceptible a ataques de red y malware, lo que mejora la seguridad.
  4. Sealos utiliza archivos YAML estándar de Kubernetes para crear clústeres, lo que significa que los usuarios pueden personalizarlos y ampliarlos según sus necesidades, lo que aumenta la flexibilidad.
  5. Sealos es fácil de usar y no requiere configuraciones ni comandos complejos, solo necesita seguir la guía para operar, lo que reduce el umbral de aprendizaje y uso y mejora la facilidad de uso.

Sealos es una herramienta potente y fácil de usar que ayuda a las empresas a lograr una entrega en contenedores eficiente en entornos fuera de línea. Sealos puede implementar y actualizar rápidamente clústeres de Kubernetes. Se ejecuta de manera muy estable y confiable en un entorno fuera de línea. Utiliza paquetes fuera de línea y no necesita descargar software de Internet, por lo que no es susceptible a ataques de red ni malware. Utiliza Kubernetes estándar. Archivos YAML para crear clústeres, reduciendo el umbral de aprendizaje y uso, y mejorando la facilidad de uso.

Supongo que te gusta

Origin blog.csdn.net/alex_yangchuansheng/article/details/132664063
Recomendado
Clasificación