Con la virtualizzazione, ha ancora senso utilizzare più punti di montaggio?


15

Nel 2013, ha senso avere ancora punti di montaggio multipli su una nuova immagine Linux, o allocare tutto lo spazio a / ha più senso?

Preferirei evitare il riavvio necessario per aumentare le dimensioni di un punto di montaggio. Preferirei anche monitorare lo spazio di una singola montatura. Preferirei sapere che l'intero server supera l'utilizzo del 70% dello spazio su disco, rispetto ai singoli punti di montaggio.


Perché è necessario riavviare per aumentare le dimensioni di un punto di montaggio? Penso che tutti i comuni filesystem supportano l'espansione online a questo punto.
derobert,

Risposte:


17

Sicuro è ancora utile. Non si desidera che un processo in fuga riempia un registro e causi / esegua l'intero disco. Inoltre, se stai usando qualcosa come LVM puoi fare l'espansione online dei volumi.

Con molte macchine virtuali, vorrai comunque separare l'IO. Probabilmente vorrai i tuoi database su mandrini separati e l'unico modo per farlo è quello di avere un punto di montaggio separato per la posizione del tuo database. Database a parte, garantisce una maggiore flessibilità granulare lungo la strada se si supera il design originale.

Quindi, in breve, sì, ci sono ancora buoni motivi per farlo nel 2013.


La macchina non si arresta comunque anche se / var (o / tmp) si riempie comunque?
onionjake,

2
@onionjake No, non necessariamente. Ma si schiantano se si /riempie.
ewwhite,

Grazie per la nota sui registri che sfuggono al controllo. Queste VM particolari utilizzano una SAN, quindi credo che l'IO sia già distribuita e non rappresenti una preoccupazione per me in questa particolare situazione.
Jeremy Mullin,

A questo punto, se si desidera che una singola VM si estenda su più pool VMFS in ESXi, è necessario utilizzare più dischi virtuali (che vengono visualizzati come dischi fisici nella VM). Puoi ancora combinarli in un punto di montaggio con LVM se vuoi davvero, ma secondo me è una cattiva pratica.
Paul Gear,

5

Al giorno d'oggi, non userei troppi montaggi separati, ma probabilmente alcuni di quelli chiave sarebbero utili nell'amministrazione del sistema.

Solo 2 o 3, esp. con uno di dimensioni variabili. Questo dipende da cosa stai usando. Direi solo / (relativamente stabile) e / var (cambiando). A seconda del sistema operativo e della geometria del disco, potrebbe anche essere necessario / boot. / tmp è probabilmente un mount tmpfs impostato dall'installer.

I volumi che cambiano (/ per lo più, ma potrebbero essere solo / var / log e / var / lib / mysql ecc.) Sono di solito ciò di cui devi preoccuparti e pianificare l'espansione. Quindi, se possibile, utilizzare lvm ecc. Per semplificare il ridimensionamento.


1
Personalmente uso LVM e l'avvio deve essere sulla sua stessa partizione, non parte di un gruppo di volumi credo (se usi grub legacy).

4

Sì, utilizzo ancora più partizioni su macchine virtuali e mountpoint per i requisiti di monitoraggio, sicurezza e manutenzione.

Non sono un fan delle macchine virtuali mountpoint singole o limitate (a meno che non siano macchine usa e getta). Tratto le macchine virtuali allo stesso modo in cui tratto i server fisici. Allineare le partizioni con alcuni dei filesystem Linux Hierarchy Standard ha ancora senso in termini di separazione logica di eseguibili, partizioni di dati, temp e archiviazione dei log. Ciò facilita anche la riparazione del sistema. Ciò è particolarmente vero con macchine virtuali e server derivati ​​da un modello.

(A proposito, non mi piace neanche LVM su macchine virtuali ... Pianifica meglio !! )

Nei miei sistemi, provo a fare quanto segue:

  • / è in genere piccolo e non cresce molto.
  • /boot è di dimensioni prevedibili e la crescita è controllata dalla frequenza degli aggiornamenti del kernel.
  • /tmpdipende dall'applicazione e dall'ambiente, ma può essere dimensionato in modo appropriato. Il monitoraggio separato aiuta a misurare comportamenti anomali e protegge il resto del sistema.
  • /usr Dovrebbe essere prevedibile, contenente eseguibili, ecc.
  • /varcresce, ma la quantità di sfornamento di dati può essere inferiore. Bello poterlo misurare separatamente.
  • E una partizione di crescita. In questo caso, è /data, ma se questo fosse un sistema di database, può essere /var/lib/mysqlo /var/lib/pgsql... Si noti che si tratta di un dispositivo a blocchi diverso, /dev/sdb. Questo è semplicemente un altro VMDK su questa macchina virtuale, quindi può essere ridimensionato indipendentemente dal VMDK contenente le partizioni del sistema operativo reale.

# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda2              12G  2.5G  8.8G  23% /
tmpfs                 7.8G     0  7.8G   0% /dev/shm
/dev/sda1             291M  131M  145M  48% /boot
/dev/sda7             2.0G   68M  1.9G   4% /tmp
/dev/sda3             9.9G  3.5G  5.9G  38% /usr
/dev/sda6             6.0G  892M  4.8G  16% /var
/dev/sdb1             360G  271G   90G  76% /data

La separazione di alcune di queste partizioni rende molto più semplice identificare le tendenze e rilevare comportamenti anomali; ad es. dump core da 4 GB /var, un processo che esaurisce /tmp,

Normale inserisci qui la descrizione dell'immagine

Anormale. L'improvviso aumento /varnon sarebbe stato facile da rilevare se /fosse stata utilizzata una grande partizione. inserisci qui la descrizione dell'immagine


Di recente, ho dovuto applicare un cocktail di parametri e attributi di mount del filesystem (nodev, nosuid, noexec, noatime, nobarrier) per un modello di VM con protezione avanzata. Il partizionamento era un requisito assoluto per questo perché alcune partizioni richiedevano impostazioni specifiche che non potevano essere applicate a livello globale. Un altro punto dati.


2

Sicuramente i punti di montaggio multipli hanno ancora i loro vantaggi, un server virtualizzato o meno.

Ma con la virtualizzazione probabilmente usi anche modelli di macchine virtuali, giusto? E anche il tuo sistema di monitoraggio, come Nagios (con NConf?) Supporta i template? Se è così, allora devi affrontare questo combattimento mentale solo una volta.

Torna all'argomento

Ho usato per dividere i miei sistemi in questo modo: /, /home, /usr, /var, /tmp(e forse qualche altro punto per i dati di montaggio), ma che è stato eccessivo e una seccatura. Al giorno d'oggi una semplice immagine del sistema operativo con solo /, forse con un separato /varè una strada da percorrere per me; quindi se un server virtuale ha bisogno di più spazio di archiviazione per i dati, allora fornisco un'immagine del disco ancora per esso e lo monto dove necessario.


Come si rilevano i problemi, ad esempio, /opto /tmpin una configurazione a partizione singola?
ewwhite,

Se un server inizia a consumare rapidamente il suo spazio su disco, qualcosa di simile du -m --max-depth=4 / | sort -nr | head -n 30 | lessè sorprendentemente efficace. E in modo controllato. ambiente monitorato, quanti posti potenziali hai per questo tipo di cose, comunque? /var/log, /tmp, /opt/*/log, Forse qualcosa d'altro? Non troppo difficile.
Janne Pikkarainen,

1

Per i file server, tendo anche a montare il /homevolume sulla propria partizione / disco e utilizzare l' noexecopzione per montarlo. Paranoia, ma impedisce agli utenti di eseguire file all'interno delle loro cartelle home.

Inoltre, tendo a posizionare il /bootvolume su un mirror RAID 1 su tutte le unità, ma ancora una volta, vecchia pratica che seguo, non vedo ancora un aspetto negativo


1
La domanda riguardava i server virtuali, quindi il bit about / boot su RAID 1 non si applica. Ma è sicuramente una buona idea sui server fisici.
Paul Gear
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.