k8s (2): Introducción a la implementación del clúster de Kubernetes
1. Implementación localizada
1,1 metros cúbicos
-
Kubeadm es una herramienta diseñada para proporcionar una "ruta rápida" de mejores prácticas para crear
kubeadm init
clústeres de Kuberneteskubeadm join
. -
kubeadm realiza las operaciones necesarias para poner en marcha el clúster viable más pequeño .
-
Por diseño, solo se ocupa del arranque, no de la configuración de la máquina. Así que hay muchos preparativos previos.
-
Del mismo modo, la instalación de varios complementos agradables como los paneles de control de Kubernetes, las soluciones de monitoreo y los complementos específicos de la nube están fuera del alcance.
-
En cambio, queremos crear herramientas de mayor nivel y más personalizadas además de kubeadm, idealmente usar kubeadm como base para todas las implementaciones facilitará la creación de clústeres que cumplan con los requisitos.
-
Enlace de referencia de uso
- inglés: Kubeadm | Kubernetes
- Chino: Kubeadm | Kubernetes
1.2 minikube
- minikube es adecuado para implementar un clúster local de kubernetes, este clúster se usa principalmente con fines de prueba
- minikube puede permitirle implementar rápidamente un clúster de kubernetes en un solo host
- Puede implementar el clúster de Kubernetes en todas las plataformas (Linux, MAC, Windowns)
1.3 Método de implementación binaria
- Despliegue de forma puramente humana
- Implementación a nivel de producción empresarial
- largo tiempo de implementación
- Necesidad de configurar el contenido:
- Certificado
- perfil de servicio
- Administre archivos con el servicio de administración systemd
- kubeconfig
1.4 Herramientas de implementación de terceros nacionales
rke
- Es una herramienta de implementación de clústeres de kubernetes rápida y versátil
- Complete rápidamente la implementación del clúster de Kubernetes con solo un archivo de configuración
- Es conveniente agregar hosts con cualquier número de nodos en kubernetes
kubekey
-
Kubeykey es una herramienta de instalación de clústeres de Kubernetes desarrollada por KubeSphere basada en el lenguaje Go. Puede instalar Kubernetes y KubeSphere de manera fácil, eficiente y flexible individualmente o como un todo. La capa inferior usa Kubeadm para instalar clústeres de Kubernetes en paralelo en múltiples nodos, lo que admite la creación, escalado y actualización de clústeres de Kubernetes.
-
KubeKey proporciona un modo de alta disponibilidad incorporado y admite la instalación con un solo clic de un clúster de Kubernetes de alta disponibilidad.
-
KubeKey no solo ayuda a los usuarios a crear clústeres en línea, sino que también sirve como una solución de instalación fuera de línea.
-
KubeKey se puede utilizar en los siguientes tres escenarios de instalación:
- Instale solo el clúster de Kubernetes
- Instalación con un solo clic de Kubernetes y KubeSphere
- Clúster de Kubernetes existente, use ks-installer para implementar KubeSphere en él
kubeasz
El proyecto se compromete a proporcionar herramientas para implementar rápidamente clústeres de k8s de alta disponibilidad y, al mismo tiempo, se esfuerza por convertirse en un libro de referencia para la práctica y el uso de k8s; implementar en modo binario y usar ansible-playbook para realizar la automatización; proporcionar un secuencia de comandos de instalación con un solo clic, o siga la guía de instalación paso a paso para instalar cada componente.
- El clúster cuenta con autenticación bidireccional TLS, autorización RBAC, alta disponibilidad multimaestro, compatibilidad con políticas de red, copia de seguridad y recuperación, instalación fuera de línea
- Versión del clúster kubernetes v1.20, v1.21, v1.22, v1.23, etc.
- Sistema operativoCentOS/RedHat 7, Debian 9/10, Ubuntu 16.04/18.04/20.04
- Ventana acoplable en tiempo de ejecución 19.03.x, 20.10.x contenedord v1.5.8
- Calicó de red, cilio, franela, kube-ovn, kube-router
- URL de alojamiento del código del proyecto: https://github.com/easzlab/kubeasz
2. Implementación de plataforma de nube pública
2.1 La plataforma de nube pública proporciona servicios de nube de contenedores
- Ali nube
- ACK
- Nube de Huawei
- CCE
- Nube Tencent
- EX
2.2 Implementar en la plataforma de nube pública
- kubeadm
- minikube
- Despliegue binario
- rke
- kubekey
- kubeasz