Erstellen von Maschinen-Images

In diesem Abschnitt wird beschrieben, wie Sie benutzerdefinierte Maschinen-Images erstellen, die als Knoten-VM-Vorlagen für einen eigenständigen Tanzu Kubernetes Grid (TKG)-Verwaltungscluster und die damit erstellten Arbeitslastcluster verwendet werden.

Informationen zum Erstellen benutzerdefinierter Images für einen vSphere with Tanzu Supervisor-Cluster finden Sie im vSphere Tanzu Kubernetes Grid Image Builder-Repository.

Dieses Thema bietet Hintergrundinformationen zu benutzerdefinierten TKG-Images.

Hinweis

Zur Verwendung eines benutzerdefiniertes Maschinen-Images für Verwaltungsclusterknoten müssen Sie den Verwaltungscluster mit der Installationsprogramm-Schnittstelle und nicht über eine Konfigurationsdatei bereitstellen.

Überblick

Jedes benutzerdefinierte Maschinen-Image verpackt eine Basisbetriebssystem- und eine Kubernetes-Version zusammen mit allen zusätzlichen Anpassungen in ein Image, das auf vSphere ausgeführt wird. Benutzerdefinierte Linux-Images können auch in der AWS- oder Microsoft Azure-Infrastruktur ausgeführt werden. Ein benutzerdefiniertes Image muss auf den Betriebssystemversionen basieren, die von Tanzu Kubernetes Grid unterstützt werden. Beim Basisbetriebssystem kann es sich um ein Betriebssystem handeln, das von VMware unterstützt, aber nicht verteilt wird, wie z. B. Red Hat Enterprise Linux (RHEL) v8. Eine Liste der unterstützten Betriebssysteme finden Sie unter Zielbetriebssysteme.

Kubernetes Image Builder

Verwenden Sie zum Erstellen benutzerdefinierter Maschinen-Images für Tanzu Kubernetes Grid-Clusterknoten das Container-Image aus dem Upstream-Projekt Kubernetes Image Builder. Kubernetes Image Builder wird auf Ihrer lokalen Workstation ausgeführt und verwendet Folgendes:

  • Ansible standardisiert den Prozess der Konfiguration und Bereitstellung von Maschinen über mehrere Zielverteilungsfamilien hinweg, wie z. B. Ubuntu und CentOS.
  • Packer automatisiert und standardisiert den Prozess der Image-Erstellung für aktuelle und zukünftige CAPI-Anbieter und packt die Images für ihre Zielinfrastruktur, sobald sie erstellt wurden.
  • Image Builder erstellt die Images mithilfe einer nativen Infrastruktur für jeden Anbieter:
    • Amazon Web Services (AWS)
      • Image Builder erstellt benutzerdefinierte Images von Basis-AMIs, die auf AWS veröffentlicht werden, wie z. B. offizielle Ubuntu-AMIs.
      • Das benutzerdefinierte Image wird innerhalb von AWS erstellt und dann in Ihrem AWS-Konto in einer oder mehreren Regionen gespeichert.
      • Weitere Informationen finden Sie unter Erstellen von Images für AWS in der Image Builder-Dokumentation.
    • Azure:
      • Sie können Ihr benutzerdefiniertes Image in einer freigegebenen Azure-Image-Galerie speichern.
      • Weitere Informationen finden Sie unter Erstellen von Images für Azure in der Image Builder-Dokumentation.
    • vSphere:
      • Image Builder erstellt OVA-Images (Open Virtualization Archive) anhand des ursprünglichen Installations-ISO-Images der Linux-Distribution.
      • Sie importieren die resultierende OVA-Datei in einen vSphere-Cluster, erstellen einen Snapshot für schnelles Klonen und markieren dann das Maschinen-Image als vm template.
      • Weitere Informationen finden Sie unter Erstellen von Images für vSphere in der Image Builder-Dokumentation.

Benutzerdefinierte Images ersetzen Standard-Images

Für gängige Kombinationen aus Betriebssystemversion, Kubernetes-Version und Zielinfrastruktur stellt Tanzu Kubernetes Grid Standardmaschinen-Images bereit. Beispielsweise dient ein ova-ubuntu-2004-v1.24.10+vmware.1-tkg-Image als das OVA-Image für Ubuntu v20.04 und Kubernetes v1.24.10 auf vSphere.

Für andere Kombinationen aus Betriebssystemversion, Kubernetes-Version und Infrastruktur, wie z. B. mit dem RHEL v8-Betriebssystem oder Windows, stehen keine Standardmaschinen-Images zur Verfügung. Diese können aber erstellt werden.

Wenn Sie ein benutzerdefiniertes Image mit derselben Betriebssystemversion, Kubernetes-Version und Infrastruktur erstellen und verwenden, die ein Standard-Image bereits aufweist, ersetzt das benutzerdefinierte Image das Standard-Image. Die Tanzu CLI erstellt anschließend neue Cluster mit dem benutzerdefinierten Image. Das Standard-Image wird für diese Kombination aus Betriebssystemversion, Kubernetes-Version und Zielinfrastruktur nicht mehr verwendet.

Cluster-API

Cluster-API (CAPI) basiert auf den Prinzipien einer unveränderlichen Infrastruktur. Alle Knoten, aus denen ein Cluster besteht, werden von einer gemeinsamen Vorlage oder einem Maschinen-Image abgeleitet.

Wenn CAPI einen Cluster anhand eines Maschinen-Images erstellt, wird vorausgesetzt, dass verschiedene Elemente konfiguriert, installiert und ausgeführt werden und erreichbar sind. Hierzu gehören:

  • Die im Cluster-Manifest angegebenen Versionen von kubeadm, kubelet und kubectl.
  • Eine Container-Laufzeit, meistens containerd.
  • Alle erforderlichen Images für kubeadm init und kubeadm join. Sie müssen alle Images einschließen, die nicht veröffentlicht sind und lokal abgerufen werden müssen (wie bei von VMware signierten Images).
  • cloud-init wurde so konfiguriert, dass Bootstrap-Anweisungen akzeptiert werden.

Nächste Schritte

Informationen zum Erstellen von Images finden Sie in folgenden Themen:

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