Warum ist im Cluster die öffentliche Unterdomäne containers.appdomain.cloud nicht vorhanden?

Virtual Private Cloud Klassische Infrastruktur

Wenn Sie eine App über eine Ingress-Controller-Unterdomäne zugänglich machen, erhalten Sie eine lokale Unterdomäne anstelle einer öffentlichen Route im Format: <service_name>-<project_name>.router.default.svc.cluster.local.

Wenn Sie versuchen, die Red Hat OpenShift-Webkonsole oder eine andere App-Route in Ihrem Browser zu öffnen, wird möglicherweise ein Fehler ähnlich wie im folgenden Beispiel angezeigt.

Application is not available
The application is currently not serving requests on this endpoint.

Nachdem der Cluster erstellt wurde und in den Status Normal wechselt, dauert die Bereitstellung der Netzbetriebs- und Lastausgleichskomponenten des Ingress-Controllers noch einige Zeit.

Wenn Sie Ihre App vor der vollständigen Bereitstellung der Netzkomponenten zugänglich machen oder wenn bei den Komponenten ein Fehler auftritt, können Ihre Apps nur intern mit der svc.cluster.local-Domäne des Ingress-Standardcontrollers zugänglich gemacht werden.

Wenn die Komponenten vollständig bereitgestellt werden, ist eine öffentliche Ingress-Controller-Unterdomäne für Ihre Apps im Format <cluster-name>-<accountID-hashed>-<ssll>.<region>.containers.appdomain.cloud verfügbar.

  1. Warten Sie nach der Erstellung eines Clusters auch nach dem Erreichen des Status normal durch den Cluster einige Zeit, bevor Sie Ihre Apps bereitstellen.

  2. Überprüfen Sie den Masterstatus. Lautet der Masterstatus nicht Ready, prüfen Sie den Status und befolgen Sie alle verfügbaren Fehlerbehebungsinformationen, um das Problem zu lösen.

    ibmcloud oc cluster get -c <cluster_name_or_ID>
    
  3. Überprüfen Sie, ob Ihr Cluster öffentliche Konnektivität besitzt, damit die Netzkomponenten bei ihrer Bereitstellung Nachrichten an den Master senden können.

    • VPC-Cluster mit aktivierten öffentlichen und privaten Cloud-Service-Endpunkten: Stellen Sie sicher, dass in jedem Subnetz, an das Ihr Cluster angeschlossen ist, ein öffentliches Gateway aktiviert ist. Für Standardkomponenten wie die Webkonsole und den OperatorHub sind öffentliche Gateways erforderlich, um eine sichere öffentliche Verbindung für Aktionen wie das Extrahieren von Images per Pull-Operation aus fernen privaten Registrys zu verwenden. Wenn für den Cluster nur der private Serviceendpunkt aktiviert ist, ist kein öffentliches Gateway erforderlich, da der Private-Cloud-Serviceendpunkt standardmäßig für den Zugriff auf OpenShift-Komponenten wie die OpenShift-Webkonsole oder OperatorHub verwendet wird.
    • Klassische Cluster:
      • Überprüfen Sie in der Ausgabe von Schritt 2, ob für den Cluster eine URL eines öffentlichen Serviceendpunkts festgelegt ist. Wenn Ihr Cluster nicht über einen Endpunkt für einen öffentlichen Cloud-Dienst verfügt, aktivieren Sie ihn.
      • Überprüfen Sie, dass mindestens ein paar Workerknoten in Ihrem Cluster eine Öffentliche IP-Adresse haben. Wenn dies nicht der Fall ist, müssen Sie öffentliche VLANs für mindestens einen Worker-Pool einrichten.
        ibmcloud oc workers -c <cluster_name_or_ID>
        
  4. Überprüfen Sie in der Ausgabe für Schritt 2, ob die Ingress-Unterdomäne verfügbar ist. Die Ingress-Komponenten in Ihrem Cluster müssen bereitgestellt werden, bevor die Komponenten des Ingress-Controllers erstellt werden können. Falls die Ingress-Unterdomäne und der geheime Ingress-Schlüssel nicht verfügbar sind, lesen Sie die Informationen im Abschnitt Warum ist nach der Clustererstellung keine Ingress-Unterdomäne vorhanden?.

  5. Überprüfen Sie, ob die Hostname der Unterdomäne des Ingress-Controllers das folgende Format aufweist: <cluster-name>-<accountID-hashed>-<ssll>.<region>.containers.appdomain.cloud.

    ibmcloud oc nlb-dns ls -c <cluster_name_or_ID>
    
    • Wenn die Unterdomäne des Ingress-Controllers nach zwei Stunden nach der Erstellung des Clusters nicht aktualisiert wird, überprüfen Sie den Master-Status des Clusters erneut und folgen Sie allen Fehlerbehebungsschritten, um das Problem zu lösen.

Wenn das Problem durch die Schritte zur Fehlerbehebung nicht behoben werden kann, lesen Sie den Abschnitt Hilfe anfordern.