Kapazitätsreservierungen für das Provisioning von verwalteten Knoten verwenden
Erfahren Sie, wie Sie Compute-Kapazität für Cluster reservieren, die Sie mit der Kubernetes-Engine (OKE) erstellt haben.
Mit dem Compute-Service können Sie Kapazitätsreservierungen erstellen, um sicherzustellen, dass Compute-Kapazität für Workloads verfügbar ist, wenn dies bei kritischen Ereignissen wie Disaster Recovery oder unerwarteten Workload-Spitzen erforderlich ist. Weitere Informationen dazu, wie der Compute-Service Kapazität zuweist, wie viel Kapazität reserviert ist und wie Limits und Quoten angewendet werden, finden Sie unter Kapazitätsreservierungen.
Nachdem Sie eine Kapazitätsreservierung im Compute-Service erstellt haben, können Sie diese Kapazitätsreservierung angeben, wenn Sie mit der Kubernetes-Engine die Platzierungskonfiguration eines verwalteten Knotenpools definieren. Durch Angabe der Kapazitätsreservierung wird sichergestellt, dass die verwalteten Knoten des Knotenpools mit Compute-Instanzen aus der reservierten Kapazität erstellt werden.
Beachten Sie Folgendes:
- Bevor Sie eine Kapazitätsreservierung in der Platzierungskonfiguration eines Knotenpools angeben können, muss die Kapazitätsreservierung bereits vorhanden sein. Die Schritte zum Erstellen einer Kapazitätsreservierung finden Sie unter Verwalten von Kapazitätsreservierungen.
- Stellen Sie sicher, dass die Knotenausprägung, Availability-Domain und Faultdomain in der Platzierungskonfiguration des Knotenpools mit dem Instanztyp, der Availability-Domain und der Faultdomain der Kapazitätsreservierung übereinstimmen.
- Wenn Sie in der Platzierungskonfiguration eines Knotenpools mehrere Availability-Domains angeben, können Sie für jede Availability-Domain eine andere Kapazitätsreservierung angeben.
- Änderungen, die Sie an Worker-Knoteneigenschaften vornehmen, gelten nur für neue Worker-Knoten. Die Aktualisierung der Kapazitätsreservierung, die einem Knotenpool zugeordnet ist, wirkt sich nicht auf die Eigenschaften vorhandener Worker-Knoten aus.
Erforderliche IAM-Policys für die Verwendung von Kapazitätsreservierungen
Um eine Kapazitätsreservierung beim Definieren der Platzierungskonfiguration eines Knotenpools zu verwenden, müssen Sie zu einer Gruppe gehören, der die Berechtigung zur Verwendung von Kapazitätsreservierungen erteilt wurde. Um diese Berechtigung zu erteilen, erstellen Sie die folgende Policy:
Allow group <group-name> to use compute-capacity-reservations in <location>
Wenn eine Gruppe nicht in der Standardidentitätsdomain enthalten ist, stellen Sie dem Gruppennamen den Namen der Identitätsdomain im Format group '<identity-domain-name>'/'group-name'
voran. Sie können eine Gruppe auch mit ihrer OCID im Format group id <group-ocid>
angeben.
Um verwaltete Knoten aus einer Kapazitätsreservierung bereitzustellen, müssen Sie der Kubernetes-Engine die Berechtigung erteilen, Instanzen mit Kapazitätsreservierungen zu starten. Um diese Berechtigung zu erteilen, erstellen Sie eine Policy mit den folgenden Policy-Anweisungen:
Allow service oke to use compute-capacity-reservations in tenancy
Allow any-user to use compute-capacity-reservations in tenancy where request.principal.type = 'nodepool'
Weitere Informationen finden Sie unter Erforderliche IAM-Policy.
Standardkapazität - Reservierungen
Kubernetes Engine unterstützt die Verwendung von Standardkapazitätsreservierungen beim Starten verwalteter Knoten. Mit Standardkapazitätsreservierungen können Sie sicherstellen, dass dieselbe Kapazitätsreservierung jedes Mal verwendet wird, wenn eine Instanz in der Availability-Domain und dem Mandanten gestartet wird, der mit der Reservierung verknüpft ist. Nachdem eine Standardkapazitätsreservierung erstellt wurde, verwenden alle Instanzen (einschließlich verwalteter Knoten), die in dieser Availability-Domain und diesem Mandanten gestartet werden, Kapazität nach Möglichkeit aus der Standardkapazitätsreservierung. Weitere Informationen finden Sie unter Standardkapazitätsreservierungen.
Möglicherweise möchten Sie Worker-Knoten nicht aus einer Standardkapazitätsreservierung bereitstellen. Sie können eine alternative Kapazitätsreservierung auswählen oder eine Kapazitätsreservierung überhaupt nicht verwenden.
Konsole verwenden
Cluster erstellen und Kapazitätsreservierungen angeben
- Befolgen Sie die Anweisungen zum Erstellen eines Clusters mit dem Workflow "Benutzerdefinierte Erstellung". Siehe Cluster mit explizit definierten Einstellungen im Workflow "Benutzerdefinierte Erstellung" mit der Konsole erstellen.
- Wenn Sie die Knotenplatzierungskonfiguration für einen verwalteten Knotenpool im Cluster angeben:
- Geben Sie die erste Availability-Domain und das erste Subnetz an:
- Availability-Domain: Wählen Sie die Availability-Domain aus, die der Kapazitätsreservierung zugeordnet ist, die Sie verwenden möchten.
- Subnetz-Compartment des Worker-Knotens: Wählen Sie das Compartment aus, in dem sich das Worker-Knotensubnetz befindet.
- Worker-Knotensubnetz: Wählen Sie das Subnetz aus, das mit der gewünschten Kapazitätsreservierung verknüpft ist.
- Faultdomains: (Optional) Eine oder mehrere Faultdomains in der Availability-Domain, in der Worker-Knoten platziert werden sollen.
-
Wählen Sie Erweiterte Optionen aus, und geben Sie die zu verwendende Kapazitätsreservierung an:
- Kapazitätstyp: Wählen Sie Kapazitätsreservierung aus.
-
Kapazitätsreservierung: Wählen Sie die zu verwendende Kapazitätsreservierung aus der Liste aus. Wenn Sie keine Kapazitätsreservierung explizit auswählen und eine Standardkapazitätsreservierung für die Availability-Domain erstellt wurde, wird die Standardkapazitätsreservierung verwendet. Wenn Sie die Standardkapazitätsreservierung oder eine andere Kapazitätsreservierung nicht verwenden möchten, wählen Sie Standardreservierung deaktivieren aus.
- Wählen Sie optional Zeile hinzufügen aus, um der Platzierungskonfiguration zusätzliche Availability-Domains, Subnetze und Kapazitätsreservierungen hinzuzufügen. Wenn Sie mehrere Availability-Domains in der Platzierungskonfiguration eines Knotenpools angeben, können Sie für jede Availability-Domain eine andere Kapazitätsreservierung angeben.
- Geben Sie die erste Availability-Domain und das erste Subnetz an:
Verwalteten Knotenpool erstellen und Kapazitätsreservierungen angeben
- Wählen Sie auf der Listenseite Cluster den Namen des Clusters aus, in dem Sie einen neuen Knotenpool erstellen möchten. Wenn Sie Hilfe beim Suchen der Listenseite oder des Clusters benötigen, finden Sie weitere Informationen unter Cluster auflisten.
- Wählen Sie auf der Seite "Clusterdetails" in der Registerkarte Knotenpools die Option Knotenpool hinzufügen aus, um einen neuen verwalteten Knotenpool zu erstellt und die erforderlichen Eigenschaften für den dazugehörigen Worker-Knoten anzugeben.
- Wenn Sie die Knotenplatzierungskonfiguration für einen verwalteten Knotenpool im Cluster angeben:
- Geben Sie die erste Availability-Domain und das erste Subnetz an:
- Availability-Domain: Wählen Sie die Availability-Domain aus, die der Kapazitätsreservierung zugeordnet ist, die Sie verwenden möchten.
- Subnetz-Compartment des Worker-Knotens: Wählen Sie das Compartment aus, in dem sich das Worker-Knotensubnetz befindet.
- Worker-Knotensubnetz: Wählen Sie das Subnetz aus, das mit der gewünschten Kapazitätsreservierung verknüpft ist.
- Faultdomains: (Optional) Eine oder mehrere Faultdomains in der Availability-Domain, in der Worker-Knoten platziert werden sollen.
-
Wählen Sie Erweiterte Optionen aus, und geben Sie die zu verwendende Kapazitätsreservierung an:
- Kapazitätstyp: Wählen Sie Kapazitätsreservierung aus.
-
Kapazitätsreservierung: Wählen Sie die zu verwendende Kapazitätsreservierung aus der Liste aus. Wenn Sie keine Kapazitätsreservierung explizit auswählen und eine Standardkapazitätsreservierung für die Availability-Domain erstellt wurde, wird die Standardkapazitätsreservierung verwendet. Wenn Sie die Standardkapazitätsreservierung oder eine andere Kapazitätsreservierung nicht verwenden möchten, wählen Sie Standardreservierung deaktivieren aus.
- Wählen Sie optional Zeile hinzufügen aus, um der Platzierungskonfiguration zusätzliche Availability-Domains, Subnetze und Kapazitätsreservierungen hinzuzufügen. Wenn Sie mehrere Availability-Domains in der Platzierungskonfiguration eines Knotenpools angeben, können Sie für jede Availability-Domain eine andere Kapazitätsreservierung angeben.
- Geben Sie die erste Availability-Domain und das erste Subnetz an:
Verwalteten Knotenpool aktualisieren und Kapazitätsreservierungen angeben
- Wählen Sie auf der Listenseite Cluster den Namen des Clusters, das Sie ändern möchten. Wenn Sie Hilfe beim Suchen der Listenseite oder des Clusters benötigen, finden Sie weitere Informationen unter Cluster auflisten.
- Wählen Sie auf der Seite "Clusterdetails" in der Registerkarte Knotenpools den Namen des verwalteten Knotenpools aus, den Sie ändern möchten.
- Wählen Sie Bearbeiten aus dem Menü Aktionen.
- Wenn Sie die Knotenplatzierungskonfiguration für einen verwalteten Knotenpool im Cluster angeben:
- Geben Sie die erste Availability-Domain und das erste Subnetz an:
- Availability-Domain: Wählen Sie die Availability-Domain aus, die der Kapazitätsreservierung zugeordnet ist, die Sie verwenden möchten.
- Subnetz-Compartment des Worker-Knotens: Wählen Sie das Compartment aus, in dem sich das Worker-Knotensubnetz befindet.
- Worker-Knotensubnetz: Wählen Sie das Subnetz aus, das mit der gewünschten Kapazitätsreservierung verknüpft ist.
- Faultdomains: (Optional) Eine oder mehrere Faultdomains in der Availability-Domain, in der Worker-Knoten platziert werden sollen.
-
Wählen Sie Erweiterte Optionen aus, und geben Sie die zu verwendende Kapazitätsreservierung an:
- Kapazitätstyp: Wählen Sie Kapazitätsreservierung aus.
-
Kapazitätsreservierung: Wählen Sie die zu verwendende Kapazitätsreservierung aus der Liste aus. Wenn Sie keine Kapazitätsreservierung explizit auswählen und eine Standardkapazitätsreservierung für die Availability-Domain erstellt wurde, wird die Standardkapazitätsreservierung verwendet. Wenn Sie die Standardkapazitätsreservierung oder eine andere Kapazitätsreservierung nicht verwenden möchten, wählen Sie Standardreservierung deaktivieren aus.
- Wählen Sie optional Zeile hinzufügen aus, um der Platzierungskonfiguration zusätzliche Availability-Domains, Subnetze und Kapazitätsreservierungen hinzuzufügen. Wenn Sie mehrere Availability-Domains in der Platzierungskonfiguration eines Knotenpools angeben, können Sie für jede Availability-Domain eine andere Kapazitätsreservierung angeben.
- Geben Sie die erste Availability-Domain und das erste Subnetz an:
- Speichern Sie die Änderungen.
CLI verwenden
Informationen zur Verwendung der CLI finden Sie unter Befehlszeilenschnittstelle (CLI). Eine vollständige Liste der Flags und Optionen, die für CLI-Befehle verfügbar sind, finden Sie in der Befehlszeilenreferenz.
Verwalteten Knotenpool erstellen und Kapazitätsreservierungen angeben
Um mit der CLI einen verwalteten Knotenpool zu erstellen, der verwaltete Knoten mit einer Kapazitätsreservierung bereitstellt, nehmen Sie das Schlüssel/Wert-Paar capacityReservationId
in den Parameter --placement-configs
auf.
Beispiel:
oci ce node-pool create \
--cluster-id ocid1.cluster.oc1.iad.aaaaaaaaaf______jrd \
--name test-node \
--node-image-id ocid1.image.oc1.iad.aaaaaaaa6______nha \
--compartment-id oocid1.compartment.oc1..aaaaaaaay______t6q \
--kubernetes-version v1.21.5 \
--node-shape VM.Standard2.1 \
--placement-configs "[{\"availability-domain\":\"IqDk:US-ASHBURN-AD-2\", \"capacityReservationId\":\"ocid1.capacityreservation.oc1.iad.anuwcljt2ah______yeq\", \"subnet-id\":\"ocid1.subnet.oc1.iad.aaaaaaaa2xpk______zva\", \"faultDomains\":[\"FAULT-DOMAIN-3\", \"FAULT-DOMAIN-1\"]}, {\"availability-domain\":\"IqDk:US-ASHBURN-AD-1\", \"subnet-id\":\"ocid1.subnet.oc1.iad.aaaaaaaauhls______bpq\", \"faultDomains\": [\"FAULT-DOMAIN-1\", \"FAULT-DOMAIN-2\"]}]" \
--size 1 \
--region=us-ashburn-1 \
Wenn eine Standardkapazitätsreservierung für die Availability-Domain erstellt wurde, in der Sie den Knotenpool erstellen, wird diese Kapazitätsreservierung standardmäßig verwendet. Wenn Sie die Standardkapazitätsreservierung oder eine andere Kapazitätsreservierung nicht verwenden möchten, setzen Sie den Wert des Schlüssels capacityReservationId
auf eine leere Zeichenfolge, die in doppelte Anführungszeichen eingeschlossen ist, nämlich \"capacityReservationId\":\""
.
Wenn Sie in der Platzierungskonfiguration eines Knotenpools mehrere Availability-Domains angeben, können Sie für jede Availability-Domain eine andere Kapazitätsreservierung angeben.
API verwenden
Informationen zur Verwendung der API und zu Signieranforderungen finden Sie unter REST-API-Dokumentation und Sicherheitszugangsdaten. Informationen zu SDKs finden Sie unter SDKs und die CLI.
Verwenden Sie das Attribut placementConfigs
des Objekts nodeConfigDetails
, um Kapazitätsreservierungen beim Erstellen oder Aktualisieren von verwalteten Knotenpools anzugeben.
Wenn eine Standardkapazitätsreservierung für die Availability-Domain erstellt wurde, in der Sie den verwalteten Knotenpool erstellen, wird diese Kapazitätsreservierung standardmäßig verwendet. Wenn Sie die Standardkapazitätsreservierung oder eine andere Kapazitätsreservierung nicht verwenden möchten, setzen Sie den Wert des Feldes capacityReservationId
auf eine leere Zeichenfolge, die in doppelte Anführungszeichen eingeschlossen ist, nämlich "capacityReservationId":""
.
Wenn Sie in der Platzierungskonfiguration eines Knotenpools mehrere Availability-Domains angeben, können Sie für jede Availability-Domain eine andere Kapazitätsreservierung angeben.