Warum ist nach der Clustererstellung keine Ingress-Unterdomäne vorhanden?

Virtuelle Private Cloud Klassische Infrastruktur

Sie erstellen einen Cluster und führen ibmcloud oc cluster get --cluster CLUSTER aus, um dessen Status zu überprüfen. Der Zustand (State) des Clusters ist normal, aber die Ingress-Unterdomäne und der geheime Ingress-Schlüssel sind nicht verfügbar.

Auch wenn der Cluster den Status normal hat, kann es sein, dass die Ingress-Unterdomäne und der geheime Schlüssel noch in Bearbeitung sind. Die Erstellung der Ingress-Subdomain und des Secrets kann mehr als 15 Minuten dauern:

Klassische Cluster:

  1. Wenn die Workerknoten vollständig bereitgestellt und in den VLANs bereit sind, werden ein portierbares öffentliches und ein portierbares privates Teilnetz für die VLANs bestellt.
  2. Nachdem die portierbaren Teilnetzbestellungen erfolgreich ausgeführt wurden, wird die Konfigurationszuordnung ibm-cloud-provider-vlan-ip-config mit der portierbaren öffentlichen und der portierbaren privaten IP-Adresse aktualisiert.
  3. Wenn die ibm-cloud-provider-vlan-ip-config-Konfigurationszuordnung aktualisiert wird, wird die Erstellung des Ingress-Controllers ausgelöst.
  4. Ein Lastausgleichsservice, der den Ingress-Controller zugänglich macht, wird erstellt und es wird eine IP-Adresse zugewiesen.
  5. Die IP-Adresse des Load Balancers wird verwendet, um die Ingress-Subdomain unter IBM NS1 zu registrieren. IBM NS1 Es kann während des Registrierungsvorgangs zu Verzögerungen kommen.

VPC-Cluster:

  1. Wenn Sie einen VPC-Cluster erstellen, wird außerhalb Ihres Clusters in Ihrer VPC automatisch eine öffentliche und eine private VPC-Lastausgleichsfunktion erstellt.
  2. Ein öffentlicher Ingress-Controller pro Zone wird zur Erstellung ausgelöst.
  3. Ein Lastausgleichsservice, der den Ingress-Controller zugänglich macht, wird erstellt und es wird ein Hostname zugewiesen.
  4. Der Hostname des Load Balancers wird verwendet, um die Ingress-Subdomain unter IBMNS1 zu registrieren. IBM NS1 Es kann während des Registrierungsvorgangs zu Verzögerungen kommen.

Erstellen Sie einen neuen Cluster mit demselben oder einem ähnlichen Namen, nachdem Sie einen Cluster gelöscht haben? Lesen Sie stattdessen Nach der Erstellung von Clustern mit demselben oder einem ähnlichen Namen ist keine Ingress-Unterdomäne vorhanden.

In der Regel werden, sobald der Cluster bereit ist, innerhalb von 15 Minuten die Ingress-Unterdomäne und der geheime Schlüssel erstellt. Wenn die Ingress-Unterdomäne und der geheime Schlüssel noch nicht verfügbar sind, nachdem sich Ihr Cluster mehr als 15 Minuten im Status normal befindet, können Sie den Fortschritt des Erstellungsprozesses anhand der folgenden Schritte überprüfen:

  1. Melden Sie sich bei Ihrem Cluster an. Da die Unterdomäne nicht verfügbar ist, kann die Red Hat OpenShift-Konsole nicht geöffnet werden. Stattdessen können Sie den Cluster-Kontext über die CLI mit der Option --admin festlegen.

    ibmcloud oc cluster config -c CLUSTER_NAME_OR_ID --admin
    
  2. Überprüfen, ob die Workerknoten den Zustand (State) normal und den Status Ready aufweisen. Nachdem Sie den Cluster erstellt haben, kann es bis zu 20 Minuten dauern, bis die Workerknoten bereit sind.

    ibmcloud oc worker ls -c CLUSTER_NAME_OR_ID
    

    Beispielausgabe

    ID                                                     Public IP         Private IP      Flavor              State     Status   Zone    Version
    kube-blrs3b1d0p0p2f7haq0g-mycluster-default-000001f7   169.xx.xxx.xxx    10.xxx.xx.xxx   u3c.2x4.encrypted   deployed   Ready    dal10   1.35
    
  3. Bestätigen Sie, dass die vorausgesetzten Schritte für die Erstellung Ihres Ingress-Controllers abgeschlossen sind.

    • Klassische Cluster: Hier finden Sie die Details zur Konfigurationskarte ibm-cloud-provider-vlan-ip-config.
    oc describe cm ibm-cloud-provider-vlan-ip-config -n kube-system
    
    • Wenn die Konfigurationszuordnung IP-Adressen anzeigt, fahren Sie mit dem nächsten Schritt fort.
    • Wenn der Abschnitt 'Ereignisse' (Events) eine Warnnachricht wie ErrorSubnetLimitReached: There are already the maximum number of subnets permitted in this VLAN (Maximale Anzahl zulässiger Teilnetze für dieses VLAN ist erreicht) anzeigt, lesen Sie die Informationen im Thema Fehlerbehebung für VLAN-Kapazität.

    Beispielausgabe für eine Konfigurationszuordnung, die mit IP-Adressen gefüllt ist:

    NAME:         ibm-cloud-provider-vlan-ip-config
    Namespace:    kube-system
    Labels:       <none>
    Annotations:  <none>
    Data
    ====
    reserved_public_vlan_id:
    ----
    vlanipmap.json:
    ----
    {
        "vlans": [
        {
          "id": "2234947",
          "subnets": [
            {
              "id": "2215454",
              "ips": [
                "10.XXX.XXX.XXX",
                "10.XXX.XXX.XXX",
                "10.XXX.XXX.XXX",
                "10.XXX.XXX.XXX",
                "10.XXX.XXX.XXX"
              ],
              "is_public": false,
              "is_byoip": false,
              "cidr": "10.XXX.XXX.X/29"
            }
          ],
          "zone": "dal10",
          "region": "us-south"
        },
        {
          "id": "2234945",
          "subnets": [
            {
              "id": "2219170",
              "ips": [
                "169.XX.XXX.XX",
                "169.XX.XXX.XX",
                "169.XX.XXX.XX",
                "169.XX.XXX.XX",
                "169.XX.XXX.XX"
              ],
              "is_public": true,
              "is_byoip": false,
              "cidr": "169.XX.XXX.X/29"
            }
          ],
          "zone": "dal10",
          "region": "us-south"
        }
        ],
        "vlan_errors": [],
        "reserved_ips": []
    }
    cluster_id:
    ----
    bmnj1b1d09lpvv3oof0g
    reserved_private_ip:
    ----
    reserved_private_vlan_id:
    ----
    reserved_public_ip:
    ----
    Events:  <none>
    
    • VPC-Cluster: Stellen Sie sicher, dass der VPC-Load-Balancer für Ihre Ingress-Controller vorhanden ist. Suchen Sie in der Ausgabe nach dem Namen der VPC-Lastausgleichsfunktion, der mit kube-<cluster_ID> beginnt. Falls das Plug-in infrastructure-service nicht installiert ist, holen Sie die Installation durch Ausführen von ibmcloud plugin install infrastructure-service nach.
    ibmcloud is load-balancers
    

    Obwohl die VPC-Lastausgleichsfunktion aufgelistet ist, kann es sein, dass der zugehörige DNS-Eintrag zurzeit noch registriert wird. Wenn eine VPC-Lastausgleichsfunktion erstellt wurde, wird der Hostname durch ein öffentliches DNS registriert. Manchmal kann es einige Minuten dauern, bis dieser DNS-Eintrag in das von Ihrem Client verwendete bestimmte DNS repliziert wird.

  4. Bestätigen Sie, dass der Ingress-Controller erfolgreich erstellt wurde.

    1. Überprüfen Sie, ob eine Ingress-Controllerbereitstellung für Ihren Cluster vorhanden ist.
      • Wenn eine Ingress-Controllerbereitstellung aufgelistet wird, fahren Sie mit dem nächsten Schritt fort.
      • Wenn nach einigen Minuten keine Bereitstellung eines Ingress-Controllers bereitgestellt wird, prüfen Sie, wie Sie Hilfe erhalten können.
        oc get deployment -n openshift-ingress
        ```
        Beispielausgabe
        ```sh {: screen}
        NAME             READY   UP-TO-DATE   AVAILABLE   AGE
        router-default   2/2     2            2           26m
        ```
    2. Überprüfen Sie, ob der Lastausgleichsservice des Ingress-Controllers vorhanden ist und ihm eine öffentliche externe IP-Adresse (klassische Cluster) oder ein Hostname (VPC-Cluster) zugewiesen ist.
        * Wenn ein Service mit dem Namen `router-default` aufgelistet ist und ihm eine IP-Adresse (klassische Cluster) oder ein Hostname (VPC-Cluster) zugewiesen wurde, fahren Sie mit dem nächsten Schritt fort.
        * Wenn nach mehreren Minuten noch kein `router-default`-Service erstellt worden ist, [informieren Sie sich über die Wege, Hilfe anzufordern](/docs/openshift?topic=openshift-get-help).
    
    ```sh {: pre}
        oc get svc -n openshift-ingress
        ```
        Beispielausgabe
        ```sh {: screen}
        NAME                      TYPE           CLUSTER-IP      EXTERNAL-IP    PORT(S)                      AGE
        router-default            LoadBalancer   172.21.47.119   169.XX.XX.XX   80:31182/TCP,443:31154/TCP   27m
        router-internal-default   ClusterIP      172.21.51.30    <none>         80/TCP,443/TCP,1936/TCP      26m
        ```
    
  5. Überprüfen Sie erneut, ob die Ingress-Unterdomäne und der geheime Schlüssel erstellt wurden. Wenn sie nicht verfügbar sind, Sie aber bestätigt haben, dass alle Komponenten aus den Schritten 1 - 3 vorhanden sind, prüfen Sie, wie Sie Hilfe erhalten können.

    ibmcloud oc cluster get -c CLUSTER_NAME_OR_ID