Red de conocimiento informático - Aprendizaje de programación - ¿Qué hizo el inicio del tema Kubeadm?

¿Qué hizo el inicio del tema Kubeadm?

Kubeadm se lanzó como GA. Como herramienta oficial de instalación del clúster, escribiré un tema especial, que se divide aproximadamente en cinco partes y contendrá más contenido.

Kubeadm pertenece a la segunda capa y se utiliza para administrar el clúster.

Uso del comando

Descripción del parámetro

Kubeadm init arranca los nodos del plano de control de Kubernetes realizando los siguientes pasos:

Kubelet utiliza lo siguiente cuatro documentos.

Si no se proporciona ningún etcd externo, se generarán otras listas de Pod estáticas para etcd. Escriba una lista de pods estática en /etc/kubernetes/manifest; Kubelet monitorea este directorio para crear pods al inicio.

Después de iniciar el pod del plano de control, init comienza a continuar con el siguiente proceso.

Instala el servidor DNS (CoreDNS) y los componentes kube-proxy a través del servidor API. CoreDNS es el servidor DNS predeterminado en Kubernetes versión 1.11 y superiores. Para instalar kube-dns en lugar de Coredns, el complemento DNS debe configurarse en el campo ClusterConfiguration del archivo de configuración de kubeadm (a través del archivo de configuración de kubeadm). Tenga en cuenta que aunque se ha implementado el servidor DNS, el POD no se programará en el nodo antes de instalar CNI (se puede entender que en realidad no se implementará o no tendrá efecto).

Ver la ayuda de la impresión de configuración de kubeadm.

Imprima el archivo de configuración de inicialización predeterminado

Abra initconfig, el contenido es el siguiente

El contenido anterior solo contiene el contenido del tipo InitConfiguration más simple, el completo contenido de kubeadm Contiene cinco partes, de la siguiente manera, cada tipo debe estar separado por aislamiento de documento yaml.

Estructura del archivo Init-full-config.yaml

Para obtener más detalles, consulte la API de kubeadm. Los detalles de configuración de kube-proxy se encuentran aquí.

Por ejemplo, si quiero cambiar el modo de kube-proxy a IPVS, el contenido del init-full-config.yaml modificado es el siguiente

Aprenda cómo habilitar IPVS a través de la configuración de kubeadm.

Para obtener información sobre cómo personalizar el plano de control, consulte .

Las imágenes proporcionadas por Google son inaccesibles por motivos bien conocidos. Por lo tanto, es necesario utilizar espejos domésticos o construir su propio almacén de espejos. Kubeadm proporciona parámetros y sus colegas también admiten la modificación del archivo de configuración de kubeadm para especificar un almacén personalizado.

Utilice los siguientes comandos para ver y obtener las imágenes necesarias para init.

Kubelet utiliza Dockers como tiempo de ejecución de forma predeterminada y utiliza Dockershim integrado para la interacción.

Otros tiempos de ejecución incluyen:

Documento de instalación Instrucciones de instalación de CRI

Después de instalar el tiempo de ejecución de acuerdo con el documento de instalación, debe configurar kubeadm y kubelet de la siguiente manera.

También puedes hacer lo mismo primero a través del parámetro -cri-socket de kubeadm init/reset.

En lugar de copiar los tokens obtenidos de kubeadm init a cada nodo como en el curso básico de kubeadm, podemos paralelizar la distribución de tokens para facilitar la automatización. Para lograr esta automatización se deben conocer las direcciones IP que tendrán los nodos del plano de control una vez iniciados.

Pasos

Una vez iniciado el clúster, puede comunicarse con el clúster a través de las credenciales en /etc /etc/kubernetes/admin.conf

Datos de referencia

Alta disponibilidad automatizada en kubeadm v1.15: batería incluida, pero reemplazable