Weitere Informationen finden Sie in den Beispielen zum Anpassen der Tanzu Kubernetes Grid-Dienst-v1alpha2-API mit globalen Konfigurationseinstellungen für die Container-Netzwerkschnittstelle, den Proxy-Server und TLS-Zertifikate.
Konfigurieren des Tanzu Kubernetes Grid-Diensts mit der v1alpha2-API
apiVersion: run.tanzu.vmware.com/v1alpha2 kind: TkgServiceConfiguration metadata: name: tkg-service-v2-configuration-example spec: defaultCNI: antrea proxy: #supported format is `http://<user>:<pwd>@<ip>:<port>` httpProxy: http://admin:[email protected]:80 httpsProxy: http://admin:[email protected]:80 noProxy: [10.246.0.0/16,192.168.144.0/20,192.168.128.0/20] trust: additionalTrustedCAs: - name: CompanyInternalCA-1 data: LS0tLS1C...LS0tCg== #where "..." is the middle section of the long base64 string - name: CompanyInternalCA-2 data: MTLtMT1C...MT0tPg== defaultNodeDrainTimeout: 0
Voraussetzung: Konfigurieren der Kubectl-Bearbeitung
Zum Skalieren eines Tanzu Kubernetes-Clusters aktualisieren Sie das Cluster-Manifest mit dem Befehl kubectl edit tanzukubernetescluster/CLUSTER-NAME
. Mit dem Befehl kubectl edit wird das Cluster-Manifest in dem durch die KUBE_EDITOR- oder EDITOR-Umgebungsvariablen definierten Texteditor geöffnet. Anweisungen zum Einrichten der Umgebungsvariablen finden Sie unter Angeben eines Standardtexteditors für Kubectl.
Wenn Sie die Spezifikationsänderungen speichern, meldet kubectl
, dass die Änderungen erfolgreich aufgezeichnet wurden. Schließen Sie zum Abbrechen einfach den Editor, ohne zu speichern.
Konfigurieren der Standard-CNI
Der Tanzu Kubernetes Grid-Dienst stellt eine Standard-CNI (Container Network Interface, Containernetzwerkschnittstelle) für Tanzu Kubernetes-Cluster bereit. Mit der Standardkonfiguration können Sie Cluster erstellen, ohne dass die CNI angegeben werden muss. Sie können die Standard-CNI ändern, indem Sie die Dienstspezifikation bearbeiten.
Der Tanzu Kubernetes Grid-Dienst unterstützt zwei CNIs: Antrea und Calico, wobei Antrea als Standardwert fungiert. Weitere Informationen finden Sie unter Tanzu Kubernetes Grid-Dienst-Cluster-Netzwerk.
- Authentifizieren Sie sich beim Supervisor-Cluster.
kubectl vsphere login --server=SVC-IP-ADDRESS --vsphere-username USERNAME
- Führen Sie einen Kontextwechsel zum Ziel-vSphere-Namespace durch.
kubectl config use-context tkgs-cluster-ns
- Listen Sie die Standard-CNI auf.
kubectl get tkgserviceconfigurations
Beispielergebnis:NAME DEFAULT CNI tkg-service-configuration antrea
- Starten Sie den Ladevorgang, um die Tanzu Kubernetes Grid-Dienst-Spezifikation zu bearbeiten.
kubectl edit tkgserviceconfigurations tkg-service-configuration
Das System öffnet die
tkg-service-configuration
-Spezifikation im Standardtexteditor, der durch die Umgebungsvariable KUBE_EDITOR oder EDITOR definiert wird. - Bearbeiten Sie den
spec.defaultCNI
-Wert.Beispiel: Ändern von:spec: defaultCNI: antrea
Ändern in:spec: defaultCNI: calico
- Um die Änderungen anzuwenden, speichern Sie die Datei im Texteditor. Schließen Sie zum Abbrechen den Editor ohne Speichern.
Wenn Sie die Änderung im Texteditor speichern, aktualisiert kubectl die
tkg-service-configuration
-Dienstspezifikation. - Stellen Sie sicher, dass die Standard-CNI aktualisiert wird.
kubectl get tkgserviceconfigurations
Die Standard-CNI wird aktualisiert. Jeder mit Standardnetzwerkeinstellungen bereitgestellte Cluster verwendet die Standard-CNI.NAME DEFAULT CNI tkg-service-configuration calico
Konfigurieren eines globalen Proxyservers
TkgServiceConfiguration
hinzu. Eine Beschreibung der erforderlichen Felder finden Sie unter
Konfigurationsparameter für die Tanzu Kubernetes Grid-Dienst-v1alpha1-API.
- Authentifizieren Sie sich beim Supervisor-Cluster.
kubectl vsphere login --server=SVC-IP-ADDRESS --vsphere-username USERNAME
- Führen Sie einen Kontextwechsel zum Ziel-vSphere-Namespace durch.
kubectl config use-context tkgs-cluster-ns
- Rufen Sie die aktuelle Konfiguration ab.
kubectl get tkgserviceconfigurations
Beispielergebnis:NAME DEFAULT CNI tkg-service-configuration antrea
- Starten Sie den Ladevorgang, um die Tanzu Kubernetes Grid-Dienst-Spezifikation zu bearbeiten.
kubectl edit tkgserviceconfigurations tkg-service-configuration
Das System öffnet die
tkg-service-configuration
-Spezifikation im Standardtexteditor, der durch die Umgebungsvariable KUBE_EDITOR oder EDITOR definiert wird. - Fügen Sie den Unterabschnitt
spec.proxy
bei jedem Pflichtfeld hinzu. Dazu zählenhttpProxy
,httpsProxy
undnoProxy
.apiVersion: run.tanzu.vmware.com/v1alpha1 kind: TkgServiceConfiguration metadata: ... name: tkg-service-configuration-example resourceVersion: "44170525" selfLink: /apis/run.tanzu.vmware.com/v1alpha1/tkgserviceconfigurations/tkg-service-configuration uid: 10347195-5f0f-490e-8ae1-a758a724c0bc spec: defaultCNI: antrea proxy: httpProxy: http://<user>:<pwd>@<ip>:<port> httpsProxy: http://<user>:<pwd>@<ip>:<port> noProxy: [SVC-POD-CIDRs, SVC-EGRESS-CIDRs, SVC-INGRESS-CIDRs]
- Füllen Sie jedes Proxy-Feld mit den entsprechenden Werten auf. Eine Beschreibung der einzelnen Felder finden Sie unter Konfigurationsparameter für die Tanzu Kubernetes Grid-Dienst-v1alpha1-API.
Die erforderlichen Werte für das
noProxy
-Feld stammen aus dem Arbeitslastnetzwerk auf dem Supervisor-Cluster. Wo Sie diese Werte erhalten, entnehmen Sie bitte dem Bild im obigen Thema.Beispiel:apiVersion: run.tanzu.vmware.com/v1alpha1 kind: TkgServiceConfiguration metadata: ... name: tkg-service-configuration-example resourceVersion: "44170525" selfLink: /apis/run.tanzu.vmware.com/v1alpha1/tkgserviceconfigurations/tkg-service-configuration uid: 10347195-5f0f-490e-8ae1-a758a724c0bc spec: defaultCNI: antrea proxy: httpProxy: http://user:[email protected]:3128 httpsProxy: http://user:[email protected]:3128 noProxy: [10.246.0.0/16,192.168.144.0/20,192.168.128.0/20]
- Um die Änderungen anzuwenden, speichern Sie die Datei im Texteditor. Schließen Sie zum Abbrechen den Editor ohne Speichern.
Wenn Sie die Änderungen im Texteditor speichern, aktualisiert kubectl den Tanzu Kubernetes Grid-Dienst mit der Konfiguration, die in der
tkg-service-configuration
-Dienstspezifikation definiert ist. - Stellen Sie sicher, dass der Tanzu Kubernetes Grid-Dienst mit den Proxyeinstellungen aktualisiert wurde.
kubectl get tkgserviceconfigurations -o yaml
- Um dies zu überprüfen, stellen Sie einen Tanzu Kubernetes-Cluster bereit. Weitere Informationen finden Sie unter Workflow zu Bereitstellung von Tanzu Kubernetes-Clustern mithilfe der TKGS-v1alpha2-API.
Verwenden Sie den folgenden Befehl, um zu bestätigen, dass der Cluster den Proxy verwendet.
kubectl get tkc CLUSTER-NAME -n NAMESPACE -o yaml
Zertifikatbasierte Proxykonfiguration
Die Verwendung eines Proxyservers zur Weiterleitung des Internetdatenverkehrs ist für manche Umgebungen eine schwierige Anforderung. Ein Unternehmen in einer stark regulierten Branche, wie z. B. ein Finanzinstitut, verlangt beispielsweise, dass der gesamte Internetdatenverkehr über einen Unternehmens-Proxy läuft.
Sie können die Konfiguration der Tanzu Kubernetes Grid-Dienst zur Bereitstellung der Tanzu Kubernetes-Cluster konfigurieren, um einen Proxy-Server für ausgehenden HTTP/S-Datenverkehr zu verwenden. Weitere Informationen finden Sie unter Konfigurationsparameter für die Tanzu Kubernetes Grid-Dienst-v1alpha1-API.
TkgServiceConfiguration
-Spezifikation hinzufügen.
apiVersion: run.tanzu.vmware.com/v1alpha1 kind: TkgServiceConfiguration metadata: name: tkg-service-configuration-example spec: defaultCNI: antrea proxy: httpProxy: http://user:[email protected]:3128 httpsProxy: http://user:[email protected]:3128 noProxy: [10.246.0.0/16,192.168.144.0/20,192.168.128.0/20] trust: additionalTrustedCAs: - name: first-cert-name data: base64-encoded string of a PEM encoded public cert 1 - name: second-cert-name data: base64-encoded string of a PEM encoded public cert 2 defaultNodeDrainTimeout: 0
Konfiguration externer privater Registrierungen
apiVersion: run.tanzu.vmware.com/v1alpha1 kind: TkgServiceConfiguration metadata: name: tkg-service-configuration-example spec: defaultCNI: antrea trust: additionalTrustedCAs: - name: harbor-vm-cert data: <<<base64-encoded string of a PEM encoded public cert>>>>