Montare il volume iSCSI su Ubuntu OS
Scoprite come montare un volume Block Storage for Classic su Ubuntu con I/O multipath per un accesso ridondante e ad alte prestazioni allo storage.
Seguire l'esercitazione per montare un volume IBM Cloud® Block Storage for Classic su un server con un sistema operativo Ubuntu. Creerai due connessioni da un'interfaccia di rete del tuo host a due indirizzi IP di destinazione dell'array di archiviazione.
Per ulteriori informazioni sul funzionamento del iSCSI servizio sul sistema Ubuntu operativo, consultare la iSCSI documentazione relativa all'iniziatore (o client). Se utilizzi un altro sistema operativo Linux®, consulta la documentazione relativa alla tua distribuzione specifica e assicurati che il multipath supporti il protocollo ALUA (Asymmetric Logical Unit Access) per la priorità dei percorsi.
Prima di iniziare
-
Creare un server virtuale per Classic nella console, dalla CLI, con l'API o con Terraform.
-
Ordinare un volume di archiviazione a blocchi nello stesso data center.
-
Assicurarsi che l'host sia autorizzato ad accedere al volume Block Storage for Classic. Per ulteriori informazioni, vedere Autorizzazione dell'host nella console Autorizzazione dell'host dalla CLI Autorizzazione dell'host con Terraform. Una volta completata l'autorizzazione, prendere nota del nome utente, della password e delle informazioni sull'host IQN.
Se più host montano lo stesso volume Block Storage for Classic senza essere gestiti in modo cooperativo, i tuoi dati sono a rischio di danneggiamento. Il danneggiamento del volume può verificarsi se vengono apportate modifiche al volume da più host contemporaneamente. Per evitare la perdita di dati, è necessario un file system su disco condiviso che tenga conto del cluster, come Microsoft Cluster Shared Volumes ( CSV ), Red Hat Global File System ( GFS2 ), VMware® VMFS e altri. Per ulteriori informazioni, consultare la documentazione del sistema operativo.
Prima di iniziare la configurazione di iSCSI,, assicuratevi che le interfacce di rete siano impostate e configurate correttamente per il corretto funzionamento del pacchetto open-iscsi, soprattutto durante l'avvio. Nelle versioni più recenti
di Ubuntu, lo strumento principale per impostare le informazioni sugli indirizzi di rete è Netplan. Utilizza un file di configurazione YAML
per definire le impostazioni di rete, sostituendo i vecchi metodi come /etc/network/interfaces. Netplan può essere configurato con la riga di comando o attraverso il sito NetworkManager negli ambienti desktop.
Consigliamo di eseguire il traffico di archiviazione su una VLAN che ignora il firewall. L'esecuzione del traffico di archiviazione tramite i firewall software aumenta la latenza e ha un impatto negativo sulle prestazioni dell'archiviazione. Per ulteriori informazioni sull'instradamento del traffico di archiviazione all'interfaccia VLAN, vedi le FAQ.
Installa i programmi di utilità iSCSI e a più percorsi
Assicurarsi che il sistema sia aggiornato e che includa i pacchetti open-iscsi e multipath-tools. Utilizzare i seguenti comandi per installare i package.
-
Aggiornare il sistema operativo:
apt-get update -
Installare
open-iscsi.sudo apt install open-iscsiQuando il package è installato, vengono creati i seguenti due file.
/etc/iscsi/iscsid.conf/etc/iscsi/initiatorname.iscsi
-
Avviare i servizi:
systemctl enable open-iscsisystemctl enable iscsid -
Installare
multipath-tools.sudo apt install multipath-tools
Configurare ISCSI
Aggiornamento del nome dell'iniziatore
-
Verificare l'esistenza del file
/etc/iscsi/initiatorname.iscsied esaminarne il contenuto.cat /etc/iscsi/initiatorname.iscsiroot@vsi4classicubuntu:~# cat /etc/iscsi/initiatorname.iscsi GenerateName=yes -
Utilizzando un editor di testo, aggiornare il file
/etc/iscsi/initiatorname.iscsicon l'IQN dalla console IBM Cloud®. Inserisci il valore nel formato indicato di seguito.InitiatorName=<IQN-value-from-the-portal>
Configurazione delle credenziali
-
Assicurati che il
iscsid.conffile esista controllandone il contenuto.cat /etc/iscsi/iscsid.conf -
Utilizzando l'editor di testo, decommentare e modificare le seguenti voci. Il nome utente e la password si trovano nella console IBM Cloud®.
node.session.auth.authmethod = CHAP node.session.auth.username = <Username-value-from-Portal> node.session.auth.password = <Password-value-from-Portal> discovery.sendtargets.auth.authmethod = CHAP discovery.sendtargets.auth.username = <Username-value-from-Portal> discovery.sendtargets.auth.password = <Password-value-from-Portal>Mantieni commentate le altre impostazioni CHAP. IBM Cloud® storage utilizza solo l'autenticazione unidirezionale. Non abilitare Mutual CHAP.
-
Riavviare il servizio iSCSI affinché le modifiche abbiano effetto.
systemctl restart iscsid.service
Per maggiori informazioni, vedere i manuali Ubuntu- iscsid e manuali di Ubuntu- systemctl.
Impostare il percorso multiplo
-
Dopo aver installato l'utilità multipath, è possibile verificare il contenuto predefinito del file
multipath.conf.cat /etc/multipath.conf -
Modifica i valori predefiniti di
/etc/multipath.confcon un editor di testo sostituendoli con il contenuto del seguente frammento di codice.defaults { user_friendly_names no max_fds max flush_on_last_del yes queue_without_daemon no dev_loss_tmo infinity fast_io_fail_tmo 5 } # All data in the following section must be specific to your system. blacklist { wwid "SAdaptec*" devnode "^hd[a-z]" devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*" devnode "^cciss.*" } devices { device { vendor "NETAPP" product "LUN" path_grouping_policy group_by_prio features "3 queue_if_no_path pg_init_retries 50" prio "alua" path_checker tur failback immediate path_selector "round-robin 0" hardware_handler "1 alua" rr_weight uniform rr_min_io 128 }La sezione iniziale del file di configurazione configura il sistema in modo che i nomi dei dispositivi multipath abbiano la forma
/dev/mapper/mpathn, dovempathnè il numero WWID (World Wide Identifier) del dispositivo. Per ulteriori informazioni, consultare i manuali Ubuntu-multipath.conf. -
Salva il file di configurazione e chiudi l'editor.
-
Avviare il servizio a più percorsi.
service multipath-tools start- Abilitare i servizi necessari.
Se è necessario modificare il file di configurazione a più percorsi dopo aver avviato il daemon a più percorsi, è necessario riavviare il servizio
multipathdper rendere effettive le modifiche.Per ulteriori informazioni sull'uso della funzione Device Mapper Multipath su Ubuntu 20, vedere Introduzione al multipathing del device mapper.
Rileva il dispositivo di archiviazione e accedi
L'utility iscsiadm è uno strumento a riga di comando utilizzato per la scoperta e l'accesso a target iSCSI, oltre che per l'accesso e la gestione del database open-iscsi. Per ulteriori informazioni, consultare i manuali dell' Ubuntu: iscsiadm. In questa fase, scoprire il dispositivo utilizzando l'indirizzo IP di destinazione ottenuto dalla console dell' IBM Cloud®.
-
Esegui l'analisi di rilevamento sull'array iSCSI.
Block Storage for Classic richiede un rilevamento dinamico delle destinazioni che utilizzi il metodo
SendTargets. Non utilizzare la configurazione statica dei nodi, poiché non è scalabile e può causare problemi di connettività quando vengono apportate modifiche allo storage (come l'autorizzazione o la revoca dell'autorizzazione degli host ai LUN). Il rilevamento dinamico garantisce che l'host rilevi automaticamente qualsiasi modifica ai portali di destinazione.iscsiadm -m discovery -t sendtargets -p <ip-value-from-IBM-Cloud-console>Se vengono visualizzate le informazioni IP e i dettagli di accesso, il rilevamento ha esito positivo.
root@vsi4classicubuntu:~# iscsiadm -m discovery -t sendtargets -p 161.26.114.197 161.26.114.197:3260,1052 iqn.1992-08.com.netapp:stfdal1304 161.26.114.196:3260,1049 iqn.1992-08.com.netapp:stfdal1304 -
Configurare il login automatico.
sudo iscsiadm -m node --op=update -n node.conn[0].startup -v automatic sudo iscsiadm -m node --op=update -n node.startup -v automatic -
Accedi all'array iSCSI.
sudo iscsiadm -m node --login
Verifica della configurazione
-
Convalidare che sia stata stabilita la sessione iSCSI.
iscsiadm -m session -o showroot@vsi4classicubuntu:~# iscsiadm -m session -o show tcp: [3] 161.26.114.197:3260,1052 iqn.1992-08.com.netapp:stfdal1304 (non-flash) tcp: [4] 161.26.114.196:3260,1049 iqn.1992-08.com.netapp:stfdal1304 (non-flash) -
Convalidare che esistono più percorsi.
multipath -llQuesto comando riporta i percorsi. Se la configurazione è corretta, ogni volume avrà un unico gruppo, con un numero di percorsi pari al numero di sessioni di iSCSI. È possibile collegare un volume utilizzando un solo percorso, ma è importante che le connessioni vengano stabilite su entrambi i percorsi per evitare interruzioni del servizio.
root@vsi4classicubuntu:~# multipath -ll 3600a0980383056666424506a33426478 dm-0 NETAPP,LUN C-Mode size=500G features='3 queue_if_no_path pg_init_retries 50' hwhandler='1 alua' wp=rw |-+- policy='service-time 0' prio=50 status=active | `- 3:0:0:0 sdb 8:16 active ready running `-+- policy='service-time 0' prio=10 status=enabled `- 2:0:0:0 sda 8:0 active ready runningSe MPIO non è configurato correttamente, il tuo dispositivo di archiviazione potrebbe disconnettersi e presentarsi come offline quando si verifica un'interruzione di rete oppure quando i team di IBM Cloud® eseguono la manutenzione. MPIO garantisce un ulteriore livello di connettività durante tali eventi e mantiene una sessione attiva sul volume con operazioni di lettura/scrittura in corso.
Nell'esempio,
3600a0980383056666424506a33426478è il WWID persistente mentre il volume esiste. Si consiglia che l'applicazione utilizzi il WWID. È inoltre possibile assegnare nomi più intuitivi utilizzando le parole chiave "user_friendly_names" o "alias" nel filemultipath.conf. -
Controllare
dmesgper assicurarsi che i nuovi dischi siano rilevati.dmesg
Creazione di una partizione e di un file system (facoltativo)
Una volta montato e accessibile il volume sull'host, è possibile creare un filesystem. Segui questa procedura per creare un file system sul volume appena montato.
-
Creare una partizione.
$ sudo fdisk /dev/mapper/mpatha Welcome to fdisk (util-linux 2.34). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Device does not contain a recognized partition table. Created a new DOS disklabel with disk identifier 0x92c0322a. Command (m for help): p Disk /dev/mapper/mpatha: 1 GiB, 1073741824 bytes, 2097152 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 65536 bytes Disklabel type: dos Disk identifier: 0x92c0322a Command (m for help): n Partition type p primary (0 primary, 0 extended, 4 free) e extended (container for logical partitions) Select (default p): p Partition number (1-4, default 1): First sector (2048-2097151, default 2048): Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-2097151, default 2097151): Created a new partition 1 of type 'Linux' and of size 1023 MiB. Command (m for help): w The partition table has been altered. -
Creare il filesystem.
$ sudo mkfs.ext4 /dev/mapper/mpatha-part1 mke2fs 1.45.5 (07-Jan-2020) Creating filesystem with 261888 4k blocks and 65536 inodes Filesystem UUID: cdb70b1e-c47c-47fd-9c4a-03db6f038988 Superblock backups stored on blocks: 32768, 98304, 163840, 229376 Allocating group tables: done Writing inode tables: done Creating journal (4096 blocks): done Writing superblocks and filesystem accounting information: done -
Montare l'unità a blocchi.
sudo mount /dev/mapper/mpatha-part1 /mnt -
Accedere ai dati per verificare che la nuova partizione e il nuovo sistema di file siano pronti per l'uso.
ls /mnt
Smontaggio dei volumi Block Storage for Classic
Quando il volume non ti serve più, smontalo prima di eliminarlo.
-
Smonta il file system.
umount /dev/mapper/XXXp1 /PerfDiskPer ulteriori informazioni, consultare i manuali dell' Ubuntu:
umount. -
Se non disponi di altri volumi in quel portale di destinazione, puoi scollegarti dalla destinazione.
iscsiadm -m node -t <TARGET NAME> -p <PORTAL IP:PORT> --logout -
Se non disponi di altri volumi in quel portale di destinazione, elimina il record del portale di destinazione per impedire tentativi di login futuri.
iscsiadm -m node -o delete -t <TARGET IQN> -p <PORTAL IP:PORT>Per ulteriori informazioni, consultare i manuali dell' Ubuntu:
iscsiadm.