build 6ddc7a35 | content blog-content@417154f · 338 posts | profiles 32 · corpus 315 | ● 0 skipped | format run

$ soultec get post/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca -o yaml$ soultec get post/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca -o json$ soultec get post/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca -o toml$ soultec get post/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca -o xml$ python3 lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca.pyPS> ./lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca.ps1$ go run lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca.go$ node lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca.js

apiVersion: soultec.ch/v1kind: Postmetadata: name: lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca locale: de labels: author: matthias-grasmueck series: lessons-learned capability/network: 2.16 capability/security: 1.91 capability/containers: 2.51 vendor/vmware: 0.98 annotations: source: blog-content/posts/de/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca.md route: /de/insights/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca/ schema: /nerd/schema/posts.json markdown: /de/insights/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca.mdspec: title: >- vSphere with Tanzu und NSX Advanced Load Balancer Integration mit Private CA date: 2024-02-05 author: matthias-grasmueck locale: de summary: >- Ab VMware vSphere 8.0 Update 2 ist es möglich, vSphere with Tanzu mit VMware NSX als Networking Stack und VMware NSX Advanced Load Balancer (ALB) als integrierten L4 Load Balancer bereitzustellen. capabilities: [network, security, containers] vendors: [vmware] series: lessons-learned hero: >- /blog-assets/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca/hero.webp legacySlug: >- lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca migrated: 2026-08-24 draft: false sections: - body: | Ab VMware [vSphere 8.0 Update 2](https://docs.vmware.com/en/VMware-vSphere/8.0/rn/vmware-vsphere-with-tanzu-80-release-notes/index.html#What's%20New-What's%20New%20September%2021,%202023) ist es möglich, vSphere with Tanzu mit VMware NSX als Networking Stack und VMware NSX Advanced Load Balancer (ALB) als integrierten L4 Load Balancer bereitzustellen. Darüber hinaus kann der NSX Advanced Load Balancer auch als L7 Ingress ([AKO](https://github.com/vmware/load-balancer-and-ingress-services-for-kubernetes/blob/master/docs/README.md)) Controller verwendet werden, um zusätzliche Enterprise-Features zur Verfügung zu stellen, wie bspw. Container- und App-Security mit WAF, real-time Application Performance Monitoring, Network & End Users Analytics/Insights uvm. Dadurch ist es möglich, klassische L4/L7 Load Balancing Services bereitzustellen und parallel dazu auch Microservice-Anforderungen für Kubernetes Plattformen zu berücksichtigen. So lassen sich sämtliche NSX ALB Service Engine (Dataplane Komponenten, welche das effektive Load Balancing übernimmt) Instanzen, ob für Load Balanacing von virtuellen Maschinen oder Kuberentes basierte Workloads, in einem zentralen UI/Plattform verwalten. - heading:

Das Problem

body: | Bei einem kürzlich durchgeführten Tanzu-Projekt, das auf vSphere 8.0 Update 2, NSX 4.1.2.1 und NSX ALB 22.1.5 basierte, stiessen wir auf ein Problem, das uns daran hinderte, den Supervisor Cluster zu initialisieren. Als wir versuchten, den Supervisor Cluster zu aktivieren, trat während der **Workload Network** Konfigurationsphase ein Timeout-Problem auf. Als wir die NSX ALB-Konfiguration überprüften, stellten wir fest, dass kein einziges Objekt erstellt und auch keine entsprechenden Events in den Protokollen generiert wurden. Daraufhin überprüften wir die NCP-Protokolle und fanden folgende Einträge: ```bash [ncp GreenThread-125 W] nsx_ujo.ncp.nsx.policy.ako_bootstrap_service Unexpected exception from NSX manager when acquiring AVI auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain. [ncp GreenThread-125 W] nsx_ujo.ncp.nsx.policy.ako_bootstrap_service get_avi_auth_token failed, cause: Failed to get Avi auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain., args: (), kwargs: {} [ncp GreenThread-125 I] nsx_ujo.common.controller AviSecretController worker 1 failed to sync Bootstrap due to retryable exception: Failed to get Avi auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain. ``` Es schien, als würde dies mit dem NSX Advanced Load Balancer Registrierungsprozess zusammenhängen, bei dem der NSX ALB Controller Cluster beim NSX Manager Cluster registriert ([Link](https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-with-tanzu-installation-configuration/GUID-5417D45D-62B2-4D50-A20C-7B5551EA5594.html#GUID-574F9A67-2768-413F-896F-E176A1D83D37__GUID-D2604B24-B235-4757-855D-A26C67AD905E)) wird. Vor allem der Eintrag ***\[…\]PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain\[…\]*** verwies auf ein klares Zertifikatsproblem, das so allerdings nicht direkt nachvollzogen werden konnte, da im [NSX Certificate Trust Store](https://docs.vmware.com/en/VMware-NSX/4.1/administration/GUID-CA4DC685-3013-40F4-930D-A10173F8FA25.html) die Private PKI/CA Zertifikate hinterlegt waren. - heading:

Die Lösung

body: | Tatsächlich ist es so, dass der JVM (Java Virtual Machine) Prozess auf den NSX Manager Nodes einen eigenen Certificate Authority Trust Store besitzt, in welchem nur Public CAs geführt werden. Wenn man nun dem NSX ALB ein Zertifikat von einer Private PKI/CA ausstellt, dann kommt kein Vertrauensverhältnis zustande, da diese Private CA nicht im JVM Trust Store vorhanden ist. VMware lieferte darauf hin einen konkreten Lösungvorschlag, bei welchem man die Private CAs in den JVM Trust Store importieren musste. Dazu muss man folgende Befehle sequentiell auf jedem NSX Manager ausführen: ```bash keytool -importcert -alias <private-Root-CA> -keystore /usr/java/jre/lib/security/cacerts -storepass changeit -file <path-to-root-ca-cert> keytool -importcert -alias <private-Intermediate-CA> -keystore /usr/java/jre/lib/security/cacerts -storepass changeit -file <path-to-intermediate-ca-cert> sudo cp <path-to-root-ca-cert> /usr/local/share/ca-certificates/ sudo cp <path-to-intermediate-ca-cert> /usr/local/share/ca-certificates/ sudo update-ca-certificates service proton restart ``` Nach dem wir diese Anpassungen vorgenommen haben, konnten wir den Supervisor Cluster erfolgreich initiieren. Dazu mussten wir das aktuelle Deployment abbrechen (Disable Supervisor) und neu initiieren. - heading:

Anmerkung(en)

body: | \[**Update**\] 05.02.2024: Mittlerweise wurde die [Dokumentation](https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-with-tanzu-installation-configuration/GUID-C9AB893E-7A25-4DF3-B8ED-588BF4B34E1F.html#GUID-19F202ED-C8FD-4848-9437-F775E756FAC7) entsprechend aktualisiert und verweist auf diese Besonderheit hinsichtlich JVM Trust Store und Private CA ausgestellten Zertifikaten.status: corpus: 315 alsoLike: - {ref: posts/antrea-nsx-integration, score: 1.00} - {ref: posts/vsphere-with-tanzu-und-nsx-advanced-load-balancer-avi-secret-not-found, score: 1.00} - {ref: solutions/vmware/vmware-cloud-foundation/addon/advanced-security, score: 0.73} search: /de/search.json
{ "apiVersion": "soultec.ch/v1", "kind": "Post", "metadata": { "name": "lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca", "locale": "de", "labels": { "author": "matthias-grasmueck", "series": "lessons-learned", "capability/network": 2.16, "capability/security": 1.91, "capability/containers": 2.51, "vendor/vmware": 0.98 }, "annotations": { "source": "blog-content/posts/de/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca.md", "route": "/de/insights/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca/", "schema": "/nerd/schema/posts.json", "markdown": "/de/insights/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca.md" } }, "spec": { "title": "vSphere with Tanzu und NSX Advanced Load Balancer Integration mit Private CA", "date": "2024-02-05", "author": "matthias-grasmueck", "locale": "de", "summary": "Ab VMware vSphere 8.0 Update 2 ist es möglich, vSphere with Tanzu mit VMware NSX als Networking Stack und VMware NSX Advanced Load Balancer (ALB) als integrierten L4 Load Balancer bereitzustellen.", "capabilities": [ "network", "security", "containers" ], "vendors": [ "vmware" ], "series": "lessons-learned", "hero": "/blog-assets/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca/hero.webp", "legacySlug": "lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca", "migrated": "2026-08-24", "draft": false, "sections": [ { "body": "Ab VMware [vSphere 8.0 Update 2](https://docs.vmware.com/en/VMware-vSphere/8.0/rn/vmware-vsphere-with-tanzu-80-release-notes/index.html#What's%20New-What's%20New%20September%2021,%202023) ist es möglich, vSphere with Tanzu mit VMware NSX als Networking Stack und VMware NSX Advanced Load Balancer (ALB) als integrierten L4 Load Balancer bereitzustellen. Darüber hinaus kann der NSX Advanced Load Balancer auch als L7 Ingress ([AKO](https://github.com/vmware/load-balancer-and-ingress-services-for-kubernetes/blob/master/docs/README.md)) Controller verwendet werden, um zusätzliche Enterprise-Features zur Verfügung zu stellen, wie bspw. Container- und App-Security mit WAF, real-time Application Performance Monitoring, Network & End Users Analytics/Insights uvm.\n\nDadurch ist es möglich, klassische L4/L7 Load Balancing Services bereitzustellen und parallel dazu auch Microservice-Anforderungen für Kubernetes Plattformen zu berücksichtigen. So lassen sich sämtliche NSX ALB Service Engine (Dataplane Komponenten, welche das effektive Load Balancing übernimmt) Instanzen, ob für Load Balanacing von virtuellen Maschinen oder Kuberentes basierte Workloads, in einem zentralen UI/Plattform verwalten." }, { "heading": "

Das Problem

",
"body": "Bei einem kürzlich durchgeführten Tanzu-Projekt, das auf vSphere 8.0 Update 2, NSX 4.1.2.1 und NSX ALB 22.1.5 basierte, stiessen wir auf ein Problem, das uns daran hinderte, den Supervisor Cluster zu initialisieren. Als wir versuchten, den Supervisor Cluster zu aktivieren, trat während der **Workload Network** Konfigurationsphase ein Timeout-Problem auf.\n\nAls wir die NSX ALB-Konfiguration überprüften, stellten wir fest, dass kein einziges Objekt erstellt und auch keine entsprechenden Events in den Protokollen generiert wurden.\n\nDaraufhin überprüften wir die NCP-Protokolle und fanden folgende Einträge:\n\n```bash\n[ncp GreenThread-125 W] nsx_ujo.ncp.nsx.policy.ako_bootstrap_service Unexpected exception from NSX manager when acquiring AVI auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.\n\n[ncp GreenThread-125 W] nsx_ujo.ncp.nsx.policy.ako_bootstrap_service get_avi_auth_token failed, cause: Failed to get Avi auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain., args: (), kwargs: {}\n\n[ncp GreenThread-125 I] nsx_ujo.common.controller AviSecretController worker 1 failed to sync Bootstrap due to retryable exception: Failed to get Avi auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.\n```\n\nEs schien, als würde dies mit dem NSX Advanced Load Balancer Registrierungsprozess zusammenhängen, bei dem der NSX ALB Controller Cluster beim NSX Manager Cluster registriert ([Link](https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-with-tanzu-installation-configuration/GUID-5417D45D-62B2-4D50-A20C-7B5551EA5594.html#GUID-574F9A67-2768-413F-896F-E176A1D83D37__GUID-D2604B24-B235-4757-855D-A26C67AD905E)) wird.\n\nVor allem der Eintrag ***\\[…\\]PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain\\[…\\]*** verwies auf ein klares Zertifikatsproblem, das so allerdings nicht direkt nachvollzogen werden konnte, da im [NSX Certificate Trust Store](https://docs.vmware.com/en/VMware-NSX/4.1/administration/GUID-CA4DC685-3013-40F4-930D-A10173F8FA25.html) die Private PKI/CA Zertifikate hinterlegt waren." }, { "heading": "

Die Lösung

",
"body": "Tatsächlich ist es so, dass der JVM (Java Virtual Machine) Prozess auf den NSX Manager Nodes einen eigenen Certificate Authority Trust Store besitzt, in welchem nur Public CAs geführt werden. Wenn man nun dem NSX ALB ein Zertifikat von einer Private PKI/CA ausstellt, dann kommt kein Vertrauensverhältnis zustande, da diese Private CA nicht im JVM Trust Store vorhanden ist.\n\nVMware lieferte darauf hin einen konkreten Lösungvorschlag, bei welchem man die Private CAs in den JVM Trust Store importieren musste. Dazu muss man folgende Befehle sequentiell auf jedem NSX Manager ausführen:\n\n```bash\nkeytool -importcert -alias <private-Root-CA> -keystore /usr/java/jre/lib/security/cacerts -storepass changeit -file <path-to-root-ca-cert>\nkeytool -importcert -alias <private-Intermediate-CA> -keystore /usr/java/jre/lib/security/cacerts -storepass changeit -file <path-to-intermediate-ca-cert>\nsudo cp <path-to-root-ca-cert> /usr/local/share/ca-certificates/\nsudo cp <path-to-intermediate-ca-cert> /usr/local/share/ca-certificates/\nsudo update-ca-certificates\nservice proton restart\n```\n\nNach dem wir diese Anpassungen vorgenommen haben, konnten wir den Supervisor Cluster erfolgreich initiieren. Dazu mussten wir das aktuelle Deployment abbrechen (Disable Supervisor) und neu initiieren." }, { "heading": "

Anmerkung(en)

",
"body": "\\[**Update**\\] 05.02.2024: Mittlerweise wurde die [Dokumentation](https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-with-tanzu-installation-configuration/GUID-C9AB893E-7A25-4DF3-B8ED-588BF4B34E1F.html#GUID-19F202ED-C8FD-4848-9437-F775E756FAC7) entsprechend aktualisiert und verweist auf diese Besonderheit hinsichtlich JVM Trust Store und Private CA ausgestellten Zertifikaten." } ] }, "status": { "corpus": 315, "alsoLike": [ { "ref": "posts/antrea-nsx-integration", "score": "1.00" }, { "ref": "posts/vsphere-with-tanzu-und-nsx-advanced-load-balancer-avi-secret-not-found", "score": "1.00" }, { "ref": "solutions/vmware/vmware-cloud-foundation/addon/advanced-security", "score": "0.73" } ], "search": "/de/search.json" }}
apiVersion = "soultec.ch/v1"kind = "Post"[metadata]name = "lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca"locale = "de"[metadata.labels]author = "matthias-grasmueck"series = "lessons-learned""capability/network" = 2.16"capability/security" = 1.91"capability/containers" = 2.51"vendor/vmware" = 0.98[metadata.annotations]source = "blog-content/posts/de/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca.md"route = "/de/insights/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca/"schema = "/nerd/schema/posts.json"markdown = "/de/insights/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca.md"[spec]title = "vSphere with Tanzu und NSX Advanced Load Balancer Integration mit Private CA"date = 2024-02-05author = "matthias-grasmueck"locale = "de"summary = "Ab VMware vSphere 8.0 Update 2 ist es möglich, vSphere with Tanzu mit VMware NSX als Networking Stack und VMware NSX Advanced Load Balancer (ALB) als integrierten L4 Load Balancer bereitzustellen."capabilities = ["network", "security", "containers"]vendors = ["vmware"]series = "lessons-learned"hero = "/blog-assets/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca/hero.webp"legacySlug = "lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca"migrated = 2026-08-24draft = false[[spec.sections]]body = '''Ab VMware [vSphere 8.0 Update 2](https://docs.vmware.com/en/VMware-vSphere/8.0/rn/vmware-vsphere-with-tanzu-80-release-notes/index.html#What's%20New-What's%20New%20September%2021,%202023) ist es möglich, vSphere with Tanzu mit VMware NSX als Networking Stack und VMware NSX Advanced Load Balancer (ALB) als integrierten L4 Load Balancer bereitzustellen. Darüber hinaus kann der NSX Advanced Load Balancer auch als L7 Ingress ([AKO](https://github.com/vmware/load-balancer-and-ingress-services-for-kubernetes/blob/master/docs/README.md)) Controller verwendet werden, um zusätzliche Enterprise-Features zur Verfügung zu stellen, wie bspw. Container- und App-Security mit WAF, real-time Application Performance Monitoring, Network & End Users Analytics/Insights uvm.Dadurch ist es möglich, klassische L4/L7 Load Balancing Services bereitzustellen und parallel dazu auch Microservice-Anforderungen für Kubernetes Plattformen zu berücksichtigen. So lassen sich sämtliche NSX ALB Service Engine (Dataplane Komponenten, welche das effektive Load Balancing übernimmt) Instanzen, ob für Load Balanacing von virtuellen Maschinen oder Kuberentes basierte Workloads, in einem zentralen UI/Plattform verwalten.'''[[spec.sections]]heading = "

Das Problem

"
body = '''Bei einem kürzlich durchgeführten Tanzu-Projekt, das auf vSphere 8.0 Update 2, NSX 4.1.2.1 und NSX ALB 22.1.5 basierte, stiessen wir auf ein Problem, das uns daran hinderte, den Supervisor Cluster zu initialisieren. Als wir versuchten, den Supervisor Cluster zu aktivieren, trat während der **Workload Network** Konfigurationsphase ein Timeout-Problem auf.Als wir die NSX ALB-Konfiguration überprüften, stellten wir fest, dass kein einziges Objekt erstellt und auch keine entsprechenden Events in den Protokollen generiert wurden.Daraufhin überprüften wir die NCP-Protokolle und fanden folgende Einträge:```bash[ncp GreenThread-125 W] nsx_ujo.ncp.nsx.policy.ako_bootstrap_service Unexpected exception from NSX manager when acquiring AVI auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.[ncp GreenThread-125 W] nsx_ujo.ncp.nsx.policy.ako_bootstrap_service get_avi_auth_token failed, cause: Failed to get Avi auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain., args: (), kwargs: {}[ncp GreenThread-125 I] nsx_ujo.common.controller AviSecretController worker 1 failed to sync Bootstrap due to retryable exception: Failed to get Avi auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.```Es schien, als würde dies mit dem NSX Advanced Load Balancer Registrierungsprozess zusammenhängen, bei dem der NSX ALB Controller Cluster beim NSX Manager Cluster registriert ([Link](https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-with-tanzu-installation-configuration/GUID-5417D45D-62B2-4D50-A20C-7B5551EA5594.html#GUID-574F9A67-2768-413F-896F-E176A1D83D37__GUID-D2604B24-B235-4757-855D-A26C67AD905E)) wird.Vor allem der Eintrag ***\[…\]PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain\[…\]*** verwies auf ein klares Zertifikatsproblem, das so allerdings nicht direkt nachvollzogen werden konnte, da im [NSX Certificate Trust Store](https://docs.vmware.com/en/VMware-NSX/4.1/administration/GUID-CA4DC685-3013-40F4-930D-A10173F8FA25.html) die Private PKI/CA Zertifikate hinterlegt waren.'''[[spec.sections]]heading = "

Die Lösung

"
body = '''Tatsächlich ist es so, dass der JVM (Java Virtual Machine) Prozess auf den NSX Manager Nodes einen eigenen Certificate Authority Trust Store besitzt, in welchem nur Public CAs geführt werden. Wenn man nun dem NSX ALB ein Zertifikat von einer Private PKI/CA ausstellt, dann kommt kein Vertrauensverhältnis zustande, da diese Private CA nicht im JVM Trust Store vorhanden ist.VMware lieferte darauf hin einen konkreten Lösungvorschlag, bei welchem man die Private CAs in den JVM Trust Store importieren musste. Dazu muss man folgende Befehle sequentiell auf jedem NSX Manager ausführen:```bashkeytool -importcert -alias <private-Root-CA> -keystore /usr/java/jre/lib/security/cacerts -storepass changeit -file <path-to-root-ca-cert>keytool -importcert -alias <private-Intermediate-CA> -keystore /usr/java/jre/lib/security/cacerts -storepass changeit -file <path-to-intermediate-ca-cert>sudo cp <path-to-root-ca-cert> /usr/local/share/ca-certificates/sudo cp <path-to-intermediate-ca-cert> /usr/local/share/ca-certificates/sudo update-ca-certificatesservice proton restart```Nach dem wir diese Anpassungen vorgenommen haben, konnten wir den Supervisor Cluster erfolgreich initiieren. Dazu mussten wir das aktuelle Deployment abbrechen (Disable Supervisor) und neu initiieren.'''[[spec.sections]]heading = "

Anmerkung(en)

"
body = "\\[**Update**\\] 05.02.2024: Mittlerweise wurde die [Dokumentation](https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-with-tanzu-installation-configuration/GUID-C9AB893E-7A25-4DF3-B8ED-588BF4B34E1F.html#GUID-19F202ED-C8FD-4848-9437-F775E756FAC7) entsprechend aktualisiert und verweist auf diese Besonderheit hinsichtlich JVM Trust Store und Private CA ausgestellten Zertifikaten."[status]corpus = 315search = "/de/search.json"[[status.alsoLike]]ref = "posts/antrea-nsx-integration"score = "1.00"[[status.alsoLike]]ref = "posts/vsphere-with-tanzu-und-nsx-advanced-load-balancer-avi-secret-not-found"score = "1.00"[[status.alsoLike]]ref = "solutions/vmware/vmware-cloud-foundation/addon/advanced-security"score = "0.73"
<?xml version="1.0" encoding="UTF-8"?><manifest kind="Post"> <apiVersion>soultec.ch/v1</apiVersion> <metadata> <name>lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca</name> <locale>de</locale> <labels> <author>matthias-grasmueck</author> <series>lessons-learned</series> <entry key="capability/network">2.16</entry> <entry key="capability/security">1.91</entry> <entry key="capability/containers">2.51</entry> <entry key="vendor/vmware">0.98</entry> </labels> <annotations> <source>blog-content/posts/de/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca.md</source> <route>/de/insights/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca/</route> <schema>/nerd/schema/posts.json</schema> <markdown>/de/insights/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca.md</markdown> </annotations> </metadata> <spec> <title>vSphere with Tanzu und NSX Advanced Load Balancer Integration mit Private CA</title> <date>2024-02-05</date> <author>matthias-grasmueck</author> <locale>de</locale> <summary>Ab VMware vSphere 8.0 Update 2 ist es möglich, vSphere with Tanzu mit VMware NSX als Networking Stack und VMware NSX Advanced Load Balancer (ALB) als integrierten L4 Load Balancer bereitzustellen.</summary> <capabilities> <item>network</item> <item>security</item> <item>containers</item> </capabilities> <vendors> <item>vmware</item> </vendors> <series>lessons-learned</series> <hero>/blog-assets/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca/hero.webp</hero> <legacySlug>lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca</legacySlug> <migrated>2026-08-24</migrated> <draft>false</draft> <sections> <section> <body>Ab VMware [vSphere 8.0 Update 2](https://docs.vmware.com/en/VMware-vSphere/8.0/rn/vmware-vsphere-with-tanzu-80-release-notes/index.html#What's%20New-What's%20New%20September%2021,%202023) ist es möglich, vSphere with Tanzu mit VMware NSX als Networking Stack und VMware NSX Advanced Load Balancer (ALB) als integrierten L4 Load Balancer bereitzustellen. Darüber hinaus kann der NSX Advanced Load Balancer auch als L7 Ingress ([AKO](https://github.com/vmware/load-balancer-and-ingress-services-for-kubernetes/blob/master/docs/README.md)) Controller verwendet werden, um zusätzliche Enterprise-Features zur Verfügung zu stellen, wie bspw. Container- und App-Security mit WAF, real-time Application Performance Monitoring, Network &amp; End Users Analytics/Insights uvm.Dadurch ist es möglich, klassische L4/L7 Load Balancing Services bereitzustellen und parallel dazu auch Microservice-Anforderungen für Kubernetes Plattformen zu berücksichtigen. So lassen sich sämtliche NSX ALB Service Engine (Dataplane Komponenten, welche das effektive Load Balancing übernimmt) Instanzen, ob für Load Balanacing von virtuellen Maschinen oder Kuberentes basierte Workloads, in einem zentralen UI/Plattform verwalten. </body> </section> <section> <heading>

Das Problem

</heading>
<body>Bei einem kürzlich durchgeführten Tanzu-Projekt, das auf vSphere 8.0 Update 2, NSX 4.1.2.1 und NSX ALB 22.1.5 basierte, stiessen wir auf ein Problem, das uns daran hinderte, den Supervisor Cluster zu initialisieren. Als wir versuchten, den Supervisor Cluster zu aktivieren, trat während der **Workload Network** Konfigurationsphase ein Timeout-Problem auf.Als wir die NSX ALB-Konfiguration überprüften, stellten wir fest, dass kein einziges Objekt erstellt und auch keine entsprechenden Events in den Protokollen generiert wurden.Daraufhin überprüften wir die NCP-Protokolle und fanden folgende Einträge:```bash[ncp GreenThread-125 W] nsx_ujo.ncp.nsx.policy.ako_bootstrap_service Unexpected exception from NSX manager when acquiring AVI auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.[ncp GreenThread-125 W] nsx_ujo.ncp.nsx.policy.ako_bootstrap_service get_avi_auth_token failed, cause: Failed to get Avi auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain., args: (), kwargs: {}[ncp GreenThread-125 I] nsx_ujo.common.controller AviSecretController worker 1 failed to sync Bootstrap due to retryable exception: Failed to get Avi auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.```Es schien, als würde dies mit dem NSX Advanced Load Balancer Registrierungsprozess zusammenhängen, bei dem der NSX ALB Controller Cluster beim NSX Manager Cluster registriert ([Link](https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-with-tanzu-installation-configuration/GUID-5417D45D-62B2-4D50-A20C-7B5551EA5594.html#GUID-574F9A67-2768-413F-896F-E176A1D83D37__GUID-D2604B24-B235-4757-855D-A26C67AD905E)) wird.Vor allem der Eintrag ***\[…\]PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain\[…\]*** verwies auf ein klares Zertifikatsproblem, das so allerdings nicht direkt nachvollzogen werden konnte, da im [NSX Certificate Trust Store](https://docs.vmware.com/en/VMware-NSX/4.1/administration/GUID-CA4DC685-3013-40F4-930D-A10173F8FA25.html) die Private PKI/CA Zertifikate hinterlegt waren. </body> </section> <section> <heading>

Die Lösung

</heading>
<body>Tatsächlich ist es so, dass der JVM (Java Virtual Machine) Prozess auf den NSX Manager Nodes einen eigenen Certificate Authority Trust Store besitzt, in welchem nur Public CAs geführt werden. Wenn man nun dem NSX ALB ein Zertifikat von einer Private PKI/CA ausstellt, dann kommt kein Vertrauensverhältnis zustande, da diese Private CA nicht im JVM Trust Store vorhanden ist.VMware lieferte darauf hin einen konkreten Lösungvorschlag, bei welchem man die Private CAs in den JVM Trust Store importieren musste. Dazu muss man folgende Befehle sequentiell auf jedem NSX Manager ausführen:```bashkeytool -importcert -alias &lt;private-Root-CA&gt; -keystore /usr/java/jre/lib/security/cacerts -storepass changeit -file &lt;path-to-root-ca-cert&gt;keytool -importcert -alias &lt;private-Intermediate-CA&gt; -keystore /usr/java/jre/lib/security/cacerts -storepass changeit -file &lt;path-to-intermediate-ca-cert&gt;sudo cp &lt;path-to-root-ca-cert&gt; /usr/local/share/ca-certificates/sudo cp &lt;path-to-intermediate-ca-cert&gt; /usr/local/share/ca-certificates/sudo update-ca-certificatesservice proton restart```Nach dem wir diese Anpassungen vorgenommen haben, konnten wir den Supervisor Cluster erfolgreich initiieren. Dazu mussten wir das aktuelle Deployment abbrechen (Disable Supervisor) und neu initiieren. </body> </section> <section> <heading>

Anmerkung(en)

</heading>
<body>\[**Update**\] 05.02.2024: Mittlerweise wurde die [Dokumentation](https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-with-tanzu-installation-configuration/GUID-C9AB893E-7A25-4DF3-B8ED-588BF4B34E1F.html#GUID-19F202ED-C8FD-4848-9437-F775E756FAC7) entsprechend aktualisiert und verweist auf diese Besonderheit hinsichtlich JVM Trust Store und Private CA ausgestellten Zertifikaten.</body> </section> </sections> </spec> <status> <corpus>315</corpus> <alsoLike> <item> <ref>posts/antrea-nsx-integration</ref> <score>1.00</score> </item> <item> <ref>posts/vsphere-with-tanzu-und-nsx-advanced-load-balancer-avi-secret-not-found</ref> <score>1.00</score> </item> <item> <ref>solutions/vmware/vmware-cloud-foundation/addon/advanced-security</ref> <score>0.73</score> </item> </alsoLike> <search>/de/search.json</search> </status></manifest>
# Code generated by the soultec.ch build. DO NOT EDIT.import jsonPAGE = { "apiVersion": "soultec.ch/v1", "kind": "Post", "metadata": { "name": "lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca", "locale": "de", "labels": { "author": "matthias-grasmueck", "series": "lessons-learned", "capability/network": 2.16, "capability/security": 1.91, "capability/containers": 2.51, "vendor/vmware": 0.98, }, "annotations": { "source": "blog-content/posts/de/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca.md", "route": "/de/insights/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca/", "schema": "/nerd/schema/posts.json", "markdown": "/de/insights/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca.md", }, }, "spec": { "title": "vSphere with Tanzu und NSX Advanced Load Balancer Integration mit Private CA", "date": "2024-02-05", "author": "matthias-grasmueck", "locale": "de", "summary": "Ab VMware vSphere 8.0 Update 2 ist es möglich, vSphere with Tanzu mit VMware NSX als Networking Stack und VMware NSX Advanced Load Balancer (ALB) als integrierten L4 Load Balancer bereitzustellen.", "capabilities": ["network", "security", "containers"], "vendors": ["vmware"], "series": "lessons-learned", "hero": "/blog-assets/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca/hero.webp", "legacySlug": "lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca", "migrated": "2026-08-24", "draft": False, "sections": [ { "body": ( "Ab VMware [vSphere 8.0 Update 2](https://docs.vmware.com/en/VMware-vSphere/8.0/rn/vmware-vsphere-with-tanzu-80-release-notes/index.html#What's%20New-What's%20New%20September%2021,%202023) ist es möglich, vSphere with Tanzu mit VMware NSX als Networking Stack und VMware NSX Advanced Load Balancer (ALB) als integrierten L4 Load Balancer bereitzustellen. Darüber hinaus kann der NSX Advanced Load Balancer auch als L7 Ingress ([AKO](https://github.com/vmware/load-balancer-and-ingress-services-for-kubernetes/blob/master/docs/README.md)) Controller verwendet werden, um zusätzliche Enterprise-Features zur Verfügung zu stellen, wie bspw. Container- und App-Security mit WAF, real-time Application Performance Monitoring, Network & End Users Analytics/Insights uvm.\n" "\n" "Dadurch ist es möglich, klassische L4/L7 Load Balancing Services bereitzustellen und parallel dazu auch Microservice-Anforderungen für Kubernetes Plattformen zu berücksichtigen. So lassen sich sämtliche NSX ALB Service Engine (Dataplane Komponenten, welche das effektive Load Balancing übernimmt) Instanzen, ob für Load Balanacing von virtuellen Maschinen oder Kuberentes basierte Workloads, in einem zentralen UI/Plattform verwalten." ), }, { "heading": "

Das Problem

",
"body": ( "Bei einem kürzlich durchgeführten Tanzu-Projekt, das auf vSphere 8.0 Update 2, NSX 4.1.2.1 und NSX ALB 22.1.5 basierte, stiessen wir auf ein Problem, das uns daran hinderte, den Supervisor Cluster zu initialisieren. Als wir versuchten, den Supervisor Cluster zu aktivieren, trat während der **Workload Network** Konfigurationsphase ein Timeout-Problem auf.\n" "\n" "Als wir die NSX ALB-Konfiguration überprüften, stellten wir fest, dass kein einziges Objekt erstellt und auch keine entsprechenden Events in den Protokollen generiert wurden.\n" "\n" "Daraufhin überprüften wir die NCP-Protokolle und fanden folgende Einträge:\n" "\n" "```bash\n" "[ncp GreenThread-125 W] nsx_ujo.ncp.nsx.policy.ako_bootstrap_service Unexpected exception from NSX manager when acquiring AVI auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.\n" "\n" "[ncp GreenThread-125 W] nsx_ujo.ncp.nsx.policy.ako_bootstrap_service get_avi_auth_token failed, cause: Failed to get Avi auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain., args: (), kwargs: {}\n" "\n" "[ncp GreenThread-125 I] nsx_ujo.common.controller AviSecretController worker 1 failed to sync Bootstrap due to retryable exception: Failed to get Avi auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.\n" "```\n" "\n" "Es schien, als würde dies mit dem NSX Advanced Load Balancer Registrierungsprozess zusammenhängen, bei dem der NSX ALB Controller Cluster beim NSX Manager Cluster registriert ([Link](https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-with-tanzu-installation-configuration/GUID-5417D45D-62B2-4D50-A20C-7B5551EA5594.html#GUID-574F9A67-2768-413F-896F-E176A1D83D37__GUID-D2604B24-B235-4757-855D-A26C67AD905E)) wird.\n" "\n" "Vor allem der Eintrag ***\\[…\\]PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain\\[…\\]*** verwies auf ein klares Zertifikatsproblem, das so allerdings nicht direkt nachvollzogen werden konnte, da im [NSX Certificate Trust Store](https://docs.vmware.com/en/VMware-NSX/4.1/administration/GUID-CA4DC685-3013-40F4-930D-A10173F8FA25.html) die Private PKI/CA Zertifikate hinterlegt waren." ), }, { "heading": "

Die Lösung

",
"body": ( "Tatsächlich ist es so, dass der JVM (Java Virtual Machine) Prozess auf den NSX Manager Nodes einen eigenen Certificate Authority Trust Store besitzt, in welchem nur Public CAs geführt werden. Wenn man nun dem NSX ALB ein Zertifikat von einer Private PKI/CA ausstellt, dann kommt kein Vertrauensverhältnis zustande, da diese Private CA nicht im JVM Trust Store vorhanden ist.\n" "\n" "VMware lieferte darauf hin einen konkreten Lösungvorschlag, bei welchem man die Private CAs in den JVM Trust Store importieren musste. Dazu muss man folgende Befehle sequentiell auf jedem NSX Manager ausführen:\n" "\n" "```bash\n" "keytool -importcert -alias <private-Root-CA> -keystore /usr/java/jre/lib/security/cacerts -storepass changeit -file <path-to-root-ca-cert>\n" "keytool -importcert -alias <private-Intermediate-CA> -keystore /usr/java/jre/lib/security/cacerts -storepass changeit -file <path-to-intermediate-ca-cert>\n" "sudo cp <path-to-root-ca-cert> /usr/local/share/ca-certificates/\n" "sudo cp <path-to-intermediate-ca-cert> /usr/local/share/ca-certificates/\n" "sudo update-ca-certificates\n" "service proton restart\n" "```\n" "\n" "Nach dem wir diese Anpassungen vorgenommen haben, konnten wir den Supervisor Cluster erfolgreich initiieren. Dazu mussten wir das aktuelle Deployment abbrechen (Disable Supervisor) und neu initiieren." ), }, { "heading": "

Anmerkung(en)

",
"body": "\\[**Update**\\] 05.02.2024: Mittlerweise wurde die [Dokumentation](https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-with-tanzu-installation-configuration/GUID-C9AB893E-7A25-4DF3-B8ED-588BF4B34E1F.html#GUID-19F202ED-C8FD-4848-9437-F775E756FAC7) entsprechend aktualisiert und verweist auf diese Besonderheit hinsichtlich JVM Trust Store und Private CA ausgestellten Zertifikaten.", }, ], }, "status": { "corpus": 315, "alsoLike": [ { "ref": "posts/antrea-nsx-integration", "score": "1.00", }, { "ref": "posts/vsphere-with-tanzu-und-nsx-advanced-load-balancer-avi-secret-not-found", "score": "1.00", }, { "ref": "solutions/vmware/vmware-cloud-foundation/addon/advanced-security", "score": "0.73", }, ], "search": "/de/search.json", },}if __name__ == "__main__": print(json.dumps(PAGE, indent=2, ensure_ascii=False))
# Code generated by the soultec.ch build. DO NOT EDIT.$Page = [ordered]@{ apiVersion = 'soultec.ch/v1' kind = 'Post' metadata = [ordered]@{ name = 'lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca' locale = 'de' labels = [ordered]@{ author = 'matthias-grasmueck' series = 'lessons-learned' 'capability/network' = 2.16 'capability/security' = 1.91 'capability/containers' = 2.51 'vendor/vmware' = 0.98 } annotations = [ordered]@{ source = 'blog-content/posts/de/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca.md' route = '/de/insights/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca/' schema = '/nerd/schema/posts.json' markdown = '/de/insights/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca.md' } } spec = [ordered]@{ title = 'vSphere with Tanzu und NSX Advanced Load Balancer Integration mit Private CA' date = '2024-02-05' author = 'matthias-grasmueck' locale = 'de' summary = 'Ab VMware vSphere 8.0 Update 2 ist es möglich, vSphere with Tanzu mit VMware NSX als Networking Stack und VMware NSX Advanced Load Balancer (ALB) als integrierten L4 Load Balancer bereitzustellen.' capabilities = @('network', 'security', 'containers') vendors = @('vmware') series = 'lessons-learned' hero = '/blog-assets/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca/hero.webp' legacySlug = 'lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca' migrated = '2026-08-24' draft = $false sections = @( [ordered]@{ body = @'Ab VMware [vSphere 8.0 Update 2](https://docs.vmware.com/en/VMware-vSphere/8.0/rn/vmware-vsphere-with-tanzu-80-release-notes/index.html#What's%20New-What's%20New%20September%2021,%202023) ist es möglich, vSphere with Tanzu mit VMware NSX als Networking Stack und VMware NSX Advanced Load Balancer (ALB) als integrierten L4 Load Balancer bereitzustellen. Darüber hinaus kann der NSX Advanced Load Balancer auch als L7 Ingress ([AKO](https://github.com/vmware/load-balancer-and-ingress-services-for-kubernetes/blob/master/docs/README.md)) Controller verwendet werden, um zusätzliche Enterprise-Features zur Verfügung zu stellen, wie bspw. Container- und App-Security mit WAF, real-time Application Performance Monitoring, Network & End Users Analytics/Insights uvm.Dadurch ist es möglich, klassische L4/L7 Load Balancing Services bereitzustellen und parallel dazu auch Microservice-Anforderungen für Kubernetes Plattformen zu berücksichtigen. So lassen sich sämtliche NSX ALB Service Engine (Dataplane Komponenten, welche das effektive Load Balancing übernimmt) Instanzen, ob für Load Balanacing von virtuellen Maschinen oder Kuberentes basierte Workloads, in einem zentralen UI/Plattform verwalten.'@ } [ordered]@{ heading = '

Das Problem

'
body = @'Bei einem kürzlich durchgeführten Tanzu-Projekt, das auf vSphere 8.0 Update 2, NSX 4.1.2.1 und NSX ALB 22.1.5 basierte, stiessen wir auf ein Problem, das uns daran hinderte, den Supervisor Cluster zu initialisieren. Als wir versuchten, den Supervisor Cluster zu aktivieren, trat während der **Workload Network** Konfigurationsphase ein Timeout-Problem auf.Als wir die NSX ALB-Konfiguration überprüften, stellten wir fest, dass kein einziges Objekt erstellt und auch keine entsprechenden Events in den Protokollen generiert wurden.Daraufhin überprüften wir die NCP-Protokolle und fanden folgende Einträge:```bash[ncp GreenThread-125 W] nsx_ujo.ncp.nsx.policy.ako_bootstrap_service Unexpected exception from NSX manager when acquiring AVI auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.[ncp GreenThread-125 W] nsx_ujo.ncp.nsx.policy.ako_bootstrap_service get_avi_auth_token failed, cause: Failed to get Avi auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain., args: (), kwargs: {}[ncp GreenThread-125 I] nsx_ujo.common.controller AviSecretController worker 1 failed to sync Bootstrap due to retryable exception: Failed to get Avi auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.```Es schien, als würde dies mit dem NSX Advanced Load Balancer Registrierungsprozess zusammenhängen, bei dem der NSX ALB Controller Cluster beim NSX Manager Cluster registriert ([Link](https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-with-tanzu-installation-configuration/GUID-5417D45D-62B2-4D50-A20C-7B5551EA5594.html#GUID-574F9A67-2768-413F-896F-E176A1D83D37__GUID-D2604B24-B235-4757-855D-A26C67AD905E)) wird.Vor allem der Eintrag ***\[…\]PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain\[…\]*** verwies auf ein klares Zertifikatsproblem, das so allerdings nicht direkt nachvollzogen werden konnte, da im [NSX Certificate Trust Store](https://docs.vmware.com/en/VMware-NSX/4.1/administration/GUID-CA4DC685-3013-40F4-930D-A10173F8FA25.html) die Private PKI/CA Zertifikate hinterlegt waren.'@ } [ordered]@{ heading = '

Die Lösung

'
body = @'Tatsächlich ist es so, dass der JVM (Java Virtual Machine) Prozess auf den NSX Manager Nodes einen eigenen Certificate Authority Trust Store besitzt, in welchem nur Public CAs geführt werden. Wenn man nun dem NSX ALB ein Zertifikat von einer Private PKI/CA ausstellt, dann kommt kein Vertrauensverhältnis zustande, da diese Private CA nicht im JVM Trust Store vorhanden ist.VMware lieferte darauf hin einen konkreten Lösungvorschlag, bei welchem man die Private CAs in den JVM Trust Store importieren musste. Dazu muss man folgende Befehle sequentiell auf jedem NSX Manager ausführen:```bashkeytool -importcert -alias <private-Root-CA> -keystore /usr/java/jre/lib/security/cacerts -storepass changeit -file <path-to-root-ca-cert>keytool -importcert -alias <private-Intermediate-CA> -keystore /usr/java/jre/lib/security/cacerts -storepass changeit -file <path-to-intermediate-ca-cert>sudo cp <path-to-root-ca-cert> /usr/local/share/ca-certificates/sudo cp <path-to-intermediate-ca-cert> /usr/local/share/ca-certificates/sudo update-ca-certificatesservice proton restart```Nach dem wir diese Anpassungen vorgenommen haben, konnten wir den Supervisor Cluster erfolgreich initiieren. Dazu mussten wir das aktuelle Deployment abbrechen (Disable Supervisor) und neu initiieren.'@ } [ordered]@{ heading = '

Anmerkung(en)

'
body = '\[**Update**\] 05.02.2024: Mittlerweise wurde die [Dokumentation](https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-with-tanzu-installation-configuration/GUID-C9AB893E-7A25-4DF3-B8ED-588BF4B34E1F.html#GUID-19F202ED-C8FD-4848-9437-F775E756FAC7) entsprechend aktualisiert und verweist auf diese Besonderheit hinsichtlich JVM Trust Store und Private CA ausgestellten Zertifikaten.' } ) } status = [ordered]@{ corpus = 315 alsoLike = @( [ordered]@{ ref = 'posts/antrea-nsx-integration' score = '1.00' } [ordered]@{ ref = 'posts/vsphere-with-tanzu-und-nsx-advanced-load-balancer-avi-secret-not-found' score = '1.00' } [ordered]@{ ref = 'solutions/vmware/vmware-cloud-foundation/addon/advanced-security' score = '0.73' } ) search = '/de/search.json' }}$Page | ConvertTo-Json -Depth 32
// Code generated by the soultec.ch build. DO NOT EDIT.package mainimport ( "encoding/json" "os")var page = map[string]any{ "apiVersion": "soultec.ch/v1", "kind": "Post", "metadata": map[string]any{ "name": "lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca", "locale": "de", "labels": map[string]any{ "author": "matthias-grasmueck", "series": "lessons-learned", "capability/network": 2.16, "capability/security": 1.91, "capability/containers": 2.51, "vendor/vmware": 0.98, }, "annotations": map[string]any{ "source": "blog-content/posts/de/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca.md", "route": "/de/insights/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca/", "schema": "/nerd/schema/posts.json", "markdown": "/de/insights/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca.md", }, }, "spec": map[string]any{ "title": "vSphere with Tanzu und NSX Advanced Load Balancer Integration mit Private CA", "date": "2024-02-05", "author": "matthias-grasmueck", "locale": "de", "summary": "Ab VMware vSphere 8.0 Update 2 ist es möglich, vSphere with Tanzu mit VMware NSX als Networking Stack und VMware NSX Advanced Load Balancer (ALB) als integrierten L4 Load Balancer bereitzustellen.", "capabilities": []any{"network", "security", "containers"}, "vendors": []any{"vmware"}, "series": "lessons-learned", "hero": "/blog-assets/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca/hero.webp", "legacySlug": "lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca", "migrated": "2026-08-24", "draft": false, "sections": []any{ map[string]any{ "body": "Ab VMware [vSphere 8.0 Update 2](https://docs.vmware.com/en/VMware-vSphere/8.0/rn/vmware-vsphere-with-tanzu-80-release-notes/index.html#What's%20New-What's%20New%20September%2021,%202023) ist es möglich, vSphere with Tanzu mit VMware NSX als Networking Stack und VMware NSX Advanced Load Balancer (ALB) als integrierten L4 Load Balancer bereitzustellen. Darüber hinaus kann der NSX Advanced Load Balancer auch als L7 Ingress ([AKO](https://github.com/vmware/load-balancer-and-ingress-services-for-kubernetes/blob/master/docs/README.md)) Controller verwendet werden, um zusätzliche Enterprise-Features zur Verfügung zu stellen, wie bspw. Container- und App-Security mit WAF, real-time Application Performance Monitoring, Network & End Users Analytics/Insights uvm.\n" + "\n" + "Dadurch ist es möglich, klassische L4/L7 Load Balancing Services bereitzustellen und parallel dazu auch Microservice-Anforderungen für Kubernetes Plattformen zu berücksichtigen. So lassen sich sämtliche NSX ALB Service Engine (Dataplane Komponenten, welche das effektive Load Balancing übernimmt) Instanzen, ob für Load Balanacing von virtuellen Maschinen oder Kuberentes basierte Workloads, in einem zentralen UI/Plattform verwalten.", }, map[string]any{ "heading": "

Das Problem

",
"body": "Bei einem kürzlich durchgeführten Tanzu-Projekt, das auf vSphere 8.0 Update 2, NSX 4.1.2.1 und NSX ALB 22.1.5 basierte, stiessen wir auf ein Problem, das uns daran hinderte, den Supervisor Cluster zu initialisieren. Als wir versuchten, den Supervisor Cluster zu aktivieren, trat während der **Workload Network** Konfigurationsphase ein Timeout-Problem auf.\n" + "\n" + "Als wir die NSX ALB-Konfiguration überprüften, stellten wir fest, dass kein einziges Objekt erstellt und auch keine entsprechenden Events in den Protokollen generiert wurden.\n" + "\n" + "Daraufhin überprüften wir die NCP-Protokolle und fanden folgende Einträge:\n" + "\n" + "```bash\n" + "[ncp GreenThread-125 W] nsx_ujo.ncp.nsx.policy.ako_bootstrap_service Unexpected exception from NSX manager when acquiring AVI auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.\n" + "\n" + "[ncp GreenThread-125 W] nsx_ujo.ncp.nsx.policy.ako_bootstrap_service get_avi_auth_token failed, cause: Failed to get Avi auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain., args: (), kwargs: {}\n" + "\n" + "[ncp GreenThread-125 I] nsx_ujo.common.controller AviSecretController worker 1 failed to sync Bootstrap due to retryable exception: Failed to get Avi auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.\n" + "```\n" + "\n" + "Es schien, als würde dies mit dem NSX Advanced Load Balancer Registrierungsprozess zusammenhängen, bei dem der NSX ALB Controller Cluster beim NSX Manager Cluster registriert ([Link](https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-with-tanzu-installation-configuration/GUID-5417D45D-62B2-4D50-A20C-7B5551EA5594.html#GUID-574F9A67-2768-413F-896F-E176A1D83D37__GUID-D2604B24-B235-4757-855D-A26C67AD905E)) wird.\n" + "\n" + "Vor allem der Eintrag ***\\[…\\]PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain\\[…\\]*** verwies auf ein klares Zertifikatsproblem, das so allerdings nicht direkt nachvollzogen werden konnte, da im [NSX Certificate Trust Store](https://docs.vmware.com/en/VMware-NSX/4.1/administration/GUID-CA4DC685-3013-40F4-930D-A10173F8FA25.html) die Private PKI/CA Zertifikate hinterlegt waren.", }, map[string]any{ "heading": "

Die Lösung

",
"body": "Tatsächlich ist es so, dass der JVM (Java Virtual Machine) Prozess auf den NSX Manager Nodes einen eigenen Certificate Authority Trust Store besitzt, in welchem nur Public CAs geführt werden. Wenn man nun dem NSX ALB ein Zertifikat von einer Private PKI/CA ausstellt, dann kommt kein Vertrauensverhältnis zustande, da diese Private CA nicht im JVM Trust Store vorhanden ist.\n" + "\n" + "VMware lieferte darauf hin einen konkreten Lösungvorschlag, bei welchem man die Private CAs in den JVM Trust Store importieren musste. Dazu muss man folgende Befehle sequentiell auf jedem NSX Manager ausführen:\n" + "\n" + "```bash\n" + "keytool -importcert -alias <private-Root-CA> -keystore /usr/java/jre/lib/security/cacerts -storepass changeit -file <path-to-root-ca-cert>\n" + "keytool -importcert -alias <private-Intermediate-CA> -keystore /usr/java/jre/lib/security/cacerts -storepass changeit -file <path-to-intermediate-ca-cert>\n" + "sudo cp <path-to-root-ca-cert> /usr/local/share/ca-certificates/\n" + "sudo cp <path-to-intermediate-ca-cert> /usr/local/share/ca-certificates/\n" + "sudo update-ca-certificates\n" + "service proton restart\n" + "```\n" + "\n" + "Nach dem wir diese Anpassungen vorgenommen haben, konnten wir den Supervisor Cluster erfolgreich initiieren. Dazu mussten wir das aktuelle Deployment abbrechen (Disable Supervisor) und neu initiieren.", }, map[string]any{ "heading": "

Anmerkung(en)

",
"body": "\\[**Update**\\] 05.02.2024: Mittlerweise wurde die [Dokumentation](https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-with-tanzu-installation-configuration/GUID-C9AB893E-7A25-4DF3-B8ED-588BF4B34E1F.html#GUID-19F202ED-C8FD-4848-9437-F775E756FAC7) entsprechend aktualisiert und verweist auf diese Besonderheit hinsichtlich JVM Trust Store und Private CA ausgestellten Zertifikaten.", }, }, }, "status": map[string]any{ "corpus": 315, "alsoLike": []any{ map[string]any{ "ref": "posts/antrea-nsx-integration", "score": "1.00", }, map[string]any{ "ref": "posts/vsphere-with-tanzu-und-nsx-advanced-load-balancer-avi-secret-not-found", "score": "1.00", }, map[string]any{ "ref": "solutions/vmware/vmware-cloud-foundation/addon/advanced-security", "score": "0.73", }, }, "search": "/de/search.json", },}func main() { enc := json.NewEncoder(os.Stdout) enc.SetEscapeHTML(false) enc.SetIndent("", " ") if err := enc.Encode(page); err != nil { os.Exit(1) }}
// Code generated by the soultec.ch build. DO NOT EDIT.const page = { apiVersion: "soultec.ch/v1", kind: "Post", metadata: { name: "lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca", locale: "de", labels: { author: "matthias-grasmueck", series: "lessons-learned", "capability/network": 2.16, "capability/security": 1.91, "capability/containers": 2.51, "vendor/vmware": 0.98, }, annotations: { source: "blog-content/posts/de/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca.md", route: "/de/insights/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca/", schema: "/nerd/schema/posts.json", markdown: "/de/insights/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca.md", }, }, spec: { title: "vSphere with Tanzu und NSX Advanced Load Balancer Integration mit Private CA", date: "2024-02-05", author: "matthias-grasmueck", locale: "de", summary: "Ab VMware vSphere 8.0 Update 2 ist es möglich, vSphere with Tanzu mit VMware NSX als Networking Stack und VMware NSX Advanced Load Balancer (ALB) als integrierten L4 Load Balancer bereitzustellen.", capabilities: ["network", "security", "containers"], vendors: ["vmware"], series: "lessons-learned", hero: "/blog-assets/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca/hero.webp", legacySlug: "lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca", migrated: "2026-08-24", draft: false, sections: [ { body: "Ab VMware [vSphere 8.0 Update 2](https://docs.vmware.com/en/VMware-vSphere/8.0/rn/vmware-vsphere-with-tanzu-80-release-notes/index.html#What's%20New-What's%20New%20September%2021,%202023) ist es möglich, vSphere with Tanzu mit VMware NSX als Networking Stack und VMware NSX Advanced Load Balancer (ALB) als integrierten L4 Load Balancer bereitzustellen. Darüber hinaus kann der NSX Advanced Load Balancer auch als L7 Ingress ([AKO](https://github.com/vmware/load-balancer-and-ingress-services-for-kubernetes/blob/master/docs/README.md)) Controller verwendet werden, um zusätzliche Enterprise-Features zur Verfügung zu stellen, wie bspw. Container- und App-Security mit WAF, real-time Application Performance Monitoring, Network & End Users Analytics/Insights uvm.\n" + "\n" + "Dadurch ist es möglich, klassische L4/L7 Load Balancing Services bereitzustellen und parallel dazu auch Microservice-Anforderungen für Kubernetes Plattformen zu berücksichtigen. So lassen sich sämtliche NSX ALB Service Engine (Dataplane Komponenten, welche das effektive Load Balancing übernimmt) Instanzen, ob für Load Balanacing von virtuellen Maschinen oder Kuberentes basierte Workloads, in einem zentralen UI/Plattform verwalten.", }, { heading: "

Das Problem

",
body: "Bei einem kürzlich durchgeführten Tanzu-Projekt, das auf vSphere 8.0 Update 2, NSX 4.1.2.1 und NSX ALB 22.1.5 basierte, stiessen wir auf ein Problem, das uns daran hinderte, den Supervisor Cluster zu initialisieren. Als wir versuchten, den Supervisor Cluster zu aktivieren, trat während der **Workload Network** Konfigurationsphase ein Timeout-Problem auf.\n" + "\n" + "Als wir die NSX ALB-Konfiguration überprüften, stellten wir fest, dass kein einziges Objekt erstellt und auch keine entsprechenden Events in den Protokollen generiert wurden.\n" + "\n" + "Daraufhin überprüften wir die NCP-Protokolle und fanden folgende Einträge:\n" + "\n" + "```bash\n" + "[ncp GreenThread-125 W] nsx_ujo.ncp.nsx.policy.ako_bootstrap_service Unexpected exception from NSX manager when acquiring AVI auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.\n" + "\n" + "[ncp GreenThread-125 W] nsx_ujo.ncp.nsx.policy.ako_bootstrap_service get_avi_auth_token failed, cause: Failed to get Avi auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain., args: (), kwargs: {}\n" + "\n" + "[ncp GreenThread-125 I] nsx_ujo.common.controller AviSecretController worker 1 failed to sync Bootstrap due to retryable exception: Failed to get Avi auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.\n" + "```\n" + "\n" + "Es schien, als würde dies mit dem NSX Advanced Load Balancer Registrierungsprozess zusammenhängen, bei dem der NSX ALB Controller Cluster beim NSX Manager Cluster registriert ([Link](https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-with-tanzu-installation-configuration/GUID-5417D45D-62B2-4D50-A20C-7B5551EA5594.html#GUID-574F9A67-2768-413F-896F-E176A1D83D37__GUID-D2604B24-B235-4757-855D-A26C67AD905E)) wird.\n" + "\n" + "Vor allem der Eintrag ***\\[…\\]PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain\\[…\\]*** verwies auf ein klares Zertifikatsproblem, das so allerdings nicht direkt nachvollzogen werden konnte, da im [NSX Certificate Trust Store](https://docs.vmware.com/en/VMware-NSX/4.1/administration/GUID-CA4DC685-3013-40F4-930D-A10173F8FA25.html) die Private PKI/CA Zertifikate hinterlegt waren.", }, { heading: "

Die Lösung

",
body: "Tatsächlich ist es so, dass der JVM (Java Virtual Machine) Prozess auf den NSX Manager Nodes einen eigenen Certificate Authority Trust Store besitzt, in welchem nur Public CAs geführt werden. Wenn man nun dem NSX ALB ein Zertifikat von einer Private PKI/CA ausstellt, dann kommt kein Vertrauensverhältnis zustande, da diese Private CA nicht im JVM Trust Store vorhanden ist.\n" + "\n" + "VMware lieferte darauf hin einen konkreten Lösungvorschlag, bei welchem man die Private CAs in den JVM Trust Store importieren musste. Dazu muss man folgende Befehle sequentiell auf jedem NSX Manager ausführen:\n" + "\n" + "```bash\n" + "keytool -importcert -alias <private-Root-CA> -keystore /usr/java/jre/lib/security/cacerts -storepass changeit -file <path-to-root-ca-cert>\n" + "keytool -importcert -alias <private-Intermediate-CA> -keystore /usr/java/jre/lib/security/cacerts -storepass changeit -file <path-to-intermediate-ca-cert>\n" + "sudo cp <path-to-root-ca-cert> /usr/local/share/ca-certificates/\n" + "sudo cp <path-to-intermediate-ca-cert> /usr/local/share/ca-certificates/\n" + "sudo update-ca-certificates\n" + "service proton restart\n" + "```\n" + "\n" + "Nach dem wir diese Anpassungen vorgenommen haben, konnten wir den Supervisor Cluster erfolgreich initiieren. Dazu mussten wir das aktuelle Deployment abbrechen (Disable Supervisor) und neu initiieren.", }, { heading: "

Anmerkung(en)

",
body: "\\[**Update**\\] 05.02.2024: Mittlerweise wurde die [Dokumentation](https://docs.vmware.com/en/VMware-vSphere/8.0/vsphere-with-tanzu-installation-configuration/GUID-C9AB893E-7A25-4DF3-B8ED-588BF4B34E1F.html#GUID-19F202ED-C8FD-4848-9437-F775E756FAC7) entsprechend aktualisiert und verweist auf diese Besonderheit hinsichtlich JVM Trust Store und Private CA ausgestellten Zertifikaten.", }, ], }, status: { corpus: 315, alsoLike: [ { ref: "posts/antrea-nsx-integration", score: "1.00", }, { ref: "posts/vsphere-with-tanzu-und-nsx-advanced-load-balancer-avi-secret-not-found", score: "1.00", }, { ref: "solutions/vmware/vmware-cloud-foundation/addon/advanced-security", score: "0.73", }, ], search: "/de/search.json", },};console.log(JSON.stringify(page, null, 2));

# 86 lines · YAML · validated at build# 77 lines · JSON · validated at build# 102 lines · TOML · validated at build# 114 lines · XML · validated at build# 114 lines · Python · read back at build, equals the JSON record# 111 lines · PowerShell · read back at build, equals the JSON record# 120 lines · Go · read back at build, equals the JSON record# 105 lines · JavaScript · read back at build, equals the JSON record · served at /de/insights/lessons-learned-vsphere-with-tanzu-und-nsx-advanced-load-balancer-integration-mit-private-ca.md

Lessons Learned · 2024-02-05

vSphere with Tanzu und NSX Advanced Load Balancer Integration mit Private CA

Ab VMware vSphere 8.0 Update 2 ist es möglich, vSphere with Tanzu mit VMware NSX als Networking Stack und VMware NSX Advanced Load Balancer (ALB) als integrierten L4 Load Balancer bereitzustellen.

2024-02-05Datum
Matthias GrasmückAutor
3Min. Lesezeit
Hersteller VMware 0.98

Ab VMware vSphere 8.0 Update 2 ist es möglich, vSphere with Tanzu mit VMware NSX als Networking Stack und VMware NSX Advanced Load Balancer (ALB) als integrierten L4 Load Balancer bereitzustellen. Darüber hinaus kann der NSX Advanced Load Balancer auch als L7 Ingress (AKO) Controller verwendet werden, um zusätzliche Enterprise-Features zur Verfügung zu stellen, wie bspw. Container- und App-Security mit WAF, real-time Application Performance Monitoring, Network & End Users Analytics/Insights uvm.

Dadurch ist es möglich, klassische L4/L7 Load Balancing Services bereitzustellen und parallel dazu auch Microservice-Anforderungen für Kubernetes Plattformen zu berücksichtigen. So lassen sich sämtliche NSX ALB Service Engine (Dataplane Komponenten, welche das effektive Load Balancing übernimmt) Instanzen, ob für Load Balanacing von virtuellen Maschinen oder Kuberentes basierte Workloads, in einem zentralen UI/Plattform verwalten.

Das Problem

Bei einem kürzlich durchgeführten Tanzu-Projekt, das auf vSphere 8.0 Update 2, NSX 4.1.2.1 und NSX ALB 22.1.5 basierte, stiessen wir auf ein Problem, das uns daran hinderte, den Supervisor Cluster zu initialisieren. Als wir versuchten, den Supervisor Cluster zu aktivieren, trat während der Workload Network Konfigurationsphase ein Timeout-Problem auf.

Als wir die NSX ALB-Konfiguration überprüften, stellten wir fest, dass kein einziges Objekt erstellt und auch keine entsprechenden Events in den Protokollen generiert wurden.

Daraufhin überprüften wir die NCP-Protokolle und fanden folgende Einträge:

[ncp GreenThread-125 W] nsx_ujo.ncp.nsx.policy.ako_bootstrap_service Unexpected exception from NSX manager when acquiring AVI auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.

[ncp GreenThread-125 W] nsx_ujo.ncp.nsx.policy.ako_bootstrap_service get_avi_auth_token failed, cause: Failed to get Avi auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain., args: (), kwargs: {}

[ncp GreenThread-125 I] nsx_ujo.common.controller AviSecretController worker 1 failed to sync Bootstrap due to retryable exception: Failed to get Avi auth token: Unexpected error from backend manager (['nsx-mgr-01:443', 'nsx-mgr-01a:443', 'nsx-mgr-01b:443', 'nsx-mgr-01c:443']) for PUT policy/api/v1/infra/alb-auth-token: Error: I/O error on GET request for https://192.168.100.33/api/user: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.; nested exception is javax.net.ssl.SSLHandshakeException: PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain.

Es schien, als würde dies mit dem NSX Advanced Load Balancer Registrierungsprozess zusammenhängen, bei dem der NSX ALB Controller Cluster beim NSX Manager Cluster registriert (Link) wird.

Vor allem der Eintrag […]PKIX path building failed: java.security.cert.CertPathBuilderException: Unable to find certificate chain[…] verwies auf ein klares Zertifikatsproblem, das so allerdings nicht direkt nachvollzogen werden konnte, da im NSX Certificate Trust Store die Private PKI/CA Zertifikate hinterlegt waren.

Die Lösung

Tatsächlich ist es so, dass der JVM (Java Virtual Machine) Prozess auf den NSX Manager Nodes einen eigenen Certificate Authority Trust Store besitzt, in welchem nur Public CAs geführt werden. Wenn man nun dem NSX ALB ein Zertifikat von einer Private PKI/CA ausstellt, dann kommt kein Vertrauensverhältnis zustande, da diese Private CA nicht im JVM Trust Store vorhanden ist.

VMware lieferte darauf hin einen konkreten Lösungvorschlag, bei welchem man die Private CAs in den JVM Trust Store importieren musste. Dazu muss man folgende Befehle sequentiell auf jedem NSX Manager ausführen:

keytool -importcert -alias <private-Root-CA> -keystore /usr/java/jre/lib/security/cacerts -storepass changeit -file <path-to-root-ca-cert>
keytool -importcert -alias <private-Intermediate-CA> -keystore /usr/java/jre/lib/security/cacerts -storepass changeit -file <path-to-intermediate-ca-cert>
sudo cp <path-to-root-ca-cert> /usr/local/share/ca-certificates/
sudo cp <path-to-intermediate-ca-cert> /usr/local/share/ca-certificates/
sudo update-ca-certificates
service proton restart

Nach dem wir diese Anpassungen vorgenommen haben, konnten wir den Supervisor Cluster erfolgreich initiieren. Dazu mussten wir das aktuelle Deployment abbrechen (Disable Supervisor) und neu initiieren.

Anmerkung(en)

[Update] 05.02.2024: Mittlerweise wurde die Dokumentation entsprechend aktualisiert und verweist auf diese Besonderheit hinsichtlich JVM Trust Store und Private CA ausgestellten Zertifikaten.

Passt ausserdem