Uso delle assegnazioni di capacità per eseguire il provisioning dei nodi gestiti
Scopri come riservare la capacità di computazione per i cluster creati utilizzando Kubernetes Engine (OKE).
Il servizio di computazione ti consente di creare assegnazioni di capacità per garantire che la capacità di computazione sia disponibile per i carichi di lavoro quando necessario durante eventi critici, come il disaster recovery o picchi di carico di lavoro imprevisti. Per ulteriori informazioni sulle modalità di allocazione della capacità da parte del servizio di computazione, sulla quantità di capacità riservata e sull'applicazione di limiti e quote, vedere Assegnazioni capacità.
Dopo aver creato un'assegnazione capacità nel servizio di computazione, è possibile specificare tale assegnazione capacità quando si utilizza Kubernetes Engine per definire la configurazione di posizionamento di un pool di nodi gestito. La specifica dell'assegnazione capacità garantisce che i nodi gestiti del pool di nodi vengano creati utilizzando le istanze di computazione della capacità riservata.
Tenere presente quanto riportato di seguito.
- Prima di poter specificare un'assegnazione capacità nella configurazione di posizionamento di un pool di nodi, l'assegnazione capacità deve esistere già. Per i passi per creare un'assegnazione capacità, vedere Gestione delle assegnazioni capacità.
- Assicurarsi che la forma del nodo, il dominio di disponibilità e il dominio di errore nella configurazione di posizionamento del pool di nodi corrispondano rispettivamente al tipo di istanza, al dominio di disponibilità e al dominio di errore dell'assegnazione capacità.
- Se si specificano più domini di disponibilità nella configurazione di posizionamento di un pool di nodi, è possibile specificare un'assegnazione capacità diversa per ogni dominio di disponibilità.
- Le modifiche apportate alle proprietà dei nodi di lavoro si applicano solo ai nuovi nodi di lavoro. L'aggiornamento dell'assegnazione capacità associata a un pool di nodi non influisce sulle proprietà dei nodi di lavoro esistenti.
Criteri IAM obbligatori per l'utilizzo delle assegnazioni capacità
Per utilizzare un'assegnazione capacità durante la definizione della configurazione di posizionamento di un pool di nodi, è necessario appartenere a un gruppo a cui è stata concessa l'autorizzazione per utilizzare le assegnazioni capacità. Per concedere questa autorizzazione, creare il criterio seguente:
Allow group <group-name> to use compute-capacity-reservations in <location>
Si noti che se un gruppo non si trova nel dominio di identità predefinito, inserire il nome del gruppo prima del nome del dominio di identità nel formato group '<identity-domain-name>'/'group-name'
. È anche possibile specificare un gruppo utilizzando il relativo OCID, nel formato group id <group-ocid>
.
Per eseguire il provisioning dei nodi gestiti da un'assegnazione capacità, è necessario concedere a Kubernetes Engine l'autorizzazione per avviare le istanze utilizzando le assegnazioni capacità. Per concedere questa autorizzazione, creare un criterio con le istruzioni criterio riportate di seguito.
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'
Per ulteriori informazioni, vedere Criterio IAM obbligatorio.
Assegnazioni capacità predefinite
Kubernetes Engine supporta l'uso delle assegnazioni di capacità predefinite durante l'avvio dei nodi gestiti. Con le assegnazioni capacità predefinite, puoi assicurarti che venga utilizzata la stessa assegnazione capacità ogni volta che un'istanza viene avviata nel dominio di disponibilità e nella tenancy associati all'assegnazione. Dopo aver creato un'assegnazione capacità predefinita, tutte le istanze (inclusi i nodi gestiti) avviate nel dominio di disponibilità e nella tenancy utilizzano, ove possibile, la capacità dell'assegnazione capacità predefinita. Per ulteriori informazioni, vedere Predefinite Capacity Reservations.
È possibile che non si desideri eseguire il provisioning dei nodi di lavoro da un'assegnazione capacità predefinita. È possibile selezionare un'assegnazione capacità alternativa oppure scegliere di non utilizzare alcuna assegnazione capacità.
Utilizzo di Console
Creazione di un cluster e specifica delle assegnazioni della capacità
- Seguire le istruzioni per creare un cluster utilizzando il workflow 'Creazione personalizzata'. Vedere Utilizzo della console per creare un cluster con impostazioni definite in modo esplicito nel workflow 'Creazione personalizzata'.
- Quando si specifica la configurazione del posizionamento per un pool di nodi gestiti nel cluster:
- Specificare il primo dominio di disponibilità e la prima subnet:
- Dominio di disponibilità: selezionare il dominio di disponibilità associato all'assegnazione capacità che si intende utilizzare.
- Dominio di errore: (facoltativo) uno o più domini di errore nel dominio di disponibilità in cui posizionare i nodi di lavoro.
- Subnet: selezionare la subnet associata all'assegnazione capacità che si intende utilizzare.
-
Selezionare Mostra opzioni avanzate e specificare la riserva capacità da utilizzare:
- Tipo di capacità: selezionare Impegno capacità.
-
Assegnazione capacità: selezionare dall'elenco l'assegnazione capacità da utilizzare. Se non si seleziona in modo esplicito un'assegnazione capacità ed è stata creata un'assegnazione capacità predefinita per il dominio di disponibilità, viene utilizzata l'assegnazione capacità predefinita. Se non si desidera utilizzare l'assegnazione capacità predefinita o qualsiasi altra assegnazione capacità, selezionare Escludi assegnazione predefinita.
- Facoltativamente, selezionare Altra riga per aggiungere ulteriori domini di disponibilità, subnet e riserve di capacità alla configurazione di posizionamento. Se si specificano più domini di disponibilità nella configurazione di posizionamento di un pool di nodi, è possibile specificare una riserva di capacità diversa per ogni dominio di disponibilità.
- Specificare il primo dominio di disponibilità e la prima subnet:
Creazione di un pool di nodi gestiti e specifica delle assegnazioni capacità
- Aprire il menu di navigazione e selezionare Developer Services. In Container e artifact, selezionare Cluster Kubernetes (OKE).
- Scegliere un compartimento in cui si dispone dell'autorizzazione per lavorare.
- Nella pagina Lista cluster selezionare il nome del cluster in cui si desidera creare un nuovo pool di nodi.
- Nella pagina Cluster visualizzare la scheda Pool di nodi, quindi selezionare Aggiungi pool di nodi per creare un nuovo pool di nodi gestiti e specificare le proprietà necessarie per i relativi nodi di lavoro.
- Quando si specifica la configurazione del posizionamento per un pool di nodi gestiti nel cluster:
- Specificare il primo dominio di disponibilità e la prima subnet:
- Dominio di disponibilità: selezionare il dominio di disponibilità associato all'assegnazione capacità che si intende utilizzare.
- Dominio di errore: (facoltativo) uno o più domini di errore nel dominio di disponibilità in cui posizionare i nodi di lavoro.
- Subnet: selezionare la subnet associata all'assegnazione capacità che si intende utilizzare.
-
Selezionare Mostra opzioni avanzate e specificare la riserva capacità da utilizzare:
- Tipo di capacità: selezionare Impegno capacità.
-
Assegnazione capacità: selezionare dall'elenco l'assegnazione capacità da utilizzare. Se non si seleziona in modo esplicito un'assegnazione capacità ed è stata creata un'assegnazione capacità predefinita per il dominio di disponibilità, viene utilizzata l'assegnazione capacità predefinita. Se non si desidera utilizzare l'assegnazione capacità predefinita o qualsiasi altra assegnazione capacità, selezionare Escludi assegnazione predefinita.
- Facoltativamente, selezionare Altra riga per aggiungere ulteriori domini di disponibilità, subnet e riserve di capacità alla configurazione di posizionamento. Se si specificano più domini di disponibilità nella configurazione di posizionamento di un pool di nodi, è possibile specificare una riserva di capacità diversa per ogni dominio di disponibilità.
- Specificare il primo dominio di disponibilità e la prima subnet:
Aggiornamento di un pool di nodi gestiti e specifica delle assegnazioni di capacità
- Aprire il menu di navigazione e selezionare Developer Services. In Container e artifact, selezionare Cluster Kubernetes (OKE).
- Scegliere un compartimento in cui si dispone dell'autorizzazione per lavorare.
- Nella pagina Lista cluster, selezionare il nome del cluster da modificare.
- Selezionare Pool di nodi in Risorse e selezionare il nome del pool di nodi gestiti che si desidera modificare.
- Nella pagina Dettagli pool di nodi selezionare Modifica.
- Quando si specifica la configurazione del posizionamento per un pool di nodi gestiti nel cluster:
- Specificare il primo dominio di disponibilità e la prima subnet:
- Dominio di disponibilità: selezionare il dominio di disponibilità associato all'assegnazione capacità che si intende utilizzare.
- Dominio di errore: (facoltativo) uno o più domini di errore nel dominio di disponibilità in cui posizionare i nodi di lavoro.
- Subnet: selezionare la subnet associata all'assegnazione capacità che si intende utilizzare.
-
Selezionare Mostra opzioni avanzate e specificare la riserva capacità da utilizzare:
- Tipo di capacità: selezionare Impegno capacità.
-
Assegnazione capacità: selezionare dall'elenco l'assegnazione capacità da utilizzare. Se non si seleziona in modo esplicito un'assegnazione capacità ed è stata creata un'assegnazione capacità predefinita per il dominio di disponibilità, viene utilizzata l'assegnazione capacità predefinita. Se non si desidera utilizzare l'assegnazione capacità predefinita o qualsiasi altra assegnazione capacità, selezionare Escludi assegnazione predefinita.
- Facoltativamente, selezionare Altra riga per aggiungere ulteriori domini di disponibilità, subnet e riserve di capacità alla configurazione di posizionamento. Se si specificano più domini di disponibilità nella configurazione di posizionamento di un pool di nodi, è possibile specificare una riserva di capacità diversa per ogni dominio di disponibilità.
- Specificare il primo dominio di disponibilità e la prima subnet:
- Salvare le modifiche.
Uso dell'interfaccia CLI
Per informazioni sull'uso dell'interfaccia CLI, vedere Command Line Interface (CLI). Per un elenco completo dei flag e delle opzioni disponibili per i comandi CLI, vedere il documento Command Line Reference.
Creazione di un pool di nodi gestiti e specifica delle assegnazioni capacità
Per utilizzare l'interfaccia CLI per creare un pool di nodi gestiti che utilizza un'assegnazione capacità per eseguire il provisioning dei nodi gestiti, includere la coppia chiave/valore capacityReservationId
nel parametro --placement-configs
.
Ad esempio:
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 \
Se è stata creata un'assegnazione capacità predefinita per il dominio di disponibilità in cui si sta creando il pool di nodi, l'assegnazione capacità viene utilizzata per impostazione predefinita. Se non si desidera utilizzare l'assegnazione capacità predefinita o qualsiasi altra assegnazione capacità, impostare il valore del tasto capacityReservationId
in modo che sia una stringa vuota racchiusa tra virgolette doppie, ovvero \"capacityReservationId\":\""
.
Se si specificano più domini di disponibilità nella configurazione di posizionamento di un pool di nodi, è possibile specificare un'assegnazione capacità diversa per ogni dominio di disponibilità.
Uso dell'API
Per informazioni sull'uso dell'API e delle richieste di firma, consulta la documentazione dell'API REST e le credenziali di sicurezza. Per informazioni sugli SDK, vedere SDK e l'interfaccia CLI.
Utilizzare l'attributo placementConfigs
dell'oggetto nodeConfigDetails
per specificare le assegnazioni capacità durante la creazione o l'aggiornamento dei pool di nodi gestiti.
Se è stata creata un'assegnazione capacità predefinita per il dominio di disponibilità in cui si sta creando il pool di nodi gestiti, l'assegnazione capacità viene utilizzata per impostazione predefinita. Se non si desidera utilizzare l'assegnazione capacità predefinita o qualsiasi altra assegnazione capacità, impostare il valore del campo capacityReservationId
in modo che sia una stringa vuota racchiusa tra virgolette doppie, ovvero "capacityReservationId":""
.
Se si specificano più domini di disponibilità nella configurazione di posizionamento di un pool di nodi, è possibile specificare un'assegnazione capacità diversa per ogni dominio di disponibilità.