Questa pagina descrive i problemi comuni che potresti riscontrare quando ridimensioni un disco permanente o quando il disco permanente è pieno e come risolvere ciascuno di essi.
Prima di iniziare
- Crea sempre uno snapshot del disco prima di eseguire qualsiasi passaggio di risoluzione dei problemi per assicurarti che i dati siano sottoposti a backup.
-
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione verifica la tua identità per l'accesso ad API e servizi Google Cloud . Per eseguire
codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su
Compute Engine selezionando una delle seguenti opzioni:
Seleziona la scheda relativa alla modalità di utilizzo degli esempi in questa pagina:
Console
Quando utilizzi la Google Cloud console per accedere a Google Cloud servizi e API, non devi configurare l'autenticazione.
gcloud
-
Installa Google Cloud CLI. Dopo l'installazione, inizializza Google Cloud CLI eseguendo il comando seguente:
gcloud initSe utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
-
- Imposta una regione e una zona predefinite.
REST
Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.
Installa Google Cloud CLI.
Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
Per saperne di più, consulta Autenticati per usare REST nella Google Cloud documentazione sull'autenticazione di.
Errore di limitazione della frequenza durante la modifica di un disco
Di seguito sono riportati gli errori comuni che potresti riscontrare quando tenti di modificare il tuo Persistent Disk Extreme o Google Cloud Hyperdisk. Questi errori potrebbero essere visualizzati in diversi punti, ad esempio nell'output della console seriale o nei log delle applicazioni.
Disk cannot be resized due to being rate limited.
Cannot update provisioned iops due to being rate limited.
Cannot update provisioned throughput due to being rate limited.
Esamina i seguenti limiti di tempo per la modifica dei dischi:
- Puoi ridimensionare un disco permanente con carico estremo o un volume Hyperdisk Throughput solo una volta in un periodo di 6 ore.
- Puoi ridimensionare un volume Hyperdisk Extreme solo una volta in un periodo di 4 ore.
- Puoi modificare le IOPS o il throughput di cui è stato eseguito il provisioning per un volume Hyperdisk solo una volta in un periodo di 4 ore.
Per risolvere questi errori, attendi il tempo necessario dall'ultima modifica prima di tentare di modificare di nuovo i dischi.
Errori di capacità del disco
Dischi pieni
Di seguito sono riportati gli errori comuni che potresti riscontrare quando il tuo disco permanente raggiunge la capacità massima. Questi errori potrebbero essere visualizzati in diversi punti, ad esempio nell'output della console seriale o nei log delle applicazioni.
No space left on device
Not enough storage is available to process this command
Per risolvere il problema, segui questi passaggi:
Crea uno snapshot del disco.
Elimina i file che non ti servono sul disco per liberare spazio.
Se il disco richiede più spazio, ridimensionalo.
VM inaccessibile a causa del disco di avvio pieno
La VM potrebbe non essere accessibile se il disco di avvio è pieno. Questo scenario può essere difficile da identificare, perché non è sempre evidente quando il problema di connettività della VM è dovuto a un disco di avvio pieno. Di seguito sono riportati alcuni esempi di errori comuni che potresti riscontrare se non riesci ad accedere alla VM da Google Cloud CLI perché il disco di avvio è pieno:
Network error: Software caused connection abort
ERROR: (gcloud.compute.ssh) Could not SSH into the instance. It is possible that your SSH key has not propagated to the instance yet. Try running this command again. If you still cannot connect, verify that the firewall and instance are set to accept ssh traffic.
You cannot connect to the VM instance because of an unexpected error. Wait a few moments and then try again.
No space left on device
ERROR Exception calling the response handler. [Errno 2] No usable temporary directory found in ['/tmp', '/var/tmp', '/usr/tmp', '/']...
Per risolvere i problemi sopra indicati, segui questi passaggi:
Verifica che l'errore SSH della VM sia dovuto a un disco di avvio pieno:
gcloud compute instances tail-serial-port-output VM_NAME
Se il disco di avvio è pieno, l'output risultante conterrà il messaggio
No space left on device.Se non l'hai ancora fatto, crea uno snapshot del disco di avvio della VM.
Prova a riavviare la VM.
Se non riesci ancora ad accedere alla VM:
Arresta la VM:
gcloud compute instances stop VM_NAME
Sostituisci
VM_NAMEcon il nome della VM.Aumenta le dimensioni del disco di avvio:
gcloud compute disks resize BOOT_DISK_NAME --size DISK_SIZE
Sostituisci quanto segue:
BOOT_DISK_NAME: il nome del disco di avvio della VMDISK_SIZE: le nuove dimensioni maggiori, in gigabyte, del disco di avvio
Ad esempio, per ridimensionare un disco denominato
example-disk-1a 6 GB, esegui il comando seguente:gcloud compute disks resize example-disk-1 --size=6GB
Avvia la VM:
gcloud compute instances start VM_NAME
Riprova a eseguire SSH sulla VM. Se non riesci ancora ad accedere alla VM, esegui una delle seguenti operazioni:
Crea un nuovo disco da uno snapshot. Per ulteriori informazioni, consulta Recupero di una VM inaccessibile o di un disco di avvio pieno.
Avvia temporaneamente la VM in modalità di ripristino utilizzando lo strumento open source GCE Rescue ed esegui i passaggi disponibili in Problemi relativi al file system.
Problemi relativi al file system
Ridimensionamento del file system
Dopo aver ridimensionato un disco di avvio della VM, la maggior parte delle VM ridimensiona il file system root e riavvia la VM. Tuttavia, per alcuni tipi di immagini VM, potrebbe essere necessario ridimensionare manualmente il file system. Se la VM non supporta il ridimensionamento automatico del file system root o se hai ridimensionato un disco permanente di dati (non di avvio), devi ridimensionare manualmente il file system e le partizioni.
Per verificare se il file system root è stato espanso automaticamente dopo aver ridimensionato il disco di avvio della VM:
Verifica se la VM ha ridimensionato il disco di avvio utilizzando uno dei seguenti metodi:
Esamina l'output della porta seriale. Cerca una riga che indichi che la partizione root è stata ridimensionata.
Ad esempio, nelle VM con immagini Debian, se il ridimensionamento automatico è andato a buon fine, i log della console includono la riga
... expand-root.sh[..]: Resizing ext4 filesystem on /dev/sda1.Se riesci a connetterti a una VM Linux tramite SSH, esegui il comando
df -hper verificare se è presente spazio libero sul disco.Ad esempio, questo output mostra che il file system root è pieno al 92%:
Filesystem Size Used Avail Use% Mounted on udev 63G 0 63G 0% /dev tmpfs 13G 1.4M 13G 1% /run /dev/sda1 339G 315G 24G 92% /
Limitazione di Spazi di archiviazione diretta (S2D)
Quando utilizzi Spazi di archiviazione diretta (S2D), non puoi aumentare la capacità ridimensionando i dischi permanenti sottostanti. Se ridimensioni i dischi a livello hardware, S2D non riconoscerà lo spazio aggiunto e i dati potrebbero diventare inaccessibili. Per aumentare la capacità, aggiungi server o unità anziché ridimensionare i dischi permanenti esistenti.
Per verificare se il disco è configurato come parte di un cluster S2D o di un pool di archiviazione:
Nella Google Cloud console, vai alla pagina Istanze VM.
Accanto all'istanza con il disco ridimensionato, fai clic sul pulsante RDP. Il browser apre una connessione RDP all'istanza.
Fai clic con il tasto destro del mouse sul pulsante Start di Windows e seleziona Gestione disco per aprire lo strumento Gestione disco. Ad esempio, lo screenshot seguente mostra che il disco 1 ha una partizione protettiva Spazi di archiviazione:
In alternativa, puoi eseguire uno dei seguenti comandi di PowerShell per trovare tutti i Persistent Disk associati a una configurazione S2D.
Get-Disk | Where-Object Model -eq "Storage Space"
Get-PhysicalDisk | Where-Object {$_.ObjectId -like "*Spaces*"}