Disco permanente regionale e Disponibilità elevata con Hyperdisk Balanced sono opzioni di archiviazione che ti consentono di implementare servizi ad alta disponibilità in Compute Engine. A livello di regione Persistent Disk e Hyperdisk ad alta disponibilità replicano in modo sincrono i dati tra due zone nella stessa regione e garantire l'alta disponibilità per i dati del disco per un massimo di un errore a livello di zona. Il disco replicato in modo sincrono può essere un disco di avvio su un disco non di avvio.
Questo documento spiega come eseguire le seguenti attività per i dischi replicati:
- Crea dischi replicati.
- Collega un disco replicato alla tua VM.
- Cambia un disco di zona con un disco replicato.
- Crea una nuova VM con dischi replicati.
- Utilizza un disco replicato come disco di avvio per una nuova VM.
- Collega un disco di avvio replicato a una VM.
- Elenca e descrivi i tuoi dischi replicati.
- Ridimensiona un disco replicato.
Prima di iniziare
- Esamina le differenze tra diversi tipi di opzioni di archiviazione su disco.
- Rivedi le informazioni di base replica sincrona del disco.
- Informazioni Failover del disco replicato.
-
Se non l'hai già fatto, configura l'autenticazione.
Autenticazione è
Il processo di verifica dell'identità per l'accesso ai servizi e alle API di Google Cloud.
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi eseguire l'autenticazione
Compute Engine come segue.
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
-
Amministratore istanze Compute (v1) (
roles/compute.instanceAdmin.v1
) -
Per connetterti a una VM che possa essere eseguita come account di servizio:
Utente account di servizio (v1) (
roles/iam.serviceAccountUser
) -
compute.disks.create
-
compute.instances.attachDisk
-
compute.disks.use
-
Crea uno snapshot di un disco:
compute.disks.createSnapshot
-
Visualizza i dettagli di un disco:
compute.disks.get
-
Ottieni un elenco di dischi:
compute.disks.list
-
Modifica le dimensioni di un disco:
compute.disks.update
- È possibile collegare un disco permanente regionale solo alle macchine virtuali che utilizzano come machine family E2, N1, N2 e N2D.
- Puoi collegare l'alta disponibilità Hyperdisk Balanced solo ai supporti tipi di macchine.
- Non puoi creare un Persistent Disk regionale da un'immagine o da un disco creato un'immagine.
- Quando utilizzi la modalità di sola lettura, puoi collegare un Persistent Disk bilanciato a livello di regione a un massimo di 10 di istanze VM di Compute Engine.
- La dimensione minima di un Persistent Disk standard a livello di regione è 200 GiB.
- Puoi solo aumentare la dimensione di un disco Persistent Disk o volume Hyperdisk Bilanciato ad alta disponibilità; non puoi ridurne le dimensioni.
- I volumi di disco permanente regionale e iperdisco bilanciato ad alta disponibilità hanno prestazioni diverse rispetto ai dischi di zona corrispondenti. Per ulteriori informazioni, vedi Blocca le prestazioni dello spazio di archiviazione.
- Se crei un disco replicato clonando un disco a livello di zona, le due repliche non sono completamente sincronizzati al momento della creazione. Dopo la creazione, puoi utilizzare il disco regionale clone entro 3 minuti, in media. Tuttavia, potresti dover attendere decine di minuti prima che il disco raggiunga uno stato completamente replicato Il Recovery Point Objective (RPO) è vicino allo zero. Scopri come verifica che il disco replicato sia completamente replicato.
- Crea una nuova VM con un disco di avvio replicato.
- Crea un disco di avvio replicato e poi collegalo a una VM:
- Crea un disco replicato da uno snapshot di un disco di avvio.
- Collega un disco di avvio replicato a una VM.
Nella console Google Cloud, vai alla pagina Dischi.
Seleziona il progetto richiesto.
Fai clic su Crea disco.
Specifica un nome per il disco.
In Località, scegli A livello di regione.
Seleziona la regione e la zona. Devi selezionare la stessa regione quando crei la VM.
Seleziona la Zona di replica nella stessa regione. Prendi nota delle zone selezionate perché devi collegare il disco alla VM in una di quelle zone.
Seleziona il Tipo di origine del disco.
Seleziona il Tipo di disco e le Dimensioni.
Fai clic su Crea per completare la creazione del disco.
DISK_NAME
: il nome del nuovo discoDISK_SIZE
: la dimensione, in GiB, del nuovo discoDISK_TYPE
: Per le regioni Persistent Disk, questo è il tipo sul disco replicato. Il valore predefinito èpd-standard
. Per Hyperdisk, specifica il valorehyperdisk-balanced-high-availability
.REGION
: la regione del disco replicato in cui risiedere, ad esempio:europe-west1
ZONE1
,ZONE2
: il valore zone all'interno della regione in cui si trovano le due repliche del disco, ad esempio:europe-west1-b,europe-west1-c
PROJECT_ID
: il tuo ID progettoREGION
: la regione del disco replicato in cui risiedere, ad esempio:europe-west1
DISK_NAME
: il nome del nuovo discoZONE1
,ZONE2
: il valore zone in cui devono trovarsi le repliche del nuovo discoDISK_SIZE
: la dimensione, in GiB, del nuovo discoDISK_TYPE
: Per le regioni Persistent Disk, questo è il tipo Persistent Disk. Per Hyperdisk, specifica il valorehyperdisk-balanced-high-availability
.Per collegare un disco a una VM, vai alla pagina Istanze VM.
Nella colonna Nome, fai clic sul nome della VM.
Fai clic su Modifica
.Fai clic su +Collega disco esistente.
Scegli il disco replicato creato in precedenza da aggiungere alla tua VM.
Se viene visualizzato un avviso che indica che il disco selezionato è già collegato a un'altra istanza, seleziona la casella Forza il collegamento del disco per eseguire il collegamento forzato del disco alla VM che stai modificando.
Rivedi i casi d'uso per il collegamento forzato dei dischi replicati su Failover del disco replicato.
Fai clic su Salva.
Nella pagina Modifica VM, fai clic su Salva.
VM_NAME
: il nome della VM a cui aggiungi il disco replicatoDISK_NAME
: il nome del nuovo disco che stai collegando alla VMPROJECT_ID
: il tuo ID progettoZONE
: la località della VMVM_NAME
: il nome della VM a cui aggiungi il nuovo disco replicatoREGION
: la regione in cui il disco replicato si trovaDISK_NAME
: il nome del disco replicato- PRIMARY_INSTANCE_NAME: un nome per la VM
- ZONE: il nome della zona in cui vuoi creare la VM
- REPLICATED_DISK_NAME: un nome per il disco replicato
- DISK_TYPE: tipo di disco da creare, ad esempio,
hyperdisk-balanced-high-availability
(anteprima) opd-balanced
- SNAPSHOT_NAME: il nome dello snapshot per cui hai creato il disco di avvio
- REMOTE_ZONE: la zona alternativa per il disco replicato
PROJECT_ID
: il tuo ID progettoZONE
: il nome della zona in cui vuoi crea la VMVM_NAME
: un nome per la VMBOOT_SNAPSHOT_NAME
: il nome del disco di avvio istantaneaREMOTE_ZONE
: la zona remota per l'elemento replicato discoDISK_TYPE
: il tipo di disco da creare, per esempio,hyperdisk-balanced-high-availability
(anteprima) opd-balanced
- Sostituisci il disco di avvio di una VM esistente con un disco di avvio replicato.
- Esegui il failover di un disco di avvio replicato in una VM hot standby in esecuzione zona di backup. Per farlo, devi collegare il disco replicato alla VM come disco di avvio.
- Arresta la VM.
gcloud compute instances stop VM_NAME --zone=ZONE
- Scollega il disco di avvio attuale dalla VM.
gcloud compute instances detach-disk VM_NAME \ --zone=ZONE --disk=CURRENT_BOOT_DEVICE_NAME
- Collega il disco di avvio replicato alla VM.
gcloud compute instances attach-disk VM_NAME \ --zone=ZONE \ --disk=REPLICATED_DISK_NAME \ --disk-scope=regional --force-attach
Riavvia la VM.
gcloud compute instances start VM_NAME
VM_NAME
: il nome della VM a cui vuoi collegare il disco di avvio replicatoZONE
: la zona in cui si trova la VMCURRENT_BOOT_DEVICE_NAME
: nome dell'avvio disco utilizzato dalla VM. Di solito corrisponde al nome del la VM.REPLICATED_DISK_NAME
: il nome della replica che vuoi collegare alla VM come disco di avvioArresta la VM.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/stop
Scollega il disco di avvio attuale dalla VM.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/detachDisk?deviceName=CURRENT_BOOT_DEVICE_NAME
Collega il disco di avvio replicato alla VM.
Crea una richiesta
POST
per il metodocompute.instances.attachDisk
, e includi l'URL del disco di avvio replicato:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/attachDisk { "source": "compute/v1/projects/PROJECT_ID/regions/REGION/disks/REPLICATED_DISK_NAME", "boot": true }
Riavvia la VM.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/start
PROJECT_ID
: il tuo ID progettoVM_NAME
: il nome della VM a cui vuoi collegare il disco replicatoZONE
: la zona in cui si trova la VMCURRENT_BOOT_DEVICE_NAME
: nome dell'avvio disco utilizzato dalla VM. Di solito è uguale al nome della VM.REGION
: la regione in cui è stato replicato il disco si trovaREPLICATED_DISK_NAME
: il nome della replica che vuoi collegare alla VM come disco di avvio- ID disco
- Nome disco
- Dimensioni
- Tipo di disco
- Regione
- Repliche di zona
- Per visualizzare i dettagli di tutti i dischi replicati in
per una regione e un progetto specifici:
- Crea una richiesta
GET
Metodocompute.regionDisks.list
. - Usa il comando
gcloud compute disks list
e filtrare i risultati per regione.
- Crea una richiesta
- Per visualizzare i dettagli di un disco replicato specifico:
- Esegui il comando
gcloud compute disks describe
con il flag--region
e specifica il nome del disco e i relativi regione. - Crea una richiesta
GET
Metodocompute.regionDisks.get
.
- Esegui il comando
- Disco permanente a livello di regione: aumenta le dimensioni di un disco permanente
- Disponibilità elevata Hyperdisk Bilanciata: modificare un volume Hyperdisk
- Scopri di più sui prezzi dei dischi.
- Scopri come monitorare gli stati di replica dei dischi replicati.
- Scopri come determinare lo stato di replica di un disco replicato.
- Vedi Condividere volumi di dischi permanenti tra le VM in alternativa ai dischi permanenti regionali per i dati di sola lettura.
- Crea uno snapshot di un disco.
- Scopri di più sui gruppi di istanze per di istanze VM di Compute Engine.
- Scopri come creare applicazioni web scalabili e resilienti su Google Cloud.
- Consulta la guida alla pianificazione del ripristino di emergenza di Google Cloud.
Terraform
Per utilizzare gli esempi di Terraform in questa pagina in un ambiente dell'ambiente di sviluppo, installare e inizializzare gcloud CLI quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.
Per ulteriori informazioni, consulta Set up authentication for a local development environment.
REST
Per utilizzare gli esempi dell'API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali fornite a gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Per ulteriori informazioni, vedi Esegui l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.
Ruoli e autorizzazioni richiesti
Per ottenere le autorizzazioni necessarie per creare un disco replicato in modo sincrono, chiedi all'amministratore di concederti seguenti ruoli IAM sul progetto:
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
Questi ruoli predefiniti le autorizzazioni necessarie per creare un disco replicato in modo sincrono. Per vedere le autorizzazioni esatte obbligatorie, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per creare un disco replicato in modo sincrono sono necessarie le seguenti autorizzazioni:
Potresti anche riuscire a ottenere queste autorizzazioni con ruoli personalizzati altri ruoli predefiniti.
Limitazioni
Informazioni sull'utilizzo di un disco replicato come disco di avvio per una VM
Puoi allegare un Persistent Disk regionale o Hyperdisk Balanced High-availability (Anteprima) come disco di avvio per per carichi di lavoro stateful di cui viene eseguito il provisioning in anticipo carico di lavoro di produzione. I dischi di avvio replicati non sono destinati a hot standby, perché i dischi di avvio replicati non possono essere collegati contemporaneamente a due VM.
Puoi creare solo volumi Persistent Disk regionali o Hyperdisk Bilanciato ad alta disponibilità da snapshot; non è possibile creare un disco replicato da un'immagine.
Per utilizzare un disco replicato come disco di avvio delle VM, usa uno dei seguenti dischi metodo:
Se devi eseguire il failover di un disco di avvio replicato su una VM in standby in esecuzione replica una zona di replica, segui i passaggi descritti in Collega un disco di avvio replicato a una VM.
Crea un disco replicato in modo sincrono
Crea un Persistent Disk regionale o Hyperdisk Balanced High-availability (anteprima). Il disco deve trovarsi nella stessa regione della VM a cui prevedi di collegarla.
Per Persistent Disk a livello di regione, se crei un disco nella console Google Cloud, il tipo di disco predefinito èpd-balanced
. Se crei un disco utilizzando gcloud CLI REST, il tipo di disco predefinito èpd-standard
.Console
gcloud
Crea un disco replicato in modo sincrono utilizzando il metodo Comando
compute disks create
.Se hai bisogno di un disco permanente SSD a livello di regione o il numero di IOPS, includi il flag
--type
e specificapd-ssd
.gcloud compute disks create DISK_NAME \ --size=DISK_SIZE \ --type=DISK_TYPE \ --region=REGION \ --replica-zones=ZONE1,ZONE2
Sostituisci quanto segue:
Terraform
Per creare un Persistent Disk regionale o Hyperdisk Bilanciato ad alta disponibilità, puoi utilizzare
google_compute_region_disk
risorsa.REST
Per creare un Persistent Disk regionale o Hyperdisk Balanced High Speed, creare una richiesta
POST
metodocompute.regionDisks.insert
.Per creare un disco vuoto, non specificare un'origine snapshot.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/disks { "name": "DISK_NAME", "region": "projects/PROJECT_ID/regions/REGION", "replicaZones": [ "projects/PROJECT_ID/zones/ZONE1", "projects/PROJECT_ID/zones/ZONE2" ], "sizeGb": "DISK_SIZE", "type": "projects/PROJECT_ID/regions/REGION/diskTypes/DISK_TYPE" }
Sostituisci quanto segue:
Collega un disco replicato alla tua VM
Per i dischi che non sono dischi di avvio, dopo aver creato un Persistent Disk regionale o Hyperdisk Balanced High-availability (anteprima), puoi allegarlo in una VM. La VM deve trovarsi nella stessa regione del disco.
Per collegare un disco di avvio replicato a una VM, consulta Collega un disco di avvio replicato a una VM.
Console
gcloud
Per collegare un disco replicato a una VM in esecuzione o arrestata, utilizza Comando
compute instances attach-disk
con il flag--disk-scope
impostato suregional
.gcloud compute instances attach-disk VM_NAME \ --disk=DISK_NAME \ --disk-scope=regional
Sostituisci quanto segue:
Terraform
Per allegare un un volume Persistent Disk o Hyperdisk Bilanciato ad alta disponibilità regionale su una VM, puoi utilizzare
google_compute_attached_disk
risorsa.REST
Per collegare un disco replicato a una VM in esecuzione o arrestata, creare una richiesta
POST
Metodocompute.instances.attachDisk
e includi l'URL del disco replicato che hai creato.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/attachDisk { "source": "/projects/PROJECT_ID/regions/REGION/disks/DISK_NAME" }
Sostituisci quanto segue:
Per i dischi non di avvio, dopo aver creato e collegato un disco replicato vuoto a un VM, devi formattare e montare il disco, in modo che il sistema operativo possa utilizzare lo spazio di archiviazione disponibile.
Cambia un disco di zona in un disco replicato
Per convertire un Persistent Disk di zona esistente in un disco permanente a livello di regione, crea un nuovo disco clonando un disco di zona esistente. Per ulteriori informazioni, vedi Creazione di un clone di un disco a livello di regione da un disco di zona.Per convertire un Hyperdisk in un disco replicato in modo sincrono, crea un nuovo disco Hyperdisk Bilanciato ad alta disponibilità da uno snapshot del disco esistente, come descritto in Cambia il tipo di disco.
Crea una nuova VM con dischi replicati
Quando crei una VM, puoi includere facoltativamente Persistent Disk regionale o Volumi a disponibilità elevata bilanciata Hyperdisk (anteprima) come volumi aggiuntivi i dischi permanenti.
Per creare e allegare un Persistent Disk regionale o Volume ad alta disponibilità bilanciato Hyperdisk su una VM durante la creazione della VM, consulta uno dei seguenti articoli:
Crea una nuova VM con un disco di avvio replicato
Quando configuri un'istanza VM ad alta disponibilità, puoi creare la VM principale con un disco di avvio replicato. Se si verifica un'interruzione a livello di zona, puoi riavviare una VM nella zona secondaria, anziché crearne una nuova.
In una configurazione ad alta disponibilità, in cui il dispositivo di avvio è un disco replicato, Google consiglia di non creare preventivamente e non avviare l'istanza in standby. In fase di failover, collega il disco replicato esistente quando per creare l'istanza in standby utilizzando l'opzione
forceAttach
.Per creare una VM con un disco di avvio che sia un disco replicato, utilizza una delle due seguenti metodi:
gcloud
Usa il comando
gcloud compute instances create
per creare una VM e il flag--create-disk
per specificare il disco replicato.gcloud compute instances create PRIMARY_INSTANCE_NAME \ --zone=ZONE \ --create-disk=^:^name=REPLICATED_DISK_NAME:scope=regional:boot=true:type=DISK_TYPE:source-snapshot=SNAPSHOT_NAME:replica-zones=ZONE,REMOTE_ZONE
Quando si specificano i parametri del disco, i caratteri
^:^
specificano che il carattere di separazione tra i parametri sia i due punti (:
). Questo consente di utilizzare una virgola (,
) quando specifichi il parametro replica-zones.Sostituisci quanto segue:
REST
Crea una richiesta
POST
per il metodoinstances.insert
e specificare le proprietàboot: 'true'
ereplicaZones
. Ad esempio:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { "name": "VM_NAME", "disks": [{ "boot": true, "initializeParams": { "sourceSnapshot": "global/snapshots/BOOT_SNAPSHOT_NAME", "replicaZones": [ "projects/PROJECT_ID/zones/ZONE", "projects/PROJECT_ID/zones/REMOTE_ZONE" ], "diskType": "projects/PROJECT_ID/zones/ZONE/diskTypes/DISK_TYPE" } }], "networkInterfaces": [ { "network": "global/networks/default" } ] }
Sostituisci quanto segue:
Collega un disco di avvio replicato a una VM
Per:
Questi passaggi presuppongono che il disco e la VM replicati esistano già.
gcloud
Sostituisci le variabili nei comandi precedenti con quanto segue:
(Facoltativo) Se non riesci a scollegare il disco di avvio replicato dalla VM principale a causa di un'interruzione o un errore, includi segnala
--force-attach
.REST
Sostituisci le variabili nei comandi precedenti con quanto segue:
(Facoltativo) Se non riesci a scollegare il disco di avvio replicato dalla VM alla quale era stato inizialmente collegato a causa di un'interruzione del servizio errore, includi
"forceAttach": true
nel corpo della richiesta.Elenca e descrivi i tuoi dischi replicati
Puoi visualizzare un elenco di tutti i dischi replicati configurati e informazioni sulle loro proprietà, tra cui:
Per visualizzare informazioni dettagliate sui dischi replicati, utilizza le seguenti:
Ridimensiona un disco replicato
Se le VM con dischi replicati in modo sincrono richiedono spazio di archiviazione aggiuntivo spazio vuoto, puoi ridimensionare i dischi. Puoi ridimensionare i dischi in qualsiasi momento, indipendentemente dal fatto che il disco sia collegato a una VM in esecuzione. Se devi separare i dati in volumi unici, creando più dischi secondari per la VM. Per Disponibilità elevata bilanciata Hyperdisk puoi anche aumentare i limiti di IOPS e velocità effettiva per il disco.
Il comando per ridimensionare un disco replicato è molto simile a quello per il ridimensionamento di un disco non replicato. Tuttavia, devi specificare una regione anziché una zona per la posizione del disco.
Puoi solo aumentare, e non diminuire, la dimensione di un disco. Per ridurre il devi crearne uno nuovo di dimensioni inferiori. Finché non elimini disco originale più grande, vengono addebitati entrambi i dischi.
Per istruzioni su come modificare un disco replicato, consulta quanto segue:
Passaggi successivi
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2024-10-14 UTC.
-