Espansione di un disco / volume "live" senza aggiungere ulteriori partizioni / dischi

4

Gestiamo sempre più macchine virtuali basate su Linux (Ubuntu) sul lavoro, ma sto iniziando a lottare con qualcosa di semplice come espandere un disco della VM esistente, qualcosa che richiede letteralmente secondi per le nostre macchine virtuali Windows (proprietà della VM - & gt; inserisci nuova dimensione - & gt; ok, quindi diskpart, rescan, sel vol 0, extend, all done).

Ma guardando le opzioni sotto Linux, sembra ridursi a una di queste soluzioni, a seconda se usi LVM o meno.

  1. LVM - & gt; Aggiungi un nuovo disco virtuale, aggiungi la partizione sul disco, estendi con la nuova partizione

  2. LVM - & gt; Aumenta il disco esistente, aggiungi la partizione sul disco esistente, estendi con la nuova partizione.

  3. Avvio di una ISO LiveCD GParted e sopra, o aumentare la dimensione della partizione esistente.

Ci sono diversi motivi per cui non riesco a utilizzare quanto sopra:

  1. Si finisce con un sacco di hard disk extra, e sembra esserci una limitazione su 16 numeri minori per i dispositivi SCSI ( link ) ?, quindi dopo aver aumentato il disco 16 volte, sei sfortunato.

  2. Simile a quanto sopra, anche peggio se non è GPT, quindi possiamo solo estendere 3 volte assumendo che non ci siano altre partizioni sul disco.

  3. Alcuni elementi non possono essere facilmente portati offline, quindi non è possibile riavviare su un Live CD.

Diventa ancora peggio quando le nostre politiche aziendali ci impediscono di utilizzare il thin provisioning e le VM sono archiviate su tutti gli array SAN flash in cui lo spazio di archiviazione è costoso, quindi non possiamo aggiungere solo 500 GB e averne a che fare, dobbiamo mantenere lo spazio sprecato fino a 20-30 GB al massimo.

Ho perso altre opzioni? come fanno le altre persone nella produzione ?, la maggior parte della nostra roba è su Ubuntu 16.04 (cerchiamo di rimanere aggiornati sulla versione LTS corrente), quindi aperto a tutto ciò che funzionerà su questo, attualmente stiamo usando ext4, ma non è così un requisito, tuttavia è preferibile un file system journalizzato.

Ho preso seriamente in considerazione l'idea di andare con NFS con NetAPP o simili per le nostre macchine virtuali Linux dato che non ho altre idee in questa fase, e semplicemente roba tutto ciò che cresce sul punto di mount di nfs.

    
posta md2017 21.02.2017 - 13:19

2 risposte

1

Questo è quello che mi è venuto in mente, dopo diversi tentativi, e testato con una macchina virtuale con Ubuntu 16.04 con ext4 (non usando LVM, e non provando ad aumentare il disco di root, solo un disco aggiuntivo) su un host ESXi 6.0 .

Semplicemente aumentando la dimensione del disco sulla VM, non ha fatto nulla, dmesg non ha detto che sono state apportate modifiche.

  1. echo 1 & gt; / Sys / class / scsi_device / 2 \ 0: 0 \ 0: / device / ripetere la scansione

  2. dmesg ora cita che c'è stata una variazione di capacità dalla vecchia dimensione alla nuova dimensione

  3. Eseguendo resize2fs / parted / partprobe a questo punto, è ancora completamente inconsapevole del nuovo disco aggiunto, fdisk F può vedere lo spazio vuoto extra, ma non c'è modo di aggiungerlo realmente alla partizione esistente

  4. esegui fdisk ed elimina la partizione (sì, questo deve succedere), quindi crea una nuova partizione e prenderà le dimensioni appropriate.

  5. esegui resize2fs per far crescere il filesystem ext4.

Spero che un giorno Linux ottenga il supporto adeguato per la gestione dello storage. È ridicolo dover cancellare le partizioni per espandere le dimensioni del disco nel 2017.

    
risposta data md2017 23.02.2017 - 13:25
0

ecco cosa ho scoperto finora usando una macchina di prova

  • estendi il disco rigido nel backend i.e. vsphere hyperv

  • crea prima uno snapshot

  • cancella la partizione usando fdisk e creane una nuova. Assicurati di utilizzare l'ID di sistema 8e per LVM

  • pvresize / dev / sda2 - & gt; questa è la partizione in cui "/" è montato.

  • lvextend -l + 100% GRATUITO / dev / vg1 / lv1

  • xfs_growfs / dev / vg1 / lv1 - & gt; questo è per il filesystem XFS. usa resize2fs se applicabile

risposta data EGV 19.07.2018 - 09:04

Leggi altre domande sui tag