Celerra share nfs
Benvenuti nella pagina Wiki di Simone Giustetti.
Lingue: English - Italiano
Il nome Celerra identifica una famiglia di soluzioni NAS (Network Attached Storage) di fascia medio / alta prodotti da Emc². Sono disponibili sia completi di dischi dedicati che come apparato da applicare ad altri storage array: Clariion o Symmetrix / Dmx. Nella configurazione provvista di spazio disco, quest'ultimo è fornito da un Clariion integrato.
Nel corso dell'articolo verrà illustrata la procedura per la creazione di una share condivisa via rete attraverso protocollo NFS con altre macchine. Prima di procedere verranno introdotti alcuni concetti fondamentali per comprendere i comandi esposti ed il funzionamento del Celerra.
Ogni Celerra è costituito da un minimo di 2 ad un massimo di 15 Data Mover, con un massimo di 14 attivi contemporaneamente. I Data Mover contengono la definizione dei file system condivisi e forniscono la connettività via rete degli stessi ai client esterni. La macchina è pilotata attraverso una Control Station che fornisce funzionalità amministrative attraverso una CLI (Command Line Interface). Alternativamente il Celerra può essere amministrato attraverso una Interfaccia Web raggiungibile all'indirizzo IP pubblico della Control Station. Le operazioni di creazione e manutenzione delle share possono essere eseguite sfruttando l'interfaccia ed un qualsiasi browser web.
Nel proseguo dell'articolo si darà per assodato che:
- La connettività ed i servizi di rete in genere funzionino e siano configurati a dovere.
- Il server DNS sia attivo e i nomi macchina vengano risolti in indirizzi IP e viceversa.
- Il Celerra sia dotato di un Clariion integrato.
I comandi della CLI verranno utilizzati da interfaccia carattere per creare una share con le caratteristiche esposte di seguito:
- Nome: cvs_exportdb.
- Dimensione: 200 Gb.
- Residente su: Il secondo Data Mover del Celerra cl001nas.
- Esportata attraverso l'interfaccia: cl001nas.fe.pro.nas.
- Visibile ai soli host db01acvs e db01bcvs attraverso il dominio pro.nas.
Il primo passo consiste nel collegarsi alla Control Station. Trattasi di una macchina Linux per cui sarà possibile sfruttare il protocollo ssh, puntando al nome macchina o all'indirizzo IP nel caso in cui il servizio DNS non riesca a risolvere il nome. Per collegarsi da macchine Windows sarà necessario installare un client ssh di cui le stesse sono normalmente sprovviste. Esistono molti prodotti gratuiti e "Free" o "Open Source" come ad esempio: Putty. L'utenza con cui collegarsi è nasadmin dotata dei permessi necessari a lanciare comandi amministrativi sulla Control Station.
Una volta collegati, sarà necessario creare il file system per poi legarlo al Data Mover prescelto. La creazione di un nuovo file system è un'operazione che altera la configurazione del sistema. I nomi dei comandi di un Celerra rispondono ad una nomenclatura particolarmente rigorosa. Tutti i comandi che impattano la configurazione di sistema hanno prefisso nas_ mentre quelli che interessano un singolo Data Mover hanno prefisso server_
Procediamo con la creazione del file system che verrà chiamato come la share per evitare successiva confusione:
nas_fs -name cvs-exportdb -create size=200G pool=clar_r5_performance
Il significato dei parametri utilizzati dovrebbe essere evidente. Attraverso il parametro pool viene specificata la sorgente dello spazio disco da cui attingere per allocare il file system. Il parametro è utile quando ad un singolo Celerra vengono collegate più sorgenti (pool) da cui pescare. In ogni configurazione dotata di storage dedicato esiste il pool clar_r5_performance, che sta ad indicare dischi performanti in configurazione RAID5 di un Clariion.
Il nuovo file system verrà creato e formattato prima che venga reso il prompt. Una volta riottenuto il controllo della shell, è necessario creare un mount point sul Data Mover prescelto ove eseguire il mount:
server_mountpoint server_2 -c /cvs-exportdb
Si è nuovamente chiamato il mount point con il nome della share per chiarezza. Il parametro server_2 specifica il Data Mover interessato dall'operazione mentre il parametro -c è la forma abbreviata di -create.
Si procederà con il mount del file system:
server_mount server_2 -o rw cvs-exportdb /cvs-exportdb
La sintassi del comando ricalca quella dell'analogo mount di Unix / Linux: mount -o <opzioni> <dispositivo> <mount_point> con l'aggiunta del Data Mover interessato dall'operazione. Nel nostro caso il dispositivo è ovviamente il file system creato come appoggio per la share. L'opzione rw specifica la tipologia di accesso al file system: utilizzando rw si garantiscono sia privilegi di scrittura che lettura all'utenza.
Una volta montato, il file system potrà essere acceduto da Control Station per operazioni di manutenzione sfruttando il percorso: /nasmcd/quota/slot_2/cvs-exportdb. La Control Station utilizza Autofs per montare i file system solo quando siano effettivamente acceduti / utilizzati, il comando "ls /nasmcd/quota/slot_2/cvs-exportdb" potrebbe pertanto rendere un errore. Per verificare cosa sia effettivamente montato è possibile utilizzare il comando:
server_mount server_2
che produrrà un elenco dei file system attestati sul secondo Data Mover.
La share è pronta per essere condivisa con le macchine che dovranno utilizzarla. Dovranno essere lanciati più comandi di esportazione:
server_export server_2 -Protocol nfs -option rw=db01acvs.pro.nas:db01bcvs.pro.nas /cvs-exportdb server_export server_2 -Protocol nfs -option root=db01acvs.pro.nas:db01bcvs.pro.nas /cvs-exportdb server_export server_2 -Protocol nfs -option access=db01acvs.pro.nas:db01bcvs.pro.nas /cvs-exportdb
Come per i comandi precedentemente eseguiti il primo parametro: server_2 specifica il Data Mover su cui operare. Attraverso il parametro Protocol viene specificato al Data Mover quale protocollo utilizzare per l'esportazione dei dati. La prima riga esporta in sola lettura verso tutti i client ed in lettura e scrittura solo per le macchine elencate nel seguito della riga. Il separatore tra client diversi consiste nel carattere ":". Il permesso root riportato nella seconda riga consente ai client di assegnare privilegi di amministratore sulla share. Infine il permesso access della terza riga consente ai client di eseguire il mount delle share e renderle pertanto fruibili come file system locali.
L'elenco può contenere sia i nomi che gli indirizzi IP delle macchine. Perchè la prima soluzione funzioni è necessario che in DNS sia attivo e configurato a dovere.
Per verificare che le share siano correttamente esportate, da uno qualsiasi dei client è possibile interrogare il server utilizzando il comando showmount -e <hostname>:
showmount -e cl001nas.fe.pro.nas
Per montare la share sulle macchine client è possibile far ricorso al comando mount. Nel caso di file system NFS è necessario specificare la tipologia degli stessi ed alcune opzioni specifiche. La sintassi del comando sara':
mount -t nfs -o <opzioni> <server>:<share> <mountpoint>
Ove <server> è il Fully Qualified Domain Name della macchina che esporta la share o, nel caso il Dns non fosse disponibile, l'equivalente indirizzo IP. Nel nostro caso per montare il file system sui client db01acvs o db01bcvs dovrà essere lanciato il comando:
mount -t nfs -o rw,bg,hard,intr,nfsvers=3,rsize=8192,wsize=8192,proto=tcp cl001nas.fe.pro.nas:/cvs_exportdb /mnt/db/cvs/export
Per rendere il mount automatico all'avvio dei due client è possibile modificare il file /etc/fstab (/etc/vfstab se il sistema operativo fosse Solaris) aggiungendo la riga:
cl001nas.fe.pro.nas:/cvs_exportdb /mnt/db/cvs/export nfs rw,bg,hard,intr,nfsvers=3,rsize=8192,wsize=8192,proto=tcp 0 0
La share verrà montata assieme ai file system locali durante la procedura di avvio. Attenzione: In presenza di problemi alla connettività di rete, l'avvio della macchina verrebbe bloccato durante la fase di mount fino a che non venisse superata la soglia di timeout e reso un errore dal client NFS. Un periodo di boot prolungato non è consigliabile su un server in produzione da cui potrebbero dipendere servizi essenziali. Per evitare l'inconveniente è consigliato installare e configurare autofs anzichè aggiornare il file /etc/fstab.
Attività successive alla creazione
La sicurezza del dato nei confronti di cancellazioni accidentali è d'obbligo su share condivise tra più utenti. È bene attrezzarsi per prevenire ed eventualmente risolvere i piccoli inconvenienti che potrebbero derivare dall'uso quotidiano dei file.
I box appartenenti alla famiglia Celerra integrano funzionalità di snapshot per i file system configurati. Gli snapshot possono essere impiegati come sistema di back-up "veloce" che consenta un facile ripristino di dati cancellati accidentalmente. Uno snapshot è una particolare sezione dello spazio disco dedicata al back-up parziale di un volume. Lo snapshot contiene una copia dei dati precedente ad ogni modifica eseguita successivamente alla sua attivazione. Il vantaggio nell'impiego di uno snapshot consiste nella possibilità di eseguire una copia di un volume impiegando solo una frazione dello spazio disco d'origine: il 15 o 20 %. Non essendo una copia completa dei dati originali, lo snapshot non consente l'esecuzione di un ripristino totale; garantisce solo restore differenziali. Uno snapshot deve essere ritenuto un mezzo per ottenere un back-up istantaneo da passare poi su altro supporto: un nastro magnetico ad esempio. Non come una soluzione di back-up completa.
Il comando nas_ckpt_schedule consente di schedulare le operazioni di snapshot giornalmente, settimanalmente o mensilmente. Si supponga di voler creare uno snapshot con cadenza giornaliera e ritenzione settimanale alle 03:30 di ogni notte; il comando da lanciare sara':
nas_ckpt_schedule -create cvs_exportdb_daily -filesystem cvs_exportdb -recurrence daily -every 1 -runtimes 03:30 -keep 7
Gli snapshot saranno accedibili in sola lettura dall'utenza direttamente sulle macchine su cui è montata la share. Nella directory principale della share esisterà una directory nascosta chiamata .ckpt alla quale si potrà accedere con il comando cd. La directory .ckpt conterrà 7 sottodirectory numerate in ordine decrescente. Ognuna delle sottodirectory è un punto di accesso ad uno snapshot giornaliero contenente un'immagine dei dati congelata alla data di attivazione. Il contenuto delle directory potrà essere navigato con i consueti comandi di shell: cd, ls, ecc. .
Per commenti, consigli, domande inviate una e-mail all'indirizzo studiosg [chiocciola] giustetti [punto] net.
Link externi
Protocollo NFS (FreeBsd Handbook)
Lingue: English - Italiano