Hinzufügen von Worker-Knoten zu Classic-Clustern

Classic infrastructure

In den folgenden Abschnitten finden Sie Informationen dazu, wie Sie Ihrem klassischen Cluster Worker-Knoten hinzufügen können.

Möchten Sie Worker zu VPC-Clustern hinzufügen? Siehe Workerknoten zu VPC-Clustern hinzufügen.

Wenn Sie die Verfügbarkeit Ihrer Apps erhöhen möchten, können Sie Workerknoten zu einer vorhandenen Zone oder mehreren vorhandenen Zonen in Ihrem Cluster hinzufügen. Um Ihre Apps vor Zonenausfällen zu schützen, können Sie Zonen zu Ihrem Cluster hinzufügen.

Wenn Sie einen Cluster erstellen, werden die Workerknoten in einem Worker-Pool bereitgestellt. Nach der Clustererstellung können Sie weitere Workerknoten zu einem Pool hinzufügen, indem Sie die Größe ändern oder weitere Worker-Pools hinzufügen. Der Worker-Pool ist standardmäßig in einer Zone vorhanden. Cluster, die über einen Worker-Pool in nur einer Zone verfügen, werden als Einzelzonencluster bezeichnet. Wenn Sie dem Cluster weitere Zonen hinzufügen, ist der Worker-Pool zonenübergreifend vorhanden. Cluster, die über einen Worker-Pool verfügen, der über mehrere Zonen verteilt ist, werden als Mehrzonencluster bezeichnet.

Wenn Sie über einen Mehrzonencluster verfügen, müssen seine Workerknotenressourcen ausgeglichen sein. Stellen Sie sicher, dass alle Worker-Pools über dieselben Zonen verteilt sind und fügen Sie Worker hinzu oder entfernen Sie sie, indem Sie die Größe der Pools ändern, anstatt einzelne Knoten hinzuzufügen. Nach der Einrichtung Ihres Worker-Pools können Sie den Cluster-Autoscaler einrichten, um Workerknoten in Ihren Worker-Pools automatisch entsprechend den Workloadressourcenanforderungen hinzuzufügen oder zu entfernen.

Reservierungen für klassische Worker-Knoten sind veraltet. Nach dem 15. Oktober 2026 können keine neuen Reservierungsverträge mehr abgeschlossen werden. Wenn Sie über einen bestehenden Reservierungsvertrag verfügen, der bald ausläuft, müssen Sie einen neuen Worker-Pool erstellen, der keine Reservierung nutzt, und Ihre Workloads vor Ablauf des Vertrags migrieren.

Neuen Worker-Pool erstellen

Sie können Ihrem klassischen Cluster Workerknoten hinzufügen, indem Sie einen neuen Worker-Pool erstellen. Falls Sie bisher Reservierungen zur Bereitstellung von Worker-Knoten verwendet haben, beachten Sie bitte, dass Reservierungen nicht mehr unterstützt werden. Erstellen Sie stattdessen einen Standard-Worker-Pool.

Bevor Sie beginnen, stellen Sie sicher, dass Sie über die IAM-Plattformzugriffsrolle Operator oder Administrator verfügen.

  1. Rufen Sie die Workerzonen Ihres Clusters ab und wählen Sie die Zone aus, in der Sie die Workerknoten in Ihrem Worker-Pool bereitstellen möchten. Wenn Sie über ein Einzelzonencluster verfügen, müssen Sie die Zone verwenden, die im Feld Workerzonen angegeben ist. Bei Mehrzonenclustern können Sie eine der vorhandenen Workerzonen Ihres Clusters auswählen oder einen der Standorte mit mehreren Zonen für die Region hinzufügen, in der sich Ihr Cluster befindet. Verfügbare Zonen können Sie mit dem Befehl ibmcloud oc zone ls auflisten.

    ibmcloud oc cluster get --cluster CLUSTER_NAME_OR_ID
    

    Beispielausgabe

    ...
    Worker Zones: dal10, dal12, dal13
    
  2. Listen Sie für jede Zone private und öffentliche VLANs auf. Notieren Sie sich das private und das öffentliche VLAN, das Sie verwenden möchten. Wenn Sie über kein privates oder öffentliches VLAN verfügen, wird das VLAN automatisch für Sie erstellt, wenn Sie Ihrem Workerpool eine Zone hinzufügen.

    ibmcloud oc vlan ls --zone ZONE
    
  3. Überprüfen Sie für jede Zone die verfügbaren Varianten für Worker-Knoten.

    ibmcloud oc flavors --zone ZONE
    
  4. Erstellen Sie einen Worker-Pool. Weitere Optionen werden in der CLI-Dokumentation aufgeführt.

    • Schließen Sie die Option --label ein, um Workerknoten, die sich mit der Bezeichnung key=value im Pool befinden, automatisch eine Bezeichnung zuzuordnen.
    • Falls Sie einen Bare-Metal- oder dedizierten VM-Worker-Pool bereitstellen, geben Sie --hardware dedicated an.
    • Die neuen Workerknoten führen dieselbe Haupt- und Nebenversion (major.minor) wie der Cluster-Master aus. Dabei wird jedoch das neueste Workerknotenpatch der betreffenden Haupt- und Nebenversionmajor.minor verwendet.
    ibmcloud oc worker-pool create classic --name POOL_NAME --cluster CLUSTER_NAME_OR_ID --flavor FLAVOR --size-per-zone NUMBER_OF_WORKERS_PER_ZONE [--operating-system (REDHAT_8_64)] [--label key=value]
    
  5. Stellen Sie sicher, dass der Worker-Pool erstellt wird.

    ibmcloud oc worker-pool ls --cluster CLUSTER_NAME_OR_ID
    
  6. Standardmäßig wird durch das Hinzufügen eines Worker-Pools ein Pool ohne Zonen erstellt. Um Workerknoten in einer Zone bereitzustellen, müssen Sie die Zonen zum Worker-Pool hinzufügen, die Sie vorher abgerufen haben. Wenn Sie die Workerknoten auf mehrere Zonen verteilen möchten, wiederholen Sie diesen Befehl für jede einzelne Zone.

    ibmcloud oc zone add classic --zone ZONE --cluster CLUSTER_NAME_OR_ID --worker-pool POOL_NAME --private-vlan PRIVATE_VLAN_ID --public-vlan PUBLIC_VLAN_ID
    
  7. Stellen Sie sicher, dass die Workerknoten in der Zone bereitgestellt werden, die Sie hinzugefügt haben. Ihre Worker-Knoten sind bereit, sobald sich der Status von zu provision_pending ändert normal.

    ibmcloud oc worker ls --cluster CLUSTER_NAME_OR_ID --worker-pool POOL_NAME
    

    Beispielausgabe

    ID                                                 Public IP        Private IP      Machine Type      State    Status  Zone    Version
    kube-dal10-crb20b637238ea471f8d4a8b881aae4962-w7   169.xx.xxx.xxx   10.xxx.xx.xxx   b3c.4x16          provision_pending   Ready   dal10   1.36
    kube-dal10-crb20b637238ea471f8d4a8b881aae4962-w8   169.xx.xxx.xxx   10.xxx.xx.xxx   b3c.4x16          provision_pending   Ready   dal10   1.36
    

Größe eines Worker-Pools ändern

Sie können die Anzahl der Workerknoten in Ihrem Cluster erhöhen oder verringern, indem Sie die Größe eines vorhandenen Worker-Pools ändern, unabhängig davon, ob sich der Worker-Pool in einer Zone befindet oder über mehrere Zonen verteilt ist.

Angenommen, Sie verfügen über einen Cluster mit einem Worker-Pool, der drei Workerknoten pro Zone aufweist.

  • Wenn es sich bei dem Cluster um einen Einzelzonencluster handelt und er sich in dal10 befindet, dann verfügt der Worker-Pool über drei Workerknoten in dal10. Der Cluster verfügt über insgesamt drei Workerknoten.
  • Wenn es sich bei dem Cluster um einen Mehrzonencluster handelt und er sich in dal10 und dal12 befindet, dann verfügt der Worker-Pool über drei Workerknoten in dal10 und drei Workerknoten in dal12. Der Cluster verfügt über insgesamt sechs Workerknoten.

Bei Bare-Metal-Worker-Pools sollten Sie beachten, dass die Rechnungsstellung monatlich erfolgt. Je nachdem, wie Sie die Größe eines Pools verändern, wirkt sich dies auf die Kosten für den Monat aus. Wenn Sie Workerknoten hinzufügen, indem Sie die Größe eines Workerpools ändern, führen die neuen Workerknoten dieselbe major.minor-Version aus wie der Clustermaster, aber den neuesten Workerknoten-Patch dieser major.minor-Version.

Bevor Sie beginnen, stellen Sie sicher, dass Sie über die IAM-Plattformzugriffsrolle Operator oder Administrator verfügen.

Ändern Sie die Anzahl der Workerknoten, die der Worker-Pool in jeder Zone bereitstellt, um die Größe des Worker-Pools zu ändern:

  1. Rufen Sie den Namen des Worker-Pools ab, dessen Größe Sie ändern möchten.
    ibmcloud oc worker-pool ls --cluster CLUSTER_NAME_OR_ID
    
  2. Ändern Sie die Größe des Worker-Pools, indem Sie die Anzahl der Workerknoten angeben, die Sie in jeder Zone bereitstellen möchten.
    ibmcloud oc worker-pool resize --cluster CLUSTER_NAME_OR_ID --worker-pool POOL_NAME --size-per-zone NUMBER_OF_WORKERS_PER_ZONE
    
  3. Stellen Sie sicher, dass die Größe des Worker-Pools geändert wurde.
    ibmcloud oc worker ls --cluster CLUSTER_NAME_OR_ID --worker-pool POOL_NAME
    
    Beispielausgabe für einen Worker-Pool, der sich in zwei Zonen (dal10 und dal12) befindet und dessen Größe auf zwei Workerknoten pro Zone geändert wird:
    ID                                                 Public IP        Private IP      Machine Type      State    Status  Zone    Version
    kube-dal10-crb20b637238ea471f8d4a8b881aae4962-w7   169.xx.xxx.xxx   10.xxx.xx.xxx   b3c.4x16          normal   Ready   dal10   1.36
    kube-dal10-crb20b637238ea471f8d4a8b881aae4962-w8   169.xx.xxx.xxx   10.xxx.xx.xxx   b3c.4x16          normal   Ready   dal10   1.36
    kube-dal12-crb20b637238ea471f8d4a8b881aae4962-w9   169.xx.xxx.xxx   10.xxx.xx.xxx   b3c.4x16          normal   Ready   dal12   1.36
    kube-dal12-crb20b637238ea471f8d4a8b881aae4962-w10  169.xx.xxx.xxx   10.xxx.xx.xxx   b3c.4x16          normal   Ready   dal12   1.36
    

Zone zu einem Worker-Pool hinzufügen

Sie können Ihren klassischen Cluster über mehrere Zonen in einer Region verteilen, indem Sie eine Zone zu dem vorhandenen Worker-Pool hinzufügen.

Wenn Sie einem Workerpool eine Zone hinzufügen, werden die Workerknoten, die in Ihrem Workerpool definiert sind, in der neuen Zone bereitgestellt und für die zukünftige Workload-Planung berücksichtigt. Red Hat OpenShift on IBM Cloud fügt automatisch die failure-domain.beta.kubernetes.io/region-Bezeichnung für die Region und die failure-domain.beta.kubernetes.io/zone-Bezeichnung für die Zone zu jedem Workerknoten hinzu. Der Kubernetes-Scheduler verwendet diese Bezeichnungen, um Pods auf Zonen innerhalb derselben Region zu verteilen.

Wenn Sie über mehrere Workerpools in Ihrem Cluster verfügen, fügen Sie die Zone zu allen hinzu, sodass die Workerknoten gleichmäßig über Ihren Cluster verteilt sind. Beim Hinzufügen von Workerknoten im Cluster ist zu beachten, dass die neuen Workerknoten dieselbe Haupt- und Nebenversion (major.minor) wie der Cluster-Master ausführen, dabei jedoch das neueste Workerknotenpatch der betreffenden Haupt- und Nebenversion major.minorverwendet wird.

Vorbereitende Schritte:

  • Wenn Sie eine Zone zu Ihrem Worker-Pool hinzufügen möchten, muss sich Ihr Worker-Pool in einer mehrzonenfähigen Zone befinden. Wenn sich der Worker-Pool nicht in einer solchen Zone befindet, sollten Sie einen neuen Worker-Pool erstellen.
  • Stellen Sie sicher, dass Sie über die Datei Operator or Administrator IAM platform access role verfügen.
  • Wenn Sie in klassischen Clustern über mehrere VLANs für Ihren Cluster, mehrere Teilnetze in demselben VLAN oder einen Cluster mit mehreren Zonen verfügen, müssen Sie VRF (Virtual Router Function) für Ihr Konto der IBM Cloud-Infrastruktur aktivieren, damit die Workerknoten über das private Netz miteinander kommunizieren können. Informationen zum Aktivieren von VRF finden Sie im Abschnitt VRF aktivieren. Mit dem Befehl ibmcloud account show können Sie überprüfen, ob VRF bereits aktiviert ist. Wenn Sie VRF nicht aktivieren können oder möchten, aktivieren Sie VLAN-Spanning. Um diese Aktion auszuführen, benötigen Sie die Berechtigung Netzwerk > Netzwerk-VLAN-Spanning-Infrastruktur verwalten, oder Sie können den Kontoinhaber bitten, diese Berechtigung zu aktivieren. Um zu überprüfen, ob VLAN-Spanning bereits aktiviert ist, verwenden Sie den Befehlibmcloud oc vlan spanning get --region <region>.

Gehen Sie wie folgt vor, um eine Zone mit Workerknoten zum Worker-Pool hinzuzufügen:

  1. Listen Sie die verfügbaren Zonen auf und wählen Sie die Zone aus, die Sie Ihrem Worker-Pool hinzufügen möchten. Die Zone, die Sie auswählen, muss eine mehrzonenfähige Zone sein.

    ibmcloud oc zone ls
    
  2. Listen Sie die verfügbaren VLANs in dieser Zone auf. Wenn Sie über kein privates oder öffentliches VLAN verfügen, wird das VLAN automatisch für Sie erstellt, wenn Sie Ihrem Workerpool eine Zone hinzufügen.

    ibmcloud oc vlan ls --zone ZONE
    
  3. Listen Sie die Worker-Pools in Ihrem Cluster auf und notieren Sie deren Namen.

    ibmcloud oc worker-pool ls --cluster CLUSTER_NAME_OR_ID
    
  4. Fügen Sie die Zone Ihrem Worker-Pool hinzu. Wenn Sie mehrere Worker-Pools haben, fügen Sie die Zone allen Worker-Pools hinzu, sodass Ihr Cluster in allen Zonen ausgeglichen ist.

    Es muss ein privates und ein öffentliches VLAN vorhanden sein, bevor Sie eine Zone zu mehreren Worker-Pools hinzufügen können. Wenn Sie über kein privates und öffentliches VLAN in dieser Zone verfügen, fügen Sie die Zone zunächst einem Workerpool hinzu, sodass ein privates und ein öffentliches VLAN für Sie erstellt wird. Anschließend können Sie die Zone zu anderen Worker-Pools hinzufügen, indem Sie das private und das öffentliche VLAN angeben, das für Sie erstellt wurde.

    Wenn Sie verschiedene VLANs für unterschiedliche Worker-Pools verwenden möchten, wiederholen Sie diesen Befehl für jedes VLAN und die entsprechenden Worker-Pools. Alle neuen Workerknoten werden den von Ihnen angegebenen VLANs hinzugefügt, die VLANs für alle vorhandenen Workerknoten werden jedoch nicht geändert.

    ibmcloud oc zone add classic --zone ZONE --cluster CLUSTER_NAME_OR_ID -p POOL_NAME [-p POOL2_NAME] --private-vlan PRIVATE_VLAN_ID --public-vlan PUBLIC_VLAN_ID
    
  5. Überprüfen Sie, ob die Zone Ihrem Cluster hinzugefügt wurde. Suchen Sie die hinzugefügte Zone im Feld für die Workerzonen der Ausgabe. Beachten Sie, dass die Gesamtanzahl der Worker im Feld für die Worker sich erhöht hat, da neue Workerknoten in der hinzugefügten Zone bereitgestellt werden.

    ibmcloud oc cluster get --cluster CLUSTER_NAME_OR_ID
    

    Beispielausgabe

    NAME:                           mycluster
    ID:                             df253b6025d64944ab99ed63bb4567b6
    State:                          normal
    Status:                         healthy cluster
    Created:                        2018-09-28T15:43:15+0000
    Location:                       dal10
    Pod Subnet:                     172.30.0.0/16
    Service Subnet:                 172.21.0.0/16
    Master URL:                     https://c3.<region>.containers.cloud.ibm.com:30426
    Public Service Endpoint URL:    https://c3.<region>.containers.cloud.ibm.com:30426
    Private Service Endpoint URL:   https://c3-private.<region>.containers.cloud.ibm.com:31140
    Master Location:                Dallas
    Master Status:                  Ready (21 hours ago)
    Ingress Subdomain:              mycluster-<hash>-0000.us-south.containers.appdomain.cloud
    Ingress Secret:                 mycluster-<hash>-0000
    Workers:                        6
    Worker Zones:                   dal10, dal12
    Version:                        1.36_1524
    Owner:                          owner@email.com
    Resource Group ID:              a8a12accd63b437bbd6d58fb6a462ca7
    Resource Group Name:            Default