GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come configurare la destinazione iSCSI utilizzando targetcli in CentOS / RHEL 7

Internet Small Computer System Interface (iSCSI) è uno standard basato su IP per la connessione di dispositivi di archiviazione. iSCSI utilizza reti IP per incapsulare i comandi SCSI, consentendo il trasferimento dei dati su lunghe distanze. iSCSI fornisce storage condiviso tra diversi sistemi client. I dispositivi di archiviazione sono collegati ai server (target). I sistemi client (iniziatori) accedono ai dispositivi di archiviazione remoti su reti IP. Ai sistemi client, i dispositivi di archiviazione sembrano essere collegati localmente. iSCSI utilizza l'infrastruttura IP esistente e non richiede alcun cablaggio aggiuntivo, come nel caso delle reti di archiviazione Fibre Channel (FC).

Installazione di targetcli

1. RHEL/CentOS 7 utilizza il sottosistema di destinazione del kernel Linux-IO (LIO) per iSCSI. Oltre a iSCSI, LIO supporta una serie di strutture di storage tra cui Fibre Channel over Ethernet (FCoE), accesso iSCSI su reti Mellanox InfiniBand (iSER) e accesso SCSI su reti Mellanox InfiniBand (SRP). In RHEL 7, tutte le strutture di archiviazione vengono gestite con targetcli utilità.

Per configurare il sistema RHEL come server iSCSI, inizia installando il pacchetto software targetcli:

# yum install targetcli

2. L'installazione del pacchetto software targetcli installa anche python-rtslib pacchetto, che fornisce il /usr/lib/systemd/system/target.service file. Prima di utilizzare l'utilità targetcli per creare, eliminare e visualizzare le destinazioni di archiviazione, utilizzare il comando systemctl per abilitare e avviare il servizio di destinazione sul server iSCSI.

# systemctl enable target
Created symlink from /etc/systemd/system/multi-user.target.wants/target.service to /usr/lib/systemd/system/target.service.
# systemctl start target

Aggiunta del dispositivo

1. Aggiungi il disco /dev/xvdf come dispositivo iSCSI in Backstores/backstores/block. I backstore sono risorse di archiviazione locali che la destinazione del kernel utilizza per "backup" i dispositivi SCSI che esporta.

# targetcli 
...

/> cd /backstores/block/
/backstores/block> create disk0 /dev/xvdf
Created block storage object disk0 using /dev/xvdf.

2. Verifica il nuovo dispositivo utilizzando "ls" nella directory /backstores/block della riga di comando di targetcli.

Crea nuovo IQN

1. L'esempio seguente utilizza il comando create per creare un IQN (iSCSI Qualified Name) con una destinazione. Utilizzare il comando create senza alcun argomento per creare una destinazione iSCSI utilizzando un nome di destinazione predefinito. Per impostazione predefinita, il target è identificato da un identificatore "iqn". Si tratta di un iSCSI Qualified Name (IQN), che identifica in modo univoco un target.

/>/> cd /iscsi 
/iscsi> create
Created target iqn.2003-01.org.linux-iscsi.geeklab.x8664:sn.81b9fd11a721.
Created TPG 1.
Global pref auto_add_default_portal=true
Created default portal listening on all IPs (0.0.0.0), port 3260.
/iscsi>

2. Verificare l'IQN appena creato utilizzando il comando ls nella directory /iscsi.

Impostazione dell'ACL

Gli elenchi di controllo di accesso (ACL) limitano l'accesso alle LUN da sistemi remoti. È possibile creare un ACL per ogni iniziatore per imporre l'autenticazione quando l'iniziatore si connette alla destinazione. Ciò ti consente di concedere a un iniziatore specifico l'accesso esclusivo a un target specifico.

2. Prima di poter creare un ACL, dovrai scoprire il nome dell'iniziatore dal tuo client (iscsi-initiator). Utilizzare il comando seguente sul client per ottenere il nome dell'iniziatore.

[root@initiator ~]# cat /etc/iscsi/initiatorname.iscsi 
InitiatorName=iqn.1994-05.com.redhat:aabb51a64012

2. L'esempio seguente utilizza il comando create per creare un ACL per un iniziatore. Dalla shell targetcli, iniziare usando il comando cd per passare alla directory acls all'interno della gerarchia [target/TGP]. Usa il nome dell'iniziatore che hai appena ottenuto dal comando sopra.

/> cd /iscsi/iqn.2003-01.org.linux-iscsi.geeklab.x8664:sn.81b9fd11a721/tpg1/acls 
/iscsi/iqn.20...721/tpg1/acls> create iqn.1994-05.com.redhat:aabb51a64012
Created Node ACL for iqn.1994-05.com.redhat:aabb51a64012

3. Verifica la nuova ACL che hai appena impostato.

Creazione di un gruppo di portali target (TPG)

Quando si crea un nuovo IQN, viene creato un gruppo di portali di destinazione (TPG) predefinito. Un portale di rete è un indirizzo IP:coppia di porte. Una destinazione iSCSI è accessibile da sistemi remoti attraverso il portale di rete. Il portale predefinito 0.0.0.0:3260 consente al server iSCSI di rimanere in ascolto su tutti gli indirizzi IPv4 sulla porta 3260. È possibile eliminare il portale predefinito e configurare i portali secondo necessità. Sono supportati sia gli indirizzi IPv4 che IPv6.

1. Come puoi vedere nel comando sottostante, il TGP predefinito è già stato creato.

/> cd /iscsi/iqn.2003-01.org.linux-iscsi.geeklab.x8664:sn.81b9fd11a721/tpg1/portals/
/iscsi/iqn.20.../tpg1/portals> ls

2. Per consentire ai sistemi remoti di accedere a una destinazione iSCSI sulla porta 3260, disabilitare il servizio firewalld sul server iSCSI o configurare firewalld in modo che consideri attendibile la porta 3260/tcp. L'esempio seguente utilizza firewall-cmd per aprire la porta 3260/tcp per il servizio firewalld.

# firewall-cmd --permanent --add-port=3260/tcp

Se includi l'opzione –permanent quando aggiungi una porta, usa il comando firewall-cmd per ricaricare la configurazione.

# firewall-cmd –reload

Aggiunta di dischi iSCSI al TPG

1. Ora dobbiamo aggiungere il disco (disk0) che abbiamo creato in precedenza in questo post al TPG predefinito.

/> cd /iscsi/iqn.2003-01.org.linux-iscsi.geeklab.x8664:sn.81b9fd11a721/tpg1/luns 
/iscsi/iqn.20...721/tpg1/luns> create /backstores/block/disk0 
Created LUN 0.
Created LUN 0->0 mapping in node ACL iqn.1994-05.com.redhat:aabb51a64012

2. Verifica la tua configurazione.

Salva la configurazione

L'ultimo passaggio consiste nel salvare la configurazione utilizzando il comando "saveconfig". Assicurati di eseguire il comando dalla directory "/", altrimenti fallirà.

/> saveconfig
Last 10 configs saved in /etc/target/backup.
Configuration saved to /etc/target/saveconfig.json

Configurazione dell'iniziatore iSCSI

1. Sul tuo iscsi-initiator, esegui un discovery sul target per verificare che il tuo iqn sia disponibile.

iscsiadm --mode discoverydb --type sendtargets --portal [ip-of-target] --discover
[ip-of-target]:3260,1 iqn.2003-01.org.linux-iscsi.geeklab.x8664:sn.81b9fd11a721

2. Accedi alla destinazione

# iscsiadm --mode node --targetname iqn.2003-01.org.linux-iscsi.geeklab.x8664:sn.81b9fd11a721 --portal [ip-of-target] --login
Logging in to [iface: default, target: iqn.2003-01.org.linux-iscsi.geeklab.x8664:sn.81b9fd11a721, portal: [ip-of-target],3260] (multiple)
Login to [iface: default, target: iqn.2003-01.org.linux-iscsi.geeklab.x8664:sn.81b9fd11a721, portal: [ip-of-target],3260] successful.

3. Verifica se riesci a vedere il nuovo storage iSCSI.

# cat /proc/scsi/scsi 
Attached devices:
Host: scsi2 Channel: 00 Id: 00 Lun: 00
  Vendor: LIO-ORG  Model: disk0            Rev: 4.0 
  Type:   Direct-Access                    ANSI  SCSI revision: 05


Cent OS
  1. CentOS / RHEL 7:come configurare il server dei nomi solo cache

  2. CentOS / RHEL 6,7 :Come configurare hugepages

  3. CentOS / RHEL 7:come configurare il tagging VLAN usando nmcli

  4. Come configurare iSCSI Initiator (client) in CentOS/RHEL 6

  5. Come configurare DM-Multipath da un iniziatore iSCSI a una destinazione iSCSI in CentOS/RHEL

Come configurare l'indirizzo IP statico in CentOS 7 / RHEL 7

Come configurare l'indirizzo IP statico in CentOS 8 / RHEL 8

Come installare e configurare Ansible su CentOS 8 / RHEL 8

CentOS / RHEL 7:come configurare kdump usando la GUI

Come configurare il server VNC su CentOS/RHEL 6

Come configurare il client LDAP su CentOS/RHEL 6 utilizzando SSSD