Crear imágenes de máquina

En esta sección se describe cómo crear imágenes de máquina personalizadas para utilizarlas como plantillas de máquina virtual de nodo para un clúster de administración independiente de Tanzu Kubernetes Grid (TKG) y los clústeres de carga de trabajo que crea.

Para crear imágenes personalizadas para un clúster supervisor vSphere with Tanzu, consulte el repositorio de vSphere Tanzu Kubernetes Grid Image Builder.

En este tema se proporciona información general sobre las imágenes personalizadas de TKG.

Nota

Para utilizar una imagen de máquina personalizada para los nodos del clúster de administración, debe implementar el clúster de administración con la interfaz del instalador, no desde un archivo de configuración.

Descripción general

Cada imagen de máquina personalizada empaqueta una versión de sistema operativo base y una versión de Kubernetes, junto con cualquier personalización adicional, en una imagen que se ejecuta en vSphere. Las imágenes personalizadas de Linux también se pueden ejecutar en la infraestructura de AWS o Microsoft Azure. Una imagen personalizada debe basarse en las versiones de sistema operativo compatibles con Tanzu Kubernetes Grid. El sistema operativo base puede ser un sistema operativo compatible con VMware, pero que no distribuye, por ejemplo, Red Hat Enterprise Linux (RHEL) v8. Para ver la lista de sistemas operativos compatibles, consulte Sistemas operativos principales.

Kubernetes Image Builder

Para compilar imágenes de máquina personalizadas para los nodos del clúster de Tanzu Kubernetes Grid, utilice la imagen de contenedor del proyecto ascendente Kubernetes Image Builder. Kubernetes Image Builder se ejecuta en la estación de trabajo local y utiliza lo siguiente:

  • Ansible estandariza el proceso de configuración y aprovisionamiento de máquinas en varias familias de distribución de destino, como Ubuntu y CentOS.
  • Packer automatiza y estandariza el proceso de creación de imágenes para proveedores CAPI actuales y futuros, y empaqueta las imágenes para su infraestructura de destino una vez que se hayan creado.
  • Image Builder compila las imágenes mediante la infraestructura nativa para cada proveedor:
    • Amazon Web Services (AWS)
      • Image Builder compila imágenes personalizadas a partir de AMI base que se publican en AWS, como las AMI oficiales de Ubuntu.
      • La imagen personalizada se compila dentro de AWS y, a continuación, se almacena en la cuenta de AWS en una o varias regiones.
      • Consulte Compilación de imágenes para AWS en la documentación de Image Builder.
    • Azure:
    • vSphere:
      • Image Builder compila imágenes de Open Virtualization Archive (OVA) a partir de la ISO de la instalación original de la distribución Linux.
      • Importe el archivo OVA resultante en un clúster vSphere, tome una instantánea para la clonación rápida y, a continuación, marque la imagen de la máquina como una plantilla de máquina virtual vm template.
      • Consulte Compilación de imágenes para obtener vSphere en la documentación de Image Builder.

Imágenes personalizadas Reemplazar imágenes predeterminadas

Para combinaciones comunes de versión de sistema operativo, versión de Kubernetes e infraestructura de destino, Tanzu Kubernetes Grid proporciona imágenes de máquina predeterminadas. Por ejemplo, una imagen ova-ubuntu-2004-v1.24.10+vmware.1-tkg sirve como imagen OVA para Ubuntu v20.04 y Kubernetes v1.24.10 en vSphere.

Para otras combinaciones de versión de sistema operativo, versión de Kubernetes e infraestructura, como con el sistema operativo RHEL v8 o Windows, no hay imágenes de máquina predeterminadas, pero puede compilarlas.

Si compila y utiliza una imagen personalizada con la misma versión del sistema operativo, la versión de Kubernetes y la infraestructura que ya tiene una imagen predeterminada, la imagen personalizada reemplaza a la predeterminada. A continuación, la CLI de Tanzu crea nuevos clústeres mediante la imagen personalizada y deja de utilizar la imagen predeterminada para esa combinación de versión de sistema operativo, versión de Kubernetes e infraestructura de destino.

API del clúster

Cluster API (CAPI) se basa en los principios de infraestructura inmutable. Todos los nodos que conforman un clúster se derivan de una plantilla o una imagen de máquina comunes.

Cuando CAPI crea un clúster a partir de una imagen de máquina, espera que se configuren, instalen y se pueda acceder a ellos o estén en ejecución, entre ellos:

  • Las versiones de kubeadm, kubelet y kubectl se especifican en el manifiesto del clúster.
  • Un tiempo de ejecución de contenedor, con frecuencia containerd.
  • Todas las imágenes necesarias para kubeadm init y kubeadm join. Debe incluir cualquier imagen que no esté publicada y que se deba extraer localmente, como con las imágenes firmadas por VMware.
  • cloud-init configurado para aceptar las instrucciones de arranque.

Qué hacer a continuación

Para obtener información sobre cómo crear imágenes, consulte los siguientes temas.

check-circle-line exclamation-circle-line close-line
Scroll to top icon