Panoramica della modalità single-tenancy


Questo documento descrive i nodi single-tenant. Per informazioni su come eseguire il provisioning delle VM sui nodi single-tenant, consulta Provisioning delle VM su nodi single-tenant.

La single-tenancy ti consente di avere accesso esclusivo a un nodo single-tenant, ovvero un server fisico Compute Engine dedicato all'hosting delle VM solo per il tuo progetto. Utilizza i nodi single-tenant per mantenere le tue VM fisicamente separate dalle VM in altri progetti o per raggruppare le VM sullo stesso hardware host, come mostrato nel diagramma seguente. Puoi anche creare un gruppo di nodi single-tenant e specificare se vuoi condividerlo con altri progetti o con l'intera organizzazione.

Un host multi-tenant e un nodo single-tenant.
Figura 1: confronto tra un host multi-tenant e un nodo single-tenant.

Le VM in esecuzione su nodi single-tenant possono utilizzare le stesse funzionalità di Compute Engine delle altre VM, incluse pianificazione trasparente e archiviazione a blocchi, ma con un ulteriore livello di isolamento hardware. Per darti il controllo completo sulle VM sul server fisico, ogni nodo single-tenant mantiene una mappatura one-to-one sul server fisico che supporta il nodo.

All'interno di un nodo single-tenant, puoi eseguire il provisioning di più VM su tipi di macchine di varie dimensioni, in modo da utilizzare in modo efficiente le risorse sottostanti dell'hardware host dedicato. Inoltre, se scegli di non condividere l'hardware host con altri progetti, puoi soddisfare i requisiti di sicurezza o conformità con i carichi di lavoro che richiedono l'isolamento fisico da altri carichi di lavoro o VM. Se il carico di lavoro richiede la single-tenancy solo temporaneamente, puoi modificare la tenancy delle VM in base alle esigenze.

I nodi single-tenant possono aiutarti a soddisfare requisiti hardware dedicati per scenari Bring Your Own License (BYOL) che richiedono licenze per core o per processore. Quando utilizzi nodi single-tenant, hai una certa visibilità sull'hardware sottostante, che ti consente di tenere traccia dell'utilizzo di core e processori. Per tenere traccia di questo utilizzo, Compute Engine segnala l'ID del server fisico su cui è pianificata una VM. Quindi, utilizzando Cloud Logging, puoi visualizzare l'utilizzo storico del server di una VM. Per ottimizzare l'uso dell'hardware host, puoi overcommit dell'overcommit delle CPU delle VM single-tenant, condividere gruppi di nodi single-tenant e condividere manualmente le VM con migrazione live.

Tramite un criterio di manutenzione dell'host configurabile, puoi controllare il comportamento delle VM single-tenant durante la manutenzione dell'host. Puoi specificare quando viene eseguita la manutenzione e se le VM mantengono l'affinità con un server fisico specifico o vengono spostate in altri nodi single-tenant all'interno di un gruppo di nodi.

Considerazioni sul carico di lavoro

I seguenti tipi di carichi di lavoro potrebbero trarre vantaggio dall'utilizzo di nodi single-tenant:

  • Carichi di lavoro per videogiochi con requisiti di prestazioni.

  • Carichi di lavoro finanziari o sanitari con requisiti di sicurezza e conformità.

  • Carichi di lavoro Windows con requisiti di licenza.

  • Carichi di lavoro di machine learning, elaborazione dei dati o rendering delle immagini. Per questi carichi di lavoro, valuta la possibilità di prenotare le GPU.

  • Carichi di lavoro che richiedono un maggior numero di operazioni di I/O al secondo (IOPS) e una minore latenza o carichi di lavoro che utilizzano archiviazione temporanea sotto forma di cache, spazio di elaborazione o dati di scarso valore. Per questi carichi di lavoro, valuta la possibilità di prenotare SSD locali.

Modelli di nodo

Un modello di nodo è una risorsa di regione che definisce le proprietà di ciascun nodo in un gruppo di nodi. Quando crei un gruppo di nodi da un modello di nodo, le proprietà di quest'ultimo non vengono copiate in ciascun nodo nel gruppo.

Quando crei un modello di nodo, specifica un tipo di nodo e, facoltativamente, specifica le etichette di affinità nodo. Puoi specificare etichette di affinità nodo solo su un modello di nodo; non puoi specificare etichette di affinità nodo su un gruppo di nodi.

Tipi di nodo

Quando configuri un modello di nodo, specifica un tipo di nodo da applicare a tutti i nodi all'interno di un gruppo di nodi creato in base al modello di nodo. Il tipo di nodo single-tenant, a cui fa riferimento il modello di nodo, specifica la quantità totale di core vCPU e la memoria per i nodi creati nei gruppi di nodi che utilizzano il modello. Ad esempio, il tipo di nodo n2-node-80-640 ha 80 vCPU e 640 GB di memoria.

Le VM aggiunte a un nodo single-tenant devono avere lo stesso tipo di macchina del tipo di nodo specificato nel modello di nodo. Ad esempio, i tipi di nodi single-tenant n2 sono compatibili solo con le VM create con il tipo di macchina n2. Puoi aggiungere VM a un nodo single-tenant finché la quantità totale di vCPU o memoria supera la capacità del nodo.

Quando crei un gruppo di nodi utilizzando un modello di nodo, ogni nodo nel gruppo di nodi eredita le specifiche del tipo di nodo del modello di nodo. Un tipo di nodo si applica a ogni singolo nodo all'interno di un gruppo di nodi, non a tutti i nodi del gruppo in modo uniforme. Quindi, se crei un gruppo di nodi con due nodi del tipo n2-node-80-640, a ogni nodo sono allocati 80 vCPU e 640 GB di memoria.

A seconda dei requisiti del carico di lavoro, potresti riempire il nodo con più VM più piccole in esecuzione su tipi di macchine di varie dimensioni, tra cui tipi di macchine predefinite, tipi di macchine personalizzate e tipi di macchine con memoria estesa. Se un nodo è pieno, non puoi pianificare VM aggiuntive su quel nodo.

La tabella seguente mostra i tipi di nodi disponibili. Per visualizzare un elenco dei tipi di nodi disponibili per il progetto, esegui il comando gcloud compute sole-tenancy node-types list o la richiesta REST nodeTypes.list. Per informazioni sui prezzi di questi tipi di nodi, consulta i prezzi dei nodi single-tenant.

Tipo di nodo Processore vCPU GB vCPU:GB Socket Core:Socket Core totali
h3-node-88-352 Sapphire Rapids 88 352 1:4 2 44 88
c3d-node-360-708 AMD EPYC Genova 360 708 1:2 2 84 168
c3d-node-360-1440 AMD EPYC Genova 360 1440 1:4 2 84 168
c3d-node-360-2880 AMD EPYC Genova 360 2880 1:8 2 84 168
c3-node-176-352 Sapphire Rapids 176 352 1:2 2 48 96
c3-node-176-704 Sapphire Rapids 176 704 1:4 2 48 96
c3-node-176-1408 Sapphire Rapids 176 1408 1:8 2 48 96
c2-node-60-240 Lago Cascade 60 240 1:4 2 18 36
g2-node-96-384 Lago Cascade 96 384 1:4 2 28 56
g2-node-96-432 Lago Cascade 96 432 1:4.5 2 28 56
m1-node-96-1433 Skylake 96 1433 1:14.9 2 28 56
m1-node-160-3844 Broadwell E7 160 3844 1:24 4 22 88
m2-node-416-11776 Lago Cascade 416 11776 1:28,3 8 28 224
m3-node-128-1952 Lago di ghiaccio 128 1952 1:15.25 2 36 72
m3-node-128-3904 Lago di ghiaccio 128 3904 1:30.5 2 36 72
n1-node-96-624 Skylake 96 624 1:6.5 2 28 56
n2-node-80-640 Lago Cascade 80 640 1:8 2 24 48
n2-node-128-864 Lago di ghiaccio 128 864 1:6,75 2 36 72
n2d-node-224-896 AMD EPYC Roma 224 896 1:4 2 64 128
n2d-node-224-1792 AMD EPYC Milan 224 1792 1:8 2 64 128

Tutti i nodi ti consentono di pianificare VM di forme diverse. Il tipo di nodo n sono nodi per uso generico su cui puoi pianificare VM di tipo di macchina personalizzata. Per suggerimenti sul tipo di nodo da scegliere, consulta Suggerimenti per i tipi di macchina. Per informazioni sulle prestazioni, consulta Piattaforme CPU.

Gruppi di nodi e provisioning delle VM

I modelli di nodo single-tenant definiscono le proprietà di un gruppo di nodi; è necessario creare un modello di nodo prima di creare un gruppo di nodi in una zona Google Cloud. Quando crei un gruppo, specifica il criterio di manutenzione dell'host per le VM nel gruppo di nodi, il numero di nodi per il gruppo e se condividerlo con altri progetti o con l'intera organizzazione.

Un gruppo di nodi può avere zero o più nodi. Ad esempio, puoi ridurre a zero il numero di nodi in un gruppo di nodi quando non devi eseguire VM sui nodi del gruppo oppure puoi abilitare il gestore della scalabilità automatica dei gruppi di nodi per gestire automaticamente le dimensioni del gruppo di nodi.

Prima di eseguire il provisioning delle VM su nodi single-tenant, devi creare un gruppo di nodi single-tenant. Un gruppo di nodi è un insieme omogeneo di nodi single-tenant in una zona specifica. I gruppi di nodi possono contenere più VM in esecuzione su tipi di macchina di varie dimensioni, purché il tipo di macchina abbia due o più vCPU.

Quando crei un gruppo di nodi, abilita la scalabilità automatica in modo che le dimensioni del gruppo si adattino automaticamente ai requisiti del carico di lavoro. Se i requisiti del carico di lavoro sono statici, puoi specificare manualmente la dimensione del gruppo di nodi.

Dopo aver creato un gruppo di nodi, puoi eseguire il provisioning delle VM sul gruppo o su un nodo specifico all'interno del gruppo. Per un ulteriore controllo, usa le etichette di affinità nodo per pianificare le VM su qualsiasi nodo con etichette di affinità corrispondenti.

Dopo aver eseguito il provisioning delle VM su gruppi di nodi e facoltativamente assegnato le etichette di affinità per eseguire il provisioning delle VM su nodi o nodi specifici, valuta la possibilità di etichettare le risorse per gestire più facilmente le VM. Le etichette sono coppie chiave-valore che possono aiutarti a classificare le VM in modo da poterle visualizzare in forma aggregata per motivi come la fatturazione. Ad esempio, puoi utilizzare le etichette per contrassegnare il ruolo di una VM, la sua tenancy, il tipo di licenza o la sua posizione.

Criterio di manutenzione dell'host

A seconda degli scenari di licenza e dei carichi di lavoro, potrebbe essere opportuno limitare il numero di core fisici utilizzati dalle VM. Il criterio di manutenzione dell'host che scegli potrebbe dipendere, ad esempio, dai requisiti di licenza o di conformità oppure dalla scelta di un criterio che consenta di limitare l'utilizzo dei server fisici. Con tutti questi criteri, le VM rimangono su hardware dedicato.

Quando pianifichi le VM su nodi single-tenant, puoi scegliere tra i tre diversi criteri di manutenzione dell'host riportati di seguito, che ti consentono di determinare come e se Compute Engine esegui la migrazione live delle VM durante gli eventi host, che si verificano ogni 4-6 settimane circa. Durante la manutenzione, Compute Engine live esegue la migrazione in gruppo di tutte le VM sull'host in un nodo single-tenant. Tuttavia, in alcuni casi Compute Engine potrebbe suddividere le VM in gruppi più piccoli ed eseguire la migrazione live di ogni gruppo più piccolo di VM in nodi single-tenant.

Criterio di manutenzione dell'host predefinito

Questo è il criterio di manutenzione dell'host predefinito e le VM sui gruppi di nodi configurati con questo criterio seguono il comportamento di manutenzione tradizionale per le VM non single-tenant. Ciò significa che, a seconda dell'impostazione di manutenzione sull'host dell'host della VM, le VM eseguino la migrazione live su un nuovo nodo single-tenant nel gruppo di nodi prima di un evento di manutenzione dell'host e questo nuovo nodo single-tenant esegue solo le VM del cliente.

Questo criterio è più adatto alle licenze per utente o per dispositivo che richiedono la migrazione live durante gli eventi dell'host. Questa impostazione non limita la migrazione delle VM a un pool fisso di server fisici ed è consigliata per carichi di lavoro generali senza requisiti dei server fisici e che non richiedono licenze esistenti.

Poiché le VM eseguono la migrazione live su qualsiasi server senza considerare l'affinità dei server esistente con questo criterio, questo non è adatto per gli scenari che richiedono di ridurre al minimo l'uso dei core fisici durante gli eventi dell'host.

La figura seguente mostra un'animazione del criterio di manutenzione dell'host Predefinito.

Animazione del criterio di manutenzione dell'host predefinito.
Figura 2: animazione del criterio di manutenzione dell'host Predefinito.

Criterio di manutenzione dell'host di riavvio in loco

Quando utilizzi questo criterio di manutenzione dell'host, Compute Engine arresta le VM durante gli eventi dell'host, quindi riavvia le VM sullo stesso server fisico dopo l'evento dell'host. Quando utilizzi questo criterio, devi configurare l'impostazione di manutenzione dell'host della VM su TERMINATE.

Questo criterio è più adatto per i carichi di lavoro a tolleranza di errore e può riscontrare circa un'ora di tempo di inattività durante gli eventi host, carichi di lavoro che devono rimanere sullo stesso server fisico, carichi di lavoro che non richiedono la migrazione live oppure se disponi di licenze basate sul numero di core o processori fisici.

Con questo criterio, l'istanza può essere assegnata al gruppo di nodi utilizzando node-name, node-group-name o l'etichetta di affinità nodo.

La figura seguente mostra un'animazione del criterio di manutenzione Riavvio in loco.

Animazione del criterio di manutenzione dell'host di riavvio in loco
Figura 3: animazione del criterio di manutenzione dell'host Riavvio in loco.

Esegui la migrazione all'interno del criterio di manutenzione dell'host del gruppo di nodi

Quando utilizzi questo criterio di manutenzione dell'host, Compute Engine live esegue la migrazione delle VM all'interno di un gruppo di server fisici di dimensioni fisse durante gli eventi dell'host, il che consente di limitare il numero di server fisici univoci utilizzati dalla VM.

Questo criterio è più adatto per carichi di lavoro ad alta disponibilità con licenze basate sul numero di core o processori fisici, perché con questo criterio di manutenzione dell'host, ogni nodo single-tenant nel gruppo è bloccato su un insieme fisso di server fisici, che è diverso dal criterio predefinito che consente la migrazione delle VM su qualsiasi server.

Per garantire la capacità per la migrazione live, Compute Engine prenota 1 nodo di isolamento ogni 20 nodi prenotati. La tabella seguente mostra il numero di nodi di isolamento riservati da Compute Engine in base al numero di nodi prenotati per il gruppo di nodi.

Nodi totali nel gruppo Nodi di holdback riservati per la migrazione live
1 Non applicabile. Devi prenotare almeno 2 nodi.
Da 2 a 20 1
Da 21 a 40 2
Da 41 a 60 3
Da 61 a 80 4
Da 81 a 100 5

Con questo criterio, ogni istanza deve avere come target un singolo gruppo di nodi utilizzando l'etichetta di affinità node-group-name e non può essere assegnata a un nodo specifico node-name. Questa operazione è necessaria per consentire a Compute Engine di eseguire la migrazione live delle VM nel nodo di isolamento in caso di evento host. Tieni presente che le VM possono utilizzare qualsiasi etichetta di affinità dei nodi personalizzata a condizione che venga loro assegnato node-group-name e non node-name.

La figura seguente mostra un'animazione del criterio di manutenzione dell'host Esegui la migrazione all'interno del gruppo di nodi.

Animazione della migrazione all'interno di un criterio di manutenzione dell'host di un gruppo di nodi.
Figura 4: animazione del criterio di manutenzione dell'host Esegui la migrazione all'interno del gruppo di nodi.

Periodi di manutenzione

Se gestisci carichi di lavoro, ad esempio database ottimizzati che potrebbero essere sensibili all'impatto sulle prestazioni della migrazione in tempo reale, puoi determinare quando inizia la manutenzione per un gruppo di nodi single-tenant specificando un periodo di manutenzione quando crei il gruppo di nodi. Non puoi modificare il periodo di manutenzione dopo aver creato il gruppo di nodi.

I periodi di manutenzione sono intervalli di 4 ore che puoi utilizzare per specificare quando Google esegue la manutenzione sulle VM single-tenant. Gli eventi di manutenzione si verificano circa una volta ogni 4-6 settimane.

Il periodo di manutenzione si applica a tutte le VM nel gruppo di nodi single-tenant e specifica solo quando inizia la manutenzione. Non è garantito che la manutenzione venga completata durante il periodo di manutenzione e non c'è alcuna garanzia sulla frequenza con cui viene eseguita la manutenzione. I periodi di manutenzione non sono supportati per i gruppi di nodi con il criterio di manutenzione dell'host Esegui la migrazione all'interno del gruppo di nodi.

Simula un evento di manutenzione dell'host

Puoi simulare un evento di manutenzione dell'host per verificare il comportamento dei carichi di lavoro in esecuzione sui nodi single-tenant durante un evento di manutenzione dell'host. In questo modo puoi vedere gli effetti del criterio di manutenzione dell'host della VM single-tenant sulle applicazioni in esecuzione sulle VM.

Errori relativi all'host

Quando si verifica un raro guasto hardware critico nell'host, single-tenant o multi-tenant, Compute Engine svolge le seguenti operazioni:

  1. Ritira il server fisico e il suo identificatore univoco.

  2. Revoca l'accesso del progetto al server fisico.

  3. Sostituisce l'hardware guasto con un nuovo server fisico dotato di un nuovo identificatore univoco.

  4. Sposta le VM dall'hardware in errore al nodo sostitutivo.

  5. Riavvia le VM interessate se le hai configurate per il riavvio automatico.

Affinità e anti-affinità dei nodi

I nodi single-tenant assicurano che le tue VM non condividano l'host con VM di altri progetti, a meno che non utilizzi gruppi di nodi single-tenant condivisi. Con i gruppi di nodi single-tenant condivisi, altri progetti all'interno dell'organizzazione possono eseguire il provisioning di VM sullo stesso host. Tuttavia, potresti comunque voler raggruppare diversi carichi di lavoro sullo stesso nodo single-tenant o isolare i carichi di lavoro l'uno dall'altro su nodi diversi. Ad esempio, per soddisfare alcuni requisiti di conformità, potresti dover utilizzare le etichette di affinità per separare i carichi di lavoro sensibili da quelli non sensibili.

Quando crei una VM, richiedi la modalità single-tenancy specificando l'affinità dei nodi o l'anti-affinità, facendo riferimento a una o più etichette di affinità nodo. Puoi specificare le etichette di affinità dei nodi personalizzate quando crei un modello di nodo e Compute Engine include automaticamente alcune etichette di affinità predefinite su ciascun nodo. Specificando l'affinità quando crei una VM, puoi pianificare le VM insieme su un nodo o nodi specifici in un gruppo di nodi. Quando specifichi l'anti-affinità quando crei una VM, puoi assicurarti che alcune VM non vengano pianificate insieme sullo stesso nodo o sugli stessi nodi in un gruppo di nodi.

Le etichette di affinità nodo sono coppie chiave-valore assegnate ai nodi e sono ereditate da un modello di nodo. Le etichette di affinità ti consentono di:

  • Controlla il modo in cui le singole istanze VM vengono assegnate ai nodi.
  • Controlla il modo in cui vengono assegnate ai nodi le istanze VM create da un modello, ad esempio quelle create da un gruppo di istanze gestite.
  • Raggruppa le istanze VM sensibili su nodi o gruppi di nodi specifici, separate dalle altre VM.

Etichette di affinità predefinite

Compute Engine assegna le seguenti etichette di affinità predefinite a ciascun nodo:

  • Un'etichetta per il nome del gruppo di nodi:
    • Chiave: compute.googleapis.com/node-group-name
    • Valore: nome del gruppo di nodi.
  • Un'etichetta per il nome del nodo:
    • Chiave: compute.googleapis.com/node-name
    • Valore: nome del singolo nodo.
  • Un'etichetta per i progetti con cui il gruppo di nodi è condiviso:
    • Chiave: compute.googleapis.com/projects
    • Valore: ID progetto del progetto contenente il gruppo di nodi.

Etichette di affinità personalizzata

Puoi creare etichette di affinità nodo personalizzate quando crei un modello di nodo. Queste etichette di affinità vengono assegnate a tutti i nodi nei gruppi di nodi creati dal modello di nodo. Non puoi aggiungere altre etichette di affinità personalizzata ai nodi in un gruppo di nodi dopo che il gruppo di nodi è stato creato.

Per informazioni su come utilizzare le etichette di affinità, consulta Configurazione dell'affinità dei nodi.

Prezzi

  • Per aiutarti a ridurre al minimo il costo dei nodi single-tenant, Compute Engine offre sconti per impegno di utilizzo e sconti per utilizzo sostenuto. Inoltre, poiché ti vengono già addebitate le vCPU e la memoria dei nodi single-tenant, non paghi alcun costo aggiuntivo per le VM sui nodi single-tenant.

  • Se esegui il provisioning di nodi single-tenant con GPU o SSD locali, ti verrà addebitato il costo di tutte le GPU o SSD locali su ciascun nodo di cui esegui il provisioning. Il premium single-tenancy non si applica a GPU o SSD locali.

Disponibilità

  • I nodi single-tenant sono disponibili in determinate zone. Per garantire l'alta disponibilità, pianifica le VM su nodi single-tenant in zone diverse.

  • Prima di utilizzare GPU o SSD locali su nodi single-tenant, assicurati di disporre di una quota GPU o SSD locale sufficiente nella zona in cui stai prenotando la risorsa.

  • Compute Engine supporta GPU su tipi di nodi single-tenant n1 e g2 che si trovano in zone con supporto GPU. La tabella seguente mostra i tipi di GPU che puoi collegare ai nodi n1 e g2 e il numero di GPU che devi collegare quando crei il modello di nodo.

    Tipo di GPU Quantità di GPU Tipo di nodo single-tenant
    NVIDIA L4 8 g2
    NVIDIA P100 4 n1
    NVIDIA P4 4 n1
    NVIDIA T4 4 n1
    NVIDIA V100 8 n1
  • Compute Engine supporta gli SSD locali sui tipi di nodi single-tenant n1, n2, n2d e g2 che si trovano in zone con supporto SSD locale.

Limitazioni

Passaggi successivi