Finestre.  Virus.  I Quaderni.  Internet.  ufficio.  Utilità.  Autisti

Il protocollo iSCSI è progettato per funzionare nelle reti di archiviazione ed è un modo per accedere ai dispositivi a blocchi utilizzando il protocollo SCSI su TCP/IP. Ciò consente di organizzare reti SAN (Storage Area Network) a basso costo utilizzando reti Ethernet convenzionali. Questa funzione è ampiamente utilizzata nella creazione di sistemi ad alta disponibilità e in questo ciclo prenderemo in considerazione soluzioni basate sull'archiviazione iSCSI. Oggi considereremo la creazione di un tale repository sulla piattaforma Server Windows 2008R2.

Innanzitutto, alcune parole sulle differenze fondamentali tra iSCSI e altri sistemi di rete archivio dati. Reti di area di archiviazione - SAN(Storage Area Network) prevedono il trasferimento dei dati sulla rete in forma "grezza" utilizzando il protocollo SCSI, proprio come se fossero trasferiti tra il sistema e il disco locale a basso livello. I dispositivi iSCSI sono percepiti dal sistema più o meno allo stesso modo di unità locali- prima dell'uso, devono essere partizionati e formattati.

Allo stesso tempo familiare a tutti archiviazione di rete - NAS (Network Area Storage) forniscono l'accesso a livello di file system utilizzando protocolli di trasferimento file come SMB o NFS.

In poche parole: i NAS sono le cartelle di rete comuni che sono familiari a tutti, le SAN sono unità collegate alla rete. Questo porta a una seconda importante differenza. cartella di rete può servire molti clienti. Un dispositivo SAN può essere connesso a un singolo client, proprio come un normale HDD può essere collegato a un solo PC. L'eccezione sono i cluster, quando più nodi hanno accesso a un dispositivo SAN contemporaneamente, in questo caso viene utilizzato un ulteriore livello di astrazione, ad esempio un file system del cluster Volumi condivisi cluster Microsoft (CSV) O VMware VMFS.

Prima di procedere con lo sviluppo pratico di questa tecnologia, dovresti familiarizzare con la terminologia accettata:

  • Iniziatore iSCSI (Iniziatore iSCSI)- la parte client, invia richieste al target iSCSI, può essere implementata in software, sotto forma di driver, o in hardware, sotto forma di adattatore iSCSI;
  • Scopo di iSCSI (Destinazione iSCSI) - parte server, accetta le connessioni dall'iniziatore e gli fornisce l'accesso ai dispositivi a blocchi ad esso associati: dischi virtuali, LUN. Può essere implementato sia nel software che come sistema di archiviazione hardware.

Una destinazione iSCSI può essere associata a più dispositivi a blocchi, che saranno disponibili per l'iniziatore che si connette alla destinazione. Un iniziatore può essere connesso a più destinazioni e utilizzare tutti i dispositivi associati. Una singola destinazione può anche accettare connessioni da più iniziatori, ma a ogni singolo dispositivo può accedere solo uno degli iniziatori.

Un altro punto, ora relativo all'implementazione pratica degli archivi iSCSI. Per SAN, è altamente auspicabile disporre di una rete separata isolata dalla rete aziendale.

Ciò è necessario per fornire un throughput sufficiente sulla SAN ed evitare di sovraccaricare la normale rete con il traffico iSCSI. Inoltre, non ha senso organizzare iSCSI in reti con portata inferiore a 1 Gbps.

Windows Server 2008 R2 non include il ruolo iSCSI Target ed è necessario scaricare Microsoft iSCSI Software Target per distribuirlo. Disimballarlo e installare il pacchetto iscsitarget_public.msi dalla cartella x64. L'installazione è estremamente semplice e non ci concentreremo su di essa.

Dopo l'installazione, andiamo alla console di gestione iSCSI: Start - Strumenti di amministrazione - Destinazione software iSCSI. Prima di tutto, creiamo un nuovo obiettivo (bersaglio). Per fare ciò, fare clic con il tasto destro su Target iSCSI: crea un target iSCSI.

Si aprirà una procedura guidata in cui specifichiamo il nome del target e la sua descrizione. Assegna nomi significativi agli obiettivi e non essere pigro nel creare descrizioni in modo da non dover indovinare in seguito perché hai creato questo o quell'obiettivo.

Il passaggio successivo consiste nello specificare gli ID degli iniziatori iSCSI a cui sarà consentito l'accesso alla destinazione. L'identificatore IQN è un nome formato speciale iqn. .: , che è univoco per ogni dispositivo iSCSI sulla SAN. Dove:

  • anno-mo- anno di registrazione del nome a dominio;
  • nome_dominio_invertito -Nome del dominio, scritto al contrario;
  • nome unico- un nome di dispositivo univoco, ad esempio, la destinazione qui conterrà il nome specificato e l'iniziatore conterrà il nome host.

Ad esempio, nelle soluzioni software Microsoft, IQN per impostazione predefinita ha il formato iqn.1991-05.com.microsoft:nome_univoco.

Per scoprire l'IQN, andiamo all'iniziatore iSCSI, nel nostro caso questo è un server sotto Controllo Windows Server 2012, ma l'algoritmo delle azioni sarà lo stesso per qualsiasi altro Versioni Windows. Vai a Pannello di controllo - Iniziatore iSCSI, rispondiamo affermativamente alla proposta di fissarne il lancio automatico:

Quindi nella finestra che si apre, vai alla scheda Configurazione, dove si trova l'identificatore desiderato:

Puoi copiarlo e specificarlo quando imposti il ​​target, ma c'è un altro modo. Per fare ciò, vai al segnalibro Fine degli oggetti, in campo Un oggetto inserire il nome del server con il file installato Destinazione software iSCSI e premere Connessione rapida.

È chiaro che mentre non ci collegheremo a nulla, ma ora abbiamo un compito diverso. Torniamo al server di destinazione e facciamo clic sulla pagina che indica l'identificatore del pulsante dell'iniziatore Revisione.

Ora diventa chiaro perché stavamo cercando di connetterci. Il server di destinazione iSCSI mantiene un elenco degli ultimi iniziatori che si sono connessi ad esso e consente di selezionarli.

Questo completa la creazione del target e possiamo creare e associare uno o più dischi ad esso. Per fare questo, vai al punto Dispositivi e nel menù bottone giusto selezione del mouse Crea disco virtuale.

Si aprirà la procedura guidata successiva, in cui specifichiamo la posizione e il nome del disco virtuale, si noti che è necessario specificare il nome completo del file, insieme all'estensione .vhd.

Quindi specificare la dimensione desiderata in MB

E la destinazione iSCSI (target) a cui sarà associato questo disco virtuale.

Questo completerà anche la configurazione del disco. Come risultato di questi semplici passaggi, abbiamo ottenuto una destinazione iSCSI configurata con un disco virtuale collegato. Ora torniamo all'iniziatore. È possibile utilizzare il montaggio rapido e collegare automaticamente i dischi dalle destinazioni rilevate. Ma va ricordato che il nostro obiettivo non è solo connettere i dischi, ma anche separare la rete di archiviazione e rete locale imprese.

Quindi aggiungiamo un segnalibro Rilevamento e premere Rileva portale, quindi inserisci il nome del server con il ruolo di destinazione iSCSI.

Quindi torna al segnalibro Fine degli oggetti, selezionare il target rilevato, che si trova nello stato Non attivo e premere Proprietà.

Nella finestra che si apre, nel campo IP del portale di destinazione seleziona l'indirizzo appartenente alla tua rete di archiviazione:

Torna indietro e premi Inserire. I dispositivi collegati possono essere trovati in un attimo Gestione del disco.

L'ulteriore algoritmo per lavorare con loro non è diverso dal lavorare con un normale disco: colleghiamo, contrassegniamo, formattiamo.

In questo articolo, abbiamo considerato l'opzione di configurazione dello storage più semplice. Nei nostri articoli successivi, torneremo alle singole impostazioni senza toccare l'argomento generale della creazione di un repository.

Con l'avvento di Fibre Channel e della SAN costruita su di esso, il mondo dello storage ha scommesso sull'accesso di rete ai sistemi di storage. Quasi tutti hanno dichiarato all'unanimità che le reti di archiviazione sono il futuro. Per diversi anni l'interfaccia FC è rimasta lo standard incontrastato per la loro costruzione, ma oggi molte persone capiscono che è tempo di cambiare. Ci sono un paio di gravi inconvenienti nelle SAN basate su FC: questi sono il prezzo e i problemi di accesso a dispositivi distanti geograficamente (a più di centinaia di chilometri). Di recente sono emerse numerose iniziative che sono in fase di standardizzazione e sono progettate per risolvere o aggirare questi problemi. Il più interessante è iSCSI.

La combinazione di lettere iSCSI si fa sempre più strada nei giornali e nelle brochure dei principali produttori di sistemi di archiviazione dati. Dai un'occhiata alle risorse dedicate allo storage e lo vedrai sicuramente. Ma, dopo aver sfogliato articoli e notizie, molto probabilmente troverai molte affermazioni completamente opposte: alcuni presentano iSCSI come leader innegabile per le reti di archiviazione nel prossimo futuro, altri lo mettono fine ancor prima della sua nascita.

Sun si è opposta all'IP Storage

Sun si è opposta all'IP Storage. Sun Microsystems non rilascerà sistemi di storage over-IP. Mark Canepa, Vice President of Business per tutti i sistemi di storage di Sun, ha recentemente affermato che l'IP Storage era solo un "sogno", secondo Byte e Switch.

Kanepa ha detto che " non è pratico utilizzare TCP/IP per organizzare le SAN a causa della maggiore latenza in tali reti. Anche se esiste un futuro per le reti di archiviazione basate su IP, sarà tra tre o cinque anni, e forse mai. Un flusso dai sistemi di archiviazione dei dati non può essere eseguito in cima allo stack del protocollo scopo generale ha esigenze particolari. Le sfide tecnologiche legate all'implementazione del TCP/IP sono molto maggiori di quanto molti pensino. Ecco perché noi di Sun scommettiamo su Fibre Channel.", Egli ha detto. Finora, nessun fornitore di storage ha preso una posizione così netta contro lo storage IP. I concorrenti di Sun, Hewlett-Packard e IBM, supportano più o meno attivamente queste tecnologie.

HP annuncia il supporto iSCSI

« versione finale nuova tecnologia dovrebbe apparire nel primo trimestre 2002, - ha riferito il capo della divisione dei sistemi di archiviazione di rete di HP Mark Thompson. La società intende introdurre un'ampia gamma di prodotti che supportano lo standard iSCSI, progettati per collegare i sistemi di archiviazione nelle reti IP...»

HP riconosce che gli utenti Fibre Channel sono abbastanza a proprio agio da gravitare verso la tecnologia FCIP aggiornata piuttosto che iSCSI. Ma allo stesso tempo, HP ritiene che l'esperienza con le soluzioni basate su IP, e in particolare Ethernet, renderà i prodotti iSCSI attraenti per molti clienti.

Computerworld, n. 35/2001: "Sistemi di archiviazione federati"

IBM rilascia un prodotto basato su iSCSI

IBM TotalStorage IP Storage 200i fornisce una connessione diretta alle unità LAN Ethernet. Questo sistema di archiviazione ad alta velocità supporta il nuovo standard di settore iSCSI, abilitando il protocollo SCSI su IP.

Bene, tali messaggi contrastanti non ci lasciano altra scelta che capirlo da soli e soppesare da soli tutti i "PER" o "CONTRO".

iSCSI

« iSCSI (Internet Small Computer System Interface) è un protocollo basato su TCP/IP progettato per comunicare e gestire sistemi di storage, server e client».

iSCSI descrive:

  • Protocollo di trasporto per SCSI che funziona su TCP
  • Nuovo meccanismo per incapsulare i comandi SCSI in una rete IP
  • Protocollo per una nuova generazione di sistemi di storage che utilizzeranno TCP/IP "nativo".

Subito c'è indignazione, voglio mettere tutto in pile separate. Come ha detto uno dei miei insegnanti: "Cotolette separatamente, mosche separatamente". Il fatto è che le regole per la consegna dei pacchetti a IP e SCSI sono assolutamente opposte. In IP, i pacchetti vengono consegnati al destinatario senza osservare una sequenza rigorosa e ripristina anche i dati, che consumano determinate risorse. Allo stesso tempo, secondo la specifica SCSI come interfaccia di canale, tutti i pacchetti devono essere trasmessi uno dopo l'altro senza indugio e la violazione di questo ordine porta alla perdita di dati. Nonostante il fatto che, secondo alcuni esperti, questo problema introduca ambiguità uso pratico Tecnologia iSCSI, oggi sono già stati implementati numerosi dispositivi che ne confermano la fattibilità. Gli ingegneri che hanno lavorato su iSCSI sono stati in grado di risolvere questo problema in un certo modo. La specifica iSCSI richiede un aumento delle dimensioni dell'intestazione del pacchetto. L'intestazione include Informazioni aggiuntive, che accelera notevolmente l'assemblaggio dei pacchetti.

Secondo il fanatico di iSCSI Haymore, ingegnere di sistemi senior presso l'Università dello Utah, l'ostacolo principale all'adozione di Ethernet come tecnologia SAN sottostante è la latenza relativamente elevata (prossima a 75 microsecondi) che si verifica a causa della natura del protocollo TCP/IP pila. . Sui sistemi di fascia alta, quando si accede a migliaia di file contemporaneamente, questo può diventare un problema serio.

Coloro che lavorano su iSCSI comprendono l'importanza del problema della latenza. E nonostante siano stati sviluppati molti strumenti per ridurre l'influenza dei parametri che causano ritardi nell'elaborazione dei pacchetti IP, la tecnologia iSCSI è posizionata per la creazione di sistemi di fascia media.

iSCSI si sta evolvendo molto rapidamente. La necessità di un nuovo standard è stata sentita così fortemente che entro 14 mesi dalla proposta dell'IETF per iSCSI nel febbraio 2000, c'erano abbastanza dispositivi per dimostrare l'interoperabilità. Nel luglio 2000 è stata pubblicata la bozza 0 per iSCSI, che è diventata l'inizio del lavoro sull'implementazione della tecnologia. Nel gennaio 2001 nasce l'IP Storage Forum all'interno della SNIA (Storage Networking Industry Association), che contava già 50 membri sei mesi dopo, e nell'aprile dello stesso anno viene presentato un prodotto che ben presto vince il premio "Enterprise Networking Product" premio.

Cosa c'è di così eccezionale in iSCSI che trova supporto tra i giganti dell'industria dei computer, indipendentemente dalle contraddizioni che esistono all'interno degli standard.

Alcune delle più importanti applicazioni e funzioni implementate utilizzando i sistemi di archiviazione dei dati sono:

Compiti che sono effettivamente implementati con metodi moderni:

    Consolidamento dello storage Backup dei dati Server Clustering Replica (duplicazione) Disaster Recovery

Nuove funzionalità implementate in modo efficace utilizzando l'archiviazione IP:

    · Distribuzione geografica della SAN · QoS · Sicurezza

Allo stesso tempo, i nuovi sistemi di archiviazione per i quali iSCSI sarà un protocollo nativo presenteranno molti più vantaggi:

    Fornisce un'unica tecnologia per la connessione di sistemi di archiviazione, server e client all'interno di una LAN, WAN, SAN Significativa esperienza nel settore esistente nelle tecnologie Ethernet e SCSI Possibilità di una significativa separazione geografica dei sistemi di archiviazione Capacità di utilizzare strumenti di gestione della rete TCP/IP

Inoltre, per trasferire i dati nell'archiviazione con un'interfaccia iSCSI, è possibile utilizzare non solo supporti, switch e router reti esistenti LAN/WAN, ma anche normali schede di rete lato client. È vero, in questo caso, da parte del cliente che utilizza tale scheda sorgono costi generali significativi per la potenza del processore. Secondo gli sviluppatori, l'implementazione software di iSCSI può raggiungere le velocità del mezzo di trasferimento dati Gigabit Ethernet con un carico significativo, fino al 100%, delle moderne CPU. A questo proposito, si consiglia di utilizzare schede di rete speciali che supportino meccanismi per scaricare la CPU dall'elaborazione dello stack TCP. Al momento della stesura di questo documento (giugno 2002), tali schede erano prodotte da Intel.

Intel PRO/1000T IP Storage Adapter è offerto da Intel a 700 dollari ciascuno. Questo dispositivo contiene potente processore Xscale, 32M di memoria e calcoli di trasferimento relativi ai protocolli iSCSI e TCP/IP, nonché il calcolo dei checksum dei frame TCP e IP al processore integrato. Le sue prestazioni, secondo i test interni dell'azienda, possono raggiungere i 500 Mbit/s al 3-5% di carico sul sistema host della CPU.

Diamo un'occhiata più da vicino a iSCSI

Figura 1. Rete IP che utilizza dispositivi iSCSI

Nell'esempio mostrato nella Figura 1, ogni server postazione di lavoro e l'unità supporta l'interfaccia Ethernet e lo stack di protocollo iSCSI. Per organizzare le connessioni di rete, vengono utilizzati router IP e switch Ethernet.

Con l'introduzione di SAN, siamo stati in grado di utilizzare il protocollo SCSI nelle infrastrutture di rete, fornendo un trasferimento dati ad alta velocità a livello di blocco tra più elementi SAN.

Internet Small Computer System Interface fornisce anche l'accesso ai dati in blocco, ma non da solo, ma su reti TCP / IP.

L'architettura SCSI convenzionale si basa su un modello "client"/"server". Un "client", come un server o una workstation, avvia richieste di lettura o scrittura di dati da un esecutore, un "server", come un sistema di archiviazione. I comandi emessi dal "client" ed elaborati dal "server" vengono inseriti nel Command Descriptor Block (CDB). Il "server" esegue il comando e la fine della sua esecuzione è indicata da un segnale speciale. L'incapsulamento e la consegna affidabile delle transazioni CDB tra iniziatori ed esecutori su una rete TCP/IP è il compito principale di iSCSI e deve essere eseguito in un ambiente SCSI non tradizionale, potenzialmente inaffidabile di reti IP.

Questo è il modello di livello del protocollo iSCSI, che consente di comprendere come i comandi SCSI vengono incapsulati per la trasmissione su supporti fisici.


Figura 2. Modello dei livelli inferiori del protocollo iSCSI

Il protocollo iSCSI controlla il trasferimento dei blocchi di dati e fornisce la conferma della validità del completamento dell'operazione di I/O. Che, a sua volta, viene fornito attraverso uno o più Connessioni TCP.

iSCSI ha quattro componenti:

  • Gestione nomi e indirizzi (iSCSI Address and Naming Conventions).
  • Gestione delle sessioni (gestione delle sessioni iSCSI).
  • Gestione degli errori (Gestione degli errori iSCSI).
  • Sicurezza (Sicurezza iSCSI).

Gestione nomi e indirizzi

Poiché i dispositivi iSCSI sono membri di una rete IP, dispongono di singole entità di rete. Un'entità di rete può contenere uno o più nodi iSCSI.


Figura 3. Modello di entità di rete

Un nodo iSCSI è un identificatore per i dispositivi SCSI (in un'entità di rete) accessibili sulla rete. Ogni nodo iSCSI ha un nome iSCSI univoco (lungo fino a 255 byte), formato secondo le regole accettate per la denominazione dei nodi su Internet. Ad esempio: "fqn.com.ustar.storage.itdepartment.161". Tale nome è in una forma leggibile dall'uomo e può essere elaborato dal Domain Name Server (DNS). Pertanto, il nome iSCSI fornisce la corretta identificazione di un dispositivo iSCSI indipendentemente dalla sua posizione fisica. Allo stesso tempo, nel processo di monitoraggio e trasferimento dei dati tra dispositivi, è più conveniente utilizzare una combinazione di indirizzo IP e porta TCP forniti dal Portale di rete. Il protocollo iSCSI, oltre ai nomi iSCSI, fornisce il supporto per gli alias, che di solito vengono visualizzati nei sistemi di amministrazione per una facile identificazione e gestione da parte degli amministratori di sistema.

Gestione delle sessioni

Una sessione iSCSI è costituita da una fase di autenticazione (fase di accesso) e da una fase di scambio (fase di funzionalità complete), avviata da un comando speciale.

La fase di autenticazione iSCSI è simile al processo PLOGI (Fibre Channel Port Login). Viene utilizzato per negoziare vari parametri tra due entità di rete e confermare i diritti di accesso dell'iniziatore. Se la fase di autenticazione iSCSI ha esito positivo, il lavoratore riconosce il login all'iniziatore, altrimenti il ​​login non viene riconosciuto e la connessione TCP viene chiusa.

Una volta confermato il login, la sessione iSCSI procede alla fase di scambio. Se è stata stabilita più di una connessione TCP, iSCSI richiede che ciascuna coppia comando/risposta passi attraverso una connessione TCP. Questa procedura garantisce che ogni singolo comando di lettura o scrittura venga eseguito senza la necessità di tracciare ulteriormente ogni richiesta per il suo passaggio attraverso diversi flussi. Tuttavia, diverse transazioni possono essere trasmesse simultaneamente su diverse connessioni TCP all'interno della stessa sessione.


Figura 4 Esempio di scrittura iSCSI

Al termine della transazione, l'iniziatore invia/riceve gli ultimi dati e l'esecutore invia una risposta che conferma l'avvenuto trasferimento dei dati.

Se è necessario chiudere la sessione, viene utilizzato il comando iSCSI logout, che trasmette informazioni sui motivi della chiusura della sessione. Può anche trasmettere informazioni su quale connessione dovrebbe essere chiusa in caso di errore di connessione per chiudere connessioni TCP problematiche.

Elaborazione degli errori

A causa dell'elevata probabilità di errori durante la trasmissione dei dati in alcuni tipi di reti IP, in particolare nelle implementazioni WAN in cui può operare iSCSI, il protocollo fornisce molte misure di gestione degli errori.

Affinché la gestione degli errori e il ripristino dagli errori funzionino correttamente, sia l'iniziatore che il lavoratore devono essere in grado di bufferizzare i comandi finché non vengono riconosciuti. Ogni dispositivo finale deve essere in grado di recuperare in modo selettivo una PDU persa o danneggiata come parte di una transazione per ripristinare la trasmissione dei dati.

La gestione degli errori iSCSI e la gerarchia di failover includono:

  1. Al livello più basso, rilevamento degli errori e ripristino dei dati a livello SCSI dell'attività, come la ritrasmissione di una PDU persa o danneggiata.
  2. Al livello successivo, può verificarsi un errore sulla connessione TCP che supera l'attività SCSI, ovvero la connessione TCP può essere danneggiata. In questo caso, viene effettuato un tentativo di ripristino della connessione.
  3. Infine, la stessa sessione iSCSI può essere danneggiata. La chiusura e il ripristino di una sessione di solito non sono richiesti se il ripristino viene gestito correttamente su altri livelli, ma può verificarsi il contrario. Questa situazione richiede la chiusura di tutte le connessioni TCP, l'interruzione di tutte le attività, i comandi SCSI non eseguiti e il riavvio della sessione tramite login ripetuto.

Sicurezza

A causa dell'uso di iSCSI su reti dove accesso non autorizzato Per i dati, la specifica prevede la possibilità di utilizzare una varietà di metodi per migliorare la sicurezza. Gli strumenti di crittografia come IPSec che utilizzano i livelli inferiori non richiedono negoziazioni aggiuntive, in quanto sono trasparenti ai livelli superiori, incluso iSCSI. È possibile utilizzare una varietà di soluzioni per l'autenticazione, come Kerberos o Private Key Exchange, e un server iSNS può essere utilizzato come repository di chiavi.

Altri (iFCP, FCIP)

Come parte del lavoro su tecnologie di rete archiviazione dei dati nell'Internet Engineering Task Force (IETF), è stato creato un gruppo di lavoro IP Storage (IPS) nelle seguenti aree:

  • iSCSI (Internet Small Computer Systems Interface)
  • FCIP (Fiber Channel su TCP/IP)
  • iFCP (Internet Fibre Channel Protocol)
  • iSNS (Internet Storage Name Service)

Inoltre, come già notato, nel gennaio 2001, nell'ambito della SNIA (Storage Networking Industry Association), è stato organizzato un forum IP Storage. Oggi il forum comprende tre sottogruppi: FCIP, iFCP, iSCSI. Ognuno dei quali rappresenta un protocollo che è sotto la protezione dell'IETF.

FCIP- basato sul protocollo tunnel TCP/IP, la cui funzione è quella di collegare SAN FC geograficamente distanti senza alcun impatto sui protocolli FC e IP.

iFCPè un protocollo basato su TCP/IP per connettere i sistemi di archiviazione FC alle reti di archiviazione FC utilizzando l'infrastruttura IP insieme o al posto degli elementi di commutazione e instradamento FC.

iSCSI- discusso sopra...

Per una migliore comprensione del posizionamento di questi tre protocolli, presentiamo un diagramma a blocchi delle reti costruite utilizzandoli.


Figura 5. Diagramma a blocchi delle reti di archiviazione IP

Fibre Channel su IP

Il meno rivoluzionario dei tre precedenti è Fibre Channel over IP. Praticamente non apporta modifiche alla struttura della SAN e all'organizzazione dei sistemi di archiviazione dei dati stessi. L'idea principale di questo protocollo è l'implementazione della possibilità di combinare reti di archiviazione geograficamente distanti.

Ecco come appare lo stack del protocollo FCIP:


Figura 6. Livelli inferiori del protocollo FCIP

FCIP aiuta a risolvere efficacemente il problema della distribuzione territoriale e del consolidamento delle SAN lunghe distanze. I suoi principali vantaggi sono che questo protocollo è completamente trasparente alle reti SAN FC esistenti e si concentra sull'utilizzo dell'infrastruttura delle moderne reti MAN / WAN. Pertanto, gli utenti che desiderano connettere SAN FC dislocate geograficamente avranno bisogno solo di un gateway FCIP e di una connessione di rete MAN/WAN per fornire nuove funzionalità. Una SAN geograficamente distribuita costruita utilizzando FCIP è percepita dai dispositivi SAN come una normale rete FC e, per la rete MAN/WAN a cui è connessa, rappresenta il traffico IP ordinario.

L'IPS IETF Working Group Draft Standard - FCIP definisce:

  • Regole di incapsulamento dei frame FC per la trasmissione su TCP/IP;
  • regole per l'utilizzo dell'incapsulamento per creare una connessione virtuale tra dispositivi FC ed elementi di rete FC;
  • un ambiente TCP/IP per supportare la creazione di un collegamento virtuale e fornire il tunneling del traffico FC su una rete IP, inclusi problemi di sicurezza, integrità dei dati e velocità dei dati.

Tra le attività applicate che possono essere risolte qualitativamente utilizzando il protocollo FCIP ci sono: backup remoto, ripristino dei dati e condivisione dei dati. Quando si utilizzano comunicazioni MAN / WAN ad alta velocità, è anche possibile applicare con successo: duplicazione sincrona dei dati e accesso distribuito condiviso ai sistemi di archiviazione dei dati.

iFCP

L'Internet Fibre Channel Protocol è un protocollo che fornisce il traffico FC sul trasporto TCP/IP tra i gateway iFCP. In questo protocollo, il livello di trasporto FC viene sostituito dal trasporto di rete IP, il traffico tra i dispositivi FC viene instradato e commutato tramite TCP/IP. Il protocollo iFCP offre la possibilità di connettere i sistemi di archiviazione FC esistenti a una rete IP con il supporto per i servizi di rete di cui questi dispositivi hanno bisogno.

Lo stack del protocollo iFCP si presenta così:


Figura 7. Livelli inferiori del protocollo iFCP

iFCP, secondo le specifiche:

  • sovrappone i frame FC per il loro trasporto su una connessione TCP predefinita;
  • I servizi di messaggistica e routing FC si sovrappongono nel dispositivo gateway iFCP, quindi le strutture di rete e i componenti FC non si fondono in una SAN FC comune, ma sono gestiti da TCP/IP;
  • crea dinamicamente tunnel IP per frame FC

Una caratteristica importante di iFCP è che questo protocollo fornisce la comunicazione FC da dispositivo a dispositivo (comunicazione tra dispositivi) su una rete IP, che è uno schema molto più flessibile rispetto alla comunicazione da SAN a SAN. Quindi, ad esempio, se un iFCP ha un collegamento TCP tra le coppie N_Port di due dispositivi FC, quel collegamento potrebbe avere il proprio livello di QoS, che sarà diverso dal livello di QoS di un'altra coppia di dispositivi FC.

Conclusione

Riassumendo, vorrei esprimere la mia ferma convinzione che Fibre Channel non scomparirà da nessuna parte nel prossimo futuro, il mercato FC SAN crescerà e si svilupperà. Allo stesso tempo, i protocolli di archiviazione IP forniranno l'opportunità di utilizzare efficacemente le reti di archiviazione in quelle applicazioni per le quali FC non può fornire un'implementazione efficace. Utilizzando i protocolli FCIP e iFCP, le SAN verranno distribuite geograficamente. E l'introduzione di iSCSI, a sua volta, consentirà di utilizzare i vantaggi della SAN in aree che rimangono ancora non realizzate o implementate in modo inefficiente nell'ambito delle tecnologie comuni di oggi.

P.S.

Il rapido sviluppo delle reti di archiviazione è diventato la base per la formazione del concetto in tutto il mondo rete di deposito. WWSAN- rete mondiale storage e prevede la realizzazione di un'infrastruttura che consentirà l'accesso e l'archiviazione ad alta velocità dei dati distribuiti nel mondo. Il concetto è molto vicino al WWW che esiste oggi, ma si basa su altri servizi. Un esempio originale è il servizio di un "manager" che gira il mondo facendo presentazioni. WWWSAN prevede il movimento trasparente dei dati "mobili" seguendo il movimento personale del loro proprietario in tutto il mondo. Pertanto, ovunque si trovi il "manager", sarà sempre in grado di ottenere un accesso ad alta velocità ai dati di cui ha bisogno, lavorare con i quali non richiederà una sincronizzazione complicata, a volte molto inefficiente tramite il WWW.

È sicuro affermare che il concetto di costruire una rete di archiviazione dati mondiale si adatta perfettamente allo sviluppo delle moderne tecnologie di archiviazione IP.

Termini e abbreviazioni:

  • SAN - Rete di archiviazione, rete di archiviazione dati
  • CDB - blocco descrittore di comando, protocollo descrittore di comando (descrizione).
  • PDU - Protocol Data Unit unità protocollo di scambio, modulo dati protocollo.
  • QoS - abbr. da Quality of Service la qualità e la classe dei servizi dati forniti (di solito descrive la rete in termini di ritardo e larghezza di banda del segnale).
  • SNIA - Storage Networking Industry Association, associazione dell'industria dei sistemi di storage di rete.
  • DNS - Domain Name Server, server dei nomi di dominio.
  • PLOGI - Accesso alla porta Fibre Channel.
  • iSCSI - Interfaccia Internet per piccoli sistemi informatici
  • FCIP - Fibre Channel su TCP/IP
  • iFCP - Protocollo Internet Fibre Channel
  • iSNS - Servizio dei nomi di archiviazione su Internet
  • WWSAN - Rete mondiale di aree di stoccaggio

Letteratura:

  • "SAN dopo Fibre Channel" - Lukas Merian. 02/12/2002: Computerworld, #05/2002;
  • Tutorial Archiviazione IP, - SNIA;
  • Libro bianco tecnico iSCSI, - SNIA;
  • Internet Fibre Channel Protocol (iFCP) - Una panoramica tecnica, - SNIA;
  • Storage Forum, - HP EMEA, 12-13 giugno 2002.

Il NAS supporta il servizio integrato iSCSI (Internet Small Computer System Interface) per l'utilizzo in cluster di server e ambienti virtualizzati.

In questa pagina, gli utenti possono abilitare/disabilitare il servizio iSCSI, modificare la porta del portale iSCSI, abilitare/disabilitare il servizio iSNS ed elencare e gestire tutti i target e i LUN iSCSI. Il NAS supporta più destinazioni iSCSI e più LUN per destinazione. È possibile montare e smontare un iSCSI LUN per uno scopo specifico. Questo capitolo contiene le seguenti sezioni.

Nella tabella seguente sono elencate le funzioni supportate da block LUN e file LUN.

File LUN (precedente)

Copia completa da VAAI

Supportato

Supportato

Ripristino dei blocchi tramite VAAI

Supportato

Supportato

Blocco a livello hardware da parte di VAAI

Supportato

Supportato

Configurazione sottile e recupero dello spazio di VAAI

Supportato

Non supportato

Allocazione dinamica della capacità

Supportato

Supportato

Liberare spazio

Supportato (da VAAI o in Windows 2012/Windows 8)

Non supportato

Microsoft ODX

Supportato

Non supportato

Backup LUN

Supportato

Istantanea LUN

Supportato

1 istantanea

Si noti che i block LUN in genere forniscono prestazioni di sistema migliori e pertanto si consiglia di utilizzare block LUN ove possibile.

Esistono due modi per allocare i LUN: thin provisioning e provisioning istantaneo.

È possibile creare fino a 256 target iSCSI e LUN. Ad esempio, se sul NAS vengono create 100 destinazioni, il numero massimo di LUN che è possibile creare è 156. È possibile creare più LUN per ciascuna destinazione. Tuttavia, il numero massimo di connessioni simultanee alle destinazioni iSCSI supportate dal NAS varia a seconda dell'infrastruttura di rete e delle prestazioni dell'applicazione. Troppo un gran numero di le connessioni simultanee possono influire sulle prestazioni del NAS.

Procedura guidata di installazione rapida iSCSI

Per configurare il servizio di destinazione iSCSI su NAS, Fai quanto segue.

6. Specificare le opzioni di autenticazione e fare clic su Avanti. Quando "Usa autorizzazione CHAP" è abilitato, la destinazione iSCSI eseguirà l'autenticazione solo presso l'iniziatore e agli utenti degli iniziatori verrà richiesto di immettere il nome utente e la password specificati qui per accedere alla destinazione. L'abilitazione di CHAP condiviso abilita l'autenticazione bidirezionale tra la destinazione iSCSI e l'iniziatore. La destinazione autentica l'iniziatore utilizzando il primo set di nome utente e password. L'iniziatore autentica la destinazione utilizzando i parametri specificati nella sezione CHAP condiviso. Il nome utente e la password in entrambi i campi hanno le seguenti restrizioni.

Creazione di destinazioni iSCSI

Segui questi passaggi per creare una destinazione iSCSI.

5. Specificare un nome utente e una password per "Usa autorizzazione CHAP" e/o "CHAP condiviso" e fare clic su Avanti. Quando "Usa autorizzazione CHAP" è abilitato, la destinazione iSCSI eseguirà l'autenticazione solo presso l'iniziatore e agli utenti degli iniziatori verrà richiesto di immettere il nome utente e la password specificati qui per accedere alla destinazione. L'abilitazione di CHAP condiviso abilita l'autenticazione bidirezionale tra la destinazione iSCSI e l'iniziatore. La destinazione autentica l'iniziatore utilizzando il primo set di nome utente e password. L'iniziatore autentica la destinazione utilizzando i parametri specificati nella sezione CHAP condiviso.

Creare un iSCSI LUN

Per creare un LUN per una destinazione iSCSI, completare i seguenti passaggi.

Per creare un iSCSI LUN non collegato, selezionare l'opzione Non associare alla destinazione nel passaggio 4.

Un LUN non collegato verrà creato e visualizzato nell'elenco di iSCSI LUN non collegati.

La tabella seguente fornisce una descrizione di tutti i target iSCSI e gli stati LUN.

Posizione

Stato

Descrizione

Scopo di iSCSI

Pronto

La destinazione iSCSI è nello stato Pronto, ma nessun iniziatore è connesso ad essa.

Collegato

Un iniziatore è connesso alla destinazione iSCSI.

Disabilitato

Le connessioni alla destinazione iSCSI sono state interrotte.

disconnesso

La destinazione iSCSI è disabilitata e le connessioni dagli iniziatori non sono possibili.

Incluso

Il LUN è abilitato per la connessione ed è visibile agli iniziatori autorizzati.

Spento

Il LUN è disabilitato e non è visibile agli iniziatori.

La tabella seguente descrive le azioni disponibili per la gestione delle destinazioni iSCSI e dei LUN (pulsante Azione).

Azione

Descrizione

disattivare

Disabilita una destinazione che si trova nello stato Pronto o Connesso. Si noti che tutte le connessioni dagli iniziatori verranno eliminate.

Attivare

Attiva un target offline.

Modifica

Modifica le impostazioni di destinazione: alias di destinazione, informazioni CHAP e impostazioni di checksum.

Modificare le impostazioni LUN: allocazione LUN, nome del volume del disco, directory, ecc.

Eliminare

Eliminazione di una destinazione iSCSI. Tutte le connessioni verranno interrotte.

disattivare

Disabilitazione di un LUN. Tutte le connessioni verranno interrotte.

Accendere

Abilita LUN.

Sciogliere

Scollega un LUN a una destinazione. Si noti che prima di annullare l'associazione di un LUN, è necessario disabilitarlo. Facendo clic su questo pulsante, il LUN verrà spostato nell'elenco dei LUN iSCSI virtuali non associati.

legamento

Binding di un LUN a una destinazione iSCSI. Questa funzione è disponibile solo per l'elenco di iSCSI LUN non associati.

Mostra connessioni

Visualizza lo stato della connessione di una destinazione iSCSI.

Commutazione di iSCSI LUN tra target

Seguire questi passaggi per cambiare i LUN iSCSI tra le destinazioni.

Dopo aver creato target iSCSI e LUN sul NAS, è possibile utilizzare l'iniziatore iSCSI installato sul computer (PC Windows, Mac o PC Linux) per connettersi al target iSCSI e al LUN e utilizzare i volumi del disco come dischi virtuali sul computer.

Espansione di iSCSI LUN

Il NAS supporta l'espansione iSCSI LUN. Per fare ciò, segui questi passaggi.

Internet Small Computer System Interface (iSCSI) è un protocollo di trasferimento dati progettato per scambiare dati tra server e sistemi di archiviazione (Storage Area Network, SAN). iSCSI è una combinazione del protocollo SCSI e dello stack del protocollo TCP/IP ed è progettato per trasferire blocchi di dati su reti Ethernet. I comandi di controllo SCSI vengono inviati all'interno di pacchetti IP, mentre TCP fornisce il controllo del flusso e l'affidabilità della trasmissione dei dati.

Con iSCSI, i dati vengono trasferiti tra il server e il sistema di archiviazione in blocchi, in forma non elaborata. Ciò consente di utilizzare la SAN più o meno come se fossero connessi direttamente al server anziché tramite una rete. Il sistema host può creare partizioni logiche sulla SAN, formattarle e utilizzarle come normali dischi rigidi locali. Questa è la principale differenza tra SAN e storage di rete (Network Area Storage, NAS), che operano a livello di file system e utilizzano protocolli di trasferimento file come SMB o CIFS.

La tecnologia iSCSI è stata sviluppata come più alternativa economica Fibre Channel (FC). I sistemi basati su iSCSI supportano i protocolli standard e possono essere costruiti su qualsiasi infrastruttura di rete esistente abilitata per IP. iSCSI può utilizzare i dispositivi di rete più comuni (switch, router, adattatori di rete, ecc.), mentre FC richiede HBA speciali, cavi ottici e altre apparecchiature costose.

L'architettura iSCSI è client-server e include i seguenti componenti:

Iniziatore iSCSI- un componente client che invia richieste di connessione al componente iSCSI Target situato sul lato server. L'iniziatore può essere implementato nel software, sotto forma di driver, o nell'hardware, sotto forma di uno speciale adattatore iSCSI.

destinazione iSCSI- un componente server che ascolta le richieste del client e stabilisce una connessione tra il client e il server iSCSI. Inoltre, la destinazione è associata ai dischi virtuali iSCSI e, dopo aver stabilito la connessione, tutto dischi virtuali associati a questo obiettivo sono resi disponibili attraverso l'iniziatore. Un iSCSI Target può essere un sistema di archiviazione specializzato o normale. Windows server con il ruolo iSCSI Target installato.

Dischi virtuali iSCSI - usato per dividere spazio sul disco in partizioni logiche (Logical Unit Number, LUN). In Windows Server 2012, iSCSI LUN sono normali dischi virtuali nel formato VHD\VHDX. A proposito, in Windows Server 2012, solo il formato VHD era supportato per iSCSI, che poneva un limite di 2 TB sulla dimensione LUN massima. Windows Server 2012 R2 utilizza il formato VHDX, che consente di creare LUN di dimensioni fino a 64 TB.

Ora fermiamoci e chiariamo alcuni punti:

Ogni server iSCSI può avere uno o più iSCSI Target;
Ogni iSCSI Target può essere connesso a uno o più dischi virtuali;
Ogni destinazione iSCSI può ospitare una o più connessioni da un iniziatore iSCSI;
A sua volta, ogni iSCSI Initiator può connettersi a uno o più iSCSI Target e quindi a uno o più dischi virtuali.

Inoltre, Windows Server 2012 supporta una configurazione di loopback in cui sia la destinazione che l'iniziatore possono trovarsi sullo stesso server.

IN sistemi operativi Il supporto Microsoft per iSCSI esiste da molto tempo. Primo Versione Microsoft iSCSI Initiator è stato installato come componente separato in Windows 2000, Windows XP SP2 e Windows Server 2003 SP1, e da Windows Server 2008 e Vista iSCSI Initiator è stato integrato nel sistema operativo.

Per quanto riguarda iSCSI Target, era originariamente incluso in una versione speciale del sistema operativo del server Windows Data Storage Server 2003, destinato alla creazione di sistemi di archiviazione e fornito solo preinstallato. Tuttavia, dal 2011, il componente Microsoft iSCSI Software Target 3.3 è diventato disponibile per il download e l'installazione su Windows Server 2008R2 e in Windows Server 2012 è completamente integrato nel sistema e installato come ruolo server.

Con questo si conclude la parte teorica e si passa alla pratica. Per configurare, prenderemo l'opzione più semplice; come soggetti sperimentali, utilizziamo due server con Windows installato Server 2012 R2: SRV2 per il ruolo di destinazione iSCSI e SRV3 per l'iniziatore iSCSI.

Avvio del servizio iniziatore iSCSI

Innanzitutto, controlliamo lo stato del servizio dell'iniziatore su SRV3. Per fare ciò, apri il Server Manager e seleziona la voce "iSCSI Initiator" nel menu "Strumenti".

Come puoi vedere, il servizio non è in esecuzione per impostazione predefinita. Facendo clic su "Sì" nella finestra di dialogo, avvieremo il servizio iSCSI Initiator e lo metteremo in modalità di avvio automatico.

Quindi, nella finestra delle proprietà, vai alla scheda "Configurazione" e ricorda il valore IQN, ti tornerà utile durante la configurazione del server.

IQN (nome qualificato iSCSI) è un identificatore univoco assegnato a ciascun target e iniziatore iSCSI. IQN è formato dalla data (mese e anno) di registrazione del dominio, il nome di dominio ufficiale scritto in ordine inverso e qualsiasi nome arbitrario, come il nome del server. Si scopre qualcosa del genere: iqn:1991-05.com.microsoft:srv3.contoso.com

Puoi anche avviare il servizio iSCSI Initiator e impostarne la modalità di avvio dalla console di PowerShell con i seguenti comandi:

Start-Service msiscsi
Set-Service msiscsi -StartupType automatico

Installazione del ruolo iSCSI Target Server

Ora passiamo a SRV2 e iniziamo a configurare il lato server. La prima cosa che dobbiamo fare è installare il ruolo iSCSI Target sul server. Apri Server Manager, segui il link "Aggiungi ruoli e funzionalità"

E selezionare il ruolo "iSCSI Target Server", che si trova nella sezione File and Storage Services\File and iSCSI Services.

Oppure possiamo usare il comando PowerShell:

Install-WindowsFeature -Name FS-iSCSITarget-Server

Preparazione del disco

Ora prepariamo il disco fisico che verrà utilizzato per archiviare i dischi iSCSI virtuali. Soprattutto per questo scopo, un nuovo disco rigido da 120 GB è collegato al server. SU questo momento l'azionamento è inattivo (Offline). Per attivarlo in Server Manager, vai nella sezione Servizi File e Archiviazione -> Dischi, clicca sul disco e trasferiscilo su Online.

Ora su questo disco è necessario creare una nuova partizione (o volume), per la quale in menù contestuale selezionare la voce Nuovo volume.

Selezionare il disco fisico su cui verrà creato il volume

specificare la dimensione del volume

e scegli una lettera di unità.

Quindi selezioniamo il file system per il disco, la dimensione del settore e specifichiamo l'etichetta del volume. Permettetemi di ricordarvi qui che i dischi virtuali iSCSI possono essere creati solo su volumi NTFS, il nuovo file system ReFS (Resilient File System) non è supportato.

Guardiamo le informazioni di riepilogo e, se tutto è corretto, fai clic su "Crea", avviando la creazione del volume.

Gli stessi passaggi possono essere eseguiti con PowerShell. Trova l'unità giusta:

Ottieni disco | dove ($_.OperationalStatus -eq ″Offline″)

Lo traduciamo online:

Set-Disk -Number 1 -IsOffline $false

Inizializzare:

Inizializza-disco-numero 1

Crea una sezione:

New-Partition -DiskNumber 1 -UseMaximumSize -DriveLetter D

E formattalo in NTFS:

Formato-Volume -LetteraUnità D -FileSystem NTFS -NuovaEtichettaFileSystem ″Archiviazione iSCSI″

Creazione di dischi virtuali iSCSI

Il prossimo punto del nostro programma è in corso creazione di dischi iSCSI virtuali. Per fare ciò, vai alla sezione iSCSI e fai clic sul collegamento, avviando la procedura guidata successiva.

Seleziona il volume su cui verrà archiviato il disco virtuale.

Dai al disco un nome e una descrizione.

Specificare la dimensione del disco virtuale e il suo tipo. Puoi scegliere tra tre opzioni:

Dimensione fissa (dimensione fissa): il disco creato occupa immediatamente l'intero spazio allocato. Questa è l'opzione più produttiva, ma meno economica;
Espansione dinamica (espansione dinamica): inizialmente viene creato un disco di dimensioni minime, che quindi cambia dinamicamente a seconda della quantità di dati scritti su di esso. L'opzione migliore in termini di utilizzo dello spazio su disco;
Differenziazione (differenza): in questa opzione è necessario specificare la posizione del disco principale a cui verrà associato il disco creato. Un disco differenze può essere fisso o dinamico, a seconda del tipo di padre. Questo tipo di disco ha i suoi vantaggi, ma personalmente non vedo molto motivo per usarli per iSCSI.

Ora è necessario specificare l'iSCSI Target a cui sarà connesso questo disco. Poiché non sono stati creati target sul server, selezionare "Nuovo target iSCSI".

Dai al bersaglio un nome e una descrizione.

E specifichiamo i server che possono accedervi.

Quando si scelgono i server, è possibile utilizzare due metodi. Se l'iniziatore è su Windows Server 2012 o Windows 8, puoi semplicemente fare clic su "Sfoglia" e selezionare il server desiderato dall'elenco. Per i sistemi meno recenti, è necessario inserire manualmente l'ID del server. Come identificatore, è possibile specificare l'IQN dell'iniziatore, il nome DNS o l'indirizzo IP del server o l'indirizzo MAC della scheda di rete.

Andare avanti. Nella pagina successiva è possibile configurare l'autenticazione CHAP tra i server. CHAP (Challenge Handshake Authentication Protocol) è un protocollo per l'autenticazione di un partner di connessione basato sull'uso di una password condivisa o di un segreto. Per iSCSI, è possibile utilizzare l'autenticazione CHAP unidirezionale e bidirezionale (inversa).

Controlliamo la correttezza delle impostazioni e iniziamo a creare il disco.

Proviamo a fare lo stesso con PowerShell. Creiamo un altro disco virtuale iSCSI da 20 GB con il comando:

Nuovo-IscsiVirtualDisk -Percorso D:\iSCSIVirtualDisks\iSCSI2.vhdx

Si noti che un disco dinamico viene creato per impostazione predefinita, per creare un VHD di dimensioni fisse, è necessario utilizzare la chiave -UsaFisso.

Ora creiamo un secondo iSCSI Target con il nome iscsi-target-2 e specifichiamo IQN SRV3 come server di accesso:

New-IscsiServerTarget -TargetName iscsi-target-2 -InitiatorIds ″IQN:iqn.1991-05.com.microsoft:srv3.contoso.com″

E controlla il risultato con il comando:

Get-IscsiServerTarget | fl TargetName, LunMappings

Connessione

Torniamo a SRV2, apriamo la finestra delle proprietà dell'iniziatore, andiamo alla scheda Discovery e facciamo clic sul pulsante Discover Portal.

Immettere il nome o l'indirizzo IP del portale e fare clic su OK.

Per impostazione predefinita, iSCSI utilizza tutti gli indirizzi IP disponibili e se si desidera che il traffico iSCSI passi solo attraverso un'interfaccia di rete specifica, è necessario accedere alle impostazioni avanzate e specificare l'IP desiderato nel campo "Connetti tramite".

Ora vai alla scheda Targets, dove dovrebbero essere visualizzati tutti gli iSCSI Targets disponibili per la connessione. Selezionare la destinazione desiderata e fare clic su "Connetti".

Non dimenticare di selezionare la casella di controllo "Aggiungi questa connessione all'elenco delle destinazioni preferite", che garantisce la connessione automatica alla destinazione quando la macchina viene spenta o riavviata.

La connessione è avvenuta e se apri lo snap-in di gestione del disco, lì apparirà un nuovo disco. Quindi procediamo con questo disco allo stesso modo di uno normale. disco rigido connesso localmente: trasferiamo su Online, inizializziamo, creiamo sezioni su di esso e lo formattiamo.

Lo stesso può essere fatto con PowerShell. Visualizziamo un elenco di obiettivi disponibili:

Get-IscsiTarget | fl

E connettiti a quello giusto:

Connect-IscsiTarget -NodeAddress ″iqn.1995-05.com.microsoft:srv2-iscsi-target-2-target″ -IsPersistent $true

Chiave -IsPersistent $true fornisce la connessione automatica allo spegnimento o al riavvio.

Bene, per disconnettersi, puoi usare il comando Disconnect-IscsiTarge, in questo modo:

Disconnect-IscsiTarget -NodeAddress ″iqn.1995-05.com.microsoft:srv2-iscsi-target-2-target″ -Confirm:$false

Conclusione

Questo completa la configurazione. Come ho detto, questa è l'opzione di configurazione dell'archiviazione più semplice e basilare. iSCSI ha molte altre caratteristiche interessanti. Ad esempio, è possibile utilizzare iSCSI Name Service (iSNS) per la facilità di gestione, Multipath I/O (MPIO) per la tolleranza agli errori e configurare l'autenticazione CHAP e la crittografia del traffico IPSec per la sicurezza. Ho intenzione di scrivere su alcune di queste funzionalità in articoli futuri.

Insomma punti importanti, che devono essere considerati quando si organizza un sistema di archiviazione iSCSI:

È auspicabile implementare iSCSI in una rete veloce, non inferiore a Gigabit Ethernet;
Si consiglia di separare il traffico di rete iSCSI dal resto del traffico e di spostarlo su una rete separata, ad esempio utilizzando VLAN o sottoreti fisiche;
L'alta disponibilità a livello di rete richiede l'uso di MPIO o di Multiple Connection Sessions (MCS). Un'associazione adattatori di rete(NIC Teaming) per la connessione ai dispositivi di archiviazione iSCSI non è supportato;
Quando si utilizza la tecnologia Spazi di archiviazione, è possibile archiviare i dischi virtuali iSCSI negli spazi di archiviazione, ma non è possibile utilizzare iSCSI LUN per creare spazi di archiviazione;
I volumi condivisi cluster (CSV) non possono essere utilizzati per archiviare dischi virtuali iSCSI.

Riassunto: come funziona open-iscsi (l'iniziatore ISCSI in Linux), come configurarlo e un po' sul protocollo iSCSI stesso.

Testi: ci sono molti articoli su Internet che spiegano abbastanza bene come configurare un target iSCSI, tuttavia, per qualche ragione, non ci sono praticamente articoli su come lavorare con l'iniziatore. Nonostante il fatto che l'obiettivo sia tecnicamente più complicato, c'è più confusione amministrativa con l'iniziatore: ci sono concetti più confusi e principi di funzionamento non molto ovvi.

iSCSI

Prima di parlare di iSCSI, qualche parola su tipi diversi accesso remoto all'informazione nelle reti moderne.

NAS contro SAN

Esistono due metodi per accedere ai dati che si trovano su un altro computer: file (quando viene richiesto un file da un computer remoto e a nessuno interessa quali file system viene eseguito), rappresentanti caratteristici di NFS, CIFS (SMB); e blocco - quando i blocchi vengono richiesti da un computer remoto dal supporto del disco (simile a come vengono letti da disco rigido). In questo caso, la parte richiedente crea un file system sul dispositivo a blocchi stesso e il server che fornisce il dispositivo a blocchi non ne è a conoscenza file system Su di lui. Il primo metodo si chiama NAS (Network Attached Storage) e il secondo si chiama SAN (Storage Area Network). I nomi generalmente indicano altri segni (SAN significa una rete dedicata all'archiviazione), ma è successo che NAS sono file e SAN sono dispositivi a blocchi su una rete. E sebbene tutti (?) Capiscano che questi sono nomi sbagliati, più sono lontani, più sono corretti.

scsi su tcp

Uno dei protocolli per l'accesso ai dispositivi a blocchi è iscsi. La "i" nel nome non si riferisce ai prodotti Apple, ma a Internet Explorer. Al centro, questo è "scsi over tcp". Il protocollo SCSI stesso (senza la lettera "i") è un costrutto molto complesso, poiché può funzionare su diversi supporti fisici (ad esempio, UWSCSI - bus parallelo, SAS - seriale - ma hanno lo stesso protocollo). Questo protocollo ti consente di fare molto di più che "collegare i dischi al tuo computer" (come inventato in SATA), ad esempio supporta i nomi dei dispositivi, la presenza di diversi collegamenti tra il dispositivo a blocchi e il consumatore, il supporto del passaggio (sì, uno switch SAS, esiste anche in natura), collegando diversi consumatori a un dispositivo a blocchi, ecc. In altre parole, questo protocollo è stato semplicemente richiesto come base per un dispositivo a blocchi di rete.

Terminologia

Nel mondo SCSI, sono accettati i seguenti termini:
bersaglio- colui che fornisce il dispositivo di blocco. L'analogo più vicino al normale mondo dei computer è un server.
iniziatore- il client, colui che utilizza il dispositivo a blocchi. Analogo cliente.
WWID- identificatore univoco del dispositivo, il suo nome. Un analogo del nome DNS.
LUN- il numero del "pezzo" del disco a cui si accede. L'analogo più vicino è una partizione su un disco rigido.

ISCSI apporta le seguenti modifiche: WWID scompare, al suo posto arriva il concetto di IQN (iSCSI Qualified Name), ovvero un nome puro che è simile in modo confuso al DNS (con piccole differenze). Ecco un esempio di IQN: iqn.2011-09.test:name.

IETD e open-iscsi (server e client linux) portano un altro concetto molto importante, che spesso non è menzionato nei manuali iscsi: il portale. Il portale è, in parole povere, diversi obiettivi annunciati da un server. Non c'è analogia con www, ma se si potesse chiedere a un server Web di elencare tutti i suoi host virtuali, allora sarebbe così. Il portale specifica un elenco di obiettivi e IP disponibili che è possibile accedere (sì, iscsi supporta più percorsi dall'iniziatore alla destinazione).

bersaglio

L'articolo non riguarda l'obiettivo, quindi do molto breve descrizione cosa fa il bersaglio Prende un dispositivo a blocchi, ci schiaffeggia un nome e un LUN e lo pubblica sul suo portale, dopodiché consente a tutti (autorizzazione a degustare) di accedervi.

Ecco un esempio di un semplice file di configurazione, penso che sarà chiaro da esso cosa fa il target (il file di configurazione usando l'esempio IET):

Target iqn.2011-09.example:data IncomingUser username Pa$$w0rd Lun 0 Path=/dev/md1

(il complesso dal semplice differisce solo nelle opzioni di esportazione). Pertanto, se abbiamo un obiettivo, vogliamo collegarlo. E qui inizia il difficile, perché l'iniziatore ha una sua logica, non è affatto come un banale supporto per nfs.

Iniziatore

L'iniziatore è open-iscsi. Quindi, la cosa più importante è che ce l'ha modalità operative E stato. Se diamo il comando nella modalità sbagliata, o se non consideriamo lo stato, il risultato sarà estremamente scoraggiante.

Quindi, le modalità di funzionamento:

  • Cerca target "s (scoperta)
  • Connessione alla destinazione "y
  • Lavorare con un target connesso
Da questo elenco, il ciclo di vita è abbastanza chiaro: prima trova, poi connetti, poi disconnetti, quindi riconnetti. Open-iscsi mantiene aperta la sessione anche se il dispositivo a blocchi non è in uso. Inoltre, mantiene aperta la sessione (fino a certi limiti, ovviamente), anche se il server è andato in riavvio. Una sessione iscsi non è la stessa cosa di una connessione TCP aperta, iscsi può riconnettersi in modo trasparente al target.Disconnect / connect sono operazioni che sono controllate "dall'esterno" (o da altri software o manualmente).

Un po' sullo stato. Dopo la scoperta open-iscsi ricorda tutti gli obiettivi trovati (sono memorizzati in /etc/iscsi/), in altre parole, la scoperta è un'operazione permanente, NON corrisponde affatto, ad esempio, alla risoluzione del dns). , a seguito di esperimenti e impostazioni, un mucchio di obiettivi trovati, durante il tentativo di accesso in cui si verificano molti errori a causa del fatto che metà degli obiettivi sono vecchie linee di configurazione che non esistono più sul server, ma open-iscsi viene ricordato) Inoltre, open-iscsi ti consente per modificare le impostazioni di una destinazione ricordata "e - e questa" memoria "influisce sull'ulteriore lavoro con le destinazioni anche dopo il riavvio / riavvio del demone.

dispositivo di blocco

La seconda domanda che tormenta molti all'inizio è dove va dopo la connessione? open-iscsi crea un dispositivo di classe BLOCK SCSI, sebbene sia di rete (non per niente è "dico"), ovvero riceve una lettera nella famiglia /dev/sd, ad esempio /dev /sdc. Viene utilizzata la prima lettera gratuita, perché per il resto del sistema, questo è un dispositivo a blocchi - tipico HDD, che non è diverso da uno collegato tramite usb-sata o semplicemente direttamente a sata.

Questo spesso provoca il panico "come posso scoprire il nome del dispositivo a blocchi?". Appare nell'output dettagliato di iscsiadm (# iscsiadm -m session -P 3).

Autorizzazione

A differenza di SAS / UWSCSI, iSCSI è disponibile per la connessione a chiunque. Per proteggersi da tali, c'è un login e una password (chap) e il loro trasferimento a iscsiadm "y è un altro mal di testa per gli utenti inesperti. Può essere fatto in due modi: modificando le proprietà dell'obiettivo trovato in precedenza" e prescrivendo il login / password nel file di configurazione open-iscsi.
La ragione di tali difficoltà è che la password e il processo di accesso non sono attributi dell'utente, ma del sistema. iSCSI è una versione economica dell'infrastruttura FC e il concetto di "utente" nel contesto della persona alla tastiera non si applica qui. Se il tuo database sql si trova sul dispositivo a blocchi iscsi, ovviamente vorrai che il server sql si avvii da solo e non dopo un minuto dell'attenzione personale dell'operatore.

Il file di configurazione

Questo è un file molto importante, perché oltre al nome utente/password, descrive anche il comportamento di open-iscsi quando trova errori. Può restituire un errore "indietro" non immediatamente, ma dopo una pausa (ad esempio, cinque minuti, sufficienti per riavviare il server con i dati). Anche il processo di accesso è controllato lì (quante volte provare, quanto tempo aspettare tra i tentativi) e qualsiasi messa a punto del processo di lavoro stesso. Nota che questi parametri sono abbastanza importanti per il lavoro e devi capire come si comporterà il tuo iscsi se rimuovi il cavo di alimentazione per 10-20 secondi, ad esempio.

Riferimento rapido

Non mi piace molto citare mana e linee facilmente reperibili, quindi fornirò un tipico scenario di utilizzo di iscsi:

Per prima cosa troviamo i target di cui abbiamo bisogno, per questo abbiamo bisogno di conoscere il nome IP/dns dell'iniziatore: iscsiadm -m discovery -t st -p 192.168.0.1 -t st è il comando send targets.

iscsiadm -m node (lista trovata per il login)
iscsiadm -m node -l -T iqn.2011-09.example:data (login, ovvero connessione e creazione di un dispositivo a blocchi).
iscsiadm -m session (elenca a cosa sei connesso)
iscsiadm -m session -P3 (producilo, ma in modo più dettagliato - alla fine dell'output ci sarà un'indicazione di quale dispositivo a blocchi appartiene a quale target).
iscsiadm - m session -u -T iqn.2011-09.example:data (disconnessione da specifico)
iscsiadm -m node -l (accedi a tutti i target rilevati)
iscsiadm -m node -u (disconnessione da tutti i target)
iscsiadm -m node --op delete -T iqn.2011-09.example:data (elimina target da found).

mulitpath

Un altro problema importante nelle decisioni serie è il supporto di percorsi multipli verso la fonte. Il bello di iscsi sta nell'usare un IP normale, che può essere elaborato nel solito modo, come qualsiasi altro traffico (anche se in pratica di solito non viene instradato, ma solo commutato - il carico è troppo grande lì). Quindi, iscsi supporta il multipath nella modalità "non resistere". Di per sé, open-iscsi non può connettersi a più IP dello stesso target.Se lo colleghi a più IP dello stesso target, questo porterà alla comparsa di più dispositivi a blocchi.

Tuttavia, esiste una soluzione: è multipathd, che trova le unità con lo stesso ID e le tratta come dovrebbe essere in multipath, con criteri personalizzati. Questo articolo non riguarda il multipath, quindi non spiegherò in dettaglio il mistero del processo, tuttavia, ecco alcuni punti importanti:

  1. Quando si utilizza multipath, è necessario impostare piccoli timeout: il passaggio tra percorsi errati dovrebbe essere abbastanza veloce
  2. In condizioni più o meno canale veloce(10G e oltre, in molti casi gigabit) il parallelismo del carico dovrebbe essere evitato, poiché si perde la capacità di utilizzare il bio coalesing, che in alcuni tipi di carico può colpire l'obiettivo in modo spiacevole.

Se noti un errore, seleziona una parte di testo e premi Ctrl + Invio
CONDIVIDERE: