Ich habe einen Kubernetes-Cluster im Hochverfügbarkeitsmodus mit 3 Master-Knoten. Wenn ich versuche, das DNS-Cluster-Add-On unverändert auszuführen, werden die Anwendungsfehler kube2sky
mit einer Nachricht x509 mit unbekannter Zertifizierungsstelle für die API-Server-Dienstadresse (in meinem Fall 10.100.0.1) signiert. Als ich einige der GitHub-Probleme durchging, sah es so aus, als hätte Tim Hockin diese Art von Problem mit Hilfe der Standard-Token für das Dienstkonto behoben.Wie kann ich den Fehler "x509 signed by unknown certificate authority" umgehen, wenn die virtuelle IP-Adresse des virtuellen Kubernetes-API-Servers verwendet wird?
Alle 3 Master-Knoten generieren ihre eigenen Zertifikate für den gesicherten API-Port. Muss ich also etwas Spezielles auf den API-Servern konfigurieren, um das CA-Zertifikat in das Standard-Service-Account-Token aufzunehmen?
Hallo Antoine, danke für die Antwort. Angesichts meines aktuellen Bereitstellungsmodus kann ich dem SAN-Feld die Dienst-IP nicht wirklich hinzufügen, da die API-Serverzertifikate selbst generiert werden (ich gebe den Schlüssel/das Zertifikat nicht als Flags für den API-Server an). Fürs Erste habe ich die kubeconfig-Datei für kube2sky, die auf dem Minion-Knoten zur Verfügung steht, um mit den API-Servern zu sprechen, heruntergefahren. Es scheint mir nur, dass die Service-IP für den Kubernetes-Standarddienst in seinem aktuellen Status aufgrund dieses Fehlers unbrauchbar ist. – Bryan
Auch wenn Ihre Zertifikate selbst generiert werden, was hindert Sie daran, die API-Service-IP (die im SAN festgeschrieben ist) fest zu codieren? –
Weil ich sie nicht erzeuge ... erzeugt jeder der 3 API-Server diese beim Start, wenn kein Schlüssel/Zertifikat-Paar bereitgestellt wird. Der Fehler, den ich bekomme, ist auch nicht, dass die Server-IP/-Domäne nicht übereinstimmt, sondern dass das Server-Zertifikat nicht von einer bekannten CA signiert wird. – Bryan