

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Provisioning di iSCSI per Linux
<a name="mount-iscsi-luns-linux"></a>

FSx for ONTAP supporta il protocollo iSCSI. È necessario eseguire il provisioning di iSCSI sia sul client Linux che sul file system per utilizzare il protocollo iSCSI per il trasporto dei dati tra i client e il file system. Il protocollo iSCSI è disponibile su tutti i file system con 6 o meno coppie [ad alta disponibilità (HA)](HA-pairs.md).

Il processo di configurazione di iSCSI su FSx Amazon NetApp for ONTAP prevede tre passaggi principali, descritti nelle seguenti procedure:

1. Installa e configura il client iSCSI sull'host Linux.

1. Configurare iSCSI sulla SVM del file system.
   + Creare un gruppo di iniziatori iSCSI.
   + Mappare il gruppo di iniziatori sul LUN.

1. Montare un LUN iSCSI sul client Linux.

## Prima di iniziare
<a name="iscsi-linux-byb"></a>

Prima di iniziare il processo di configurazione del file system per iSCSI, è necessario completare i seguenti elementi.
+ Creane uno FSx per il file system ONTAP. Per ulteriori informazioni, consulta [Creazione di file system](creating-file-systems.md).
+ Creare un LUN iSCSI sul file system. Per ulteriori informazioni, consulta [Creazione di un LUN iSCSI](create-iscsi-lun.md).
+ Crea un' EC2 istanza che esegue Amazon Linux 2 Amazon Machine Image (AMI) nello stesso VPC del file system. Questo è l'host Linux su cui configurare iSCSI e accedere ai dati dei file.

  Oltre all'ambito di queste procedure, se l'host si trova in un altro VPC, è possibile utilizzare il peering VPC o concedere altri VPCs accessi AWS Transit Gateway agli endpoint iSCSI del volume. Per ulteriori informazioni, consulta [Accesso ai dati dall'esterno del VPC di implementazione](supported-fsx-clients.md#access-from-outside-deployment-vpc).
+ Configurare i gruppi di sicurezza VPC dell'host Linux per consentire il traffico in entrata e in uscita come descritto in. [Controllo degli accessi ai file system con Amazon VPC](limit-access-security-groups.md)
+ Ottieni le credenziali per ONTAP utente con `fsxadmin` privilegi che utilizzerai per accedere a ONTAP CLI. Per ulteriori informazioni, consulta [ONTAPruoli e utenti](roles-and-users.md).
+ L'host Linux che configurerai per iSCSI e utilizzerai per accedere al file system FSx for ONTAP si trova nello stesso VPC e. Account AWS
+ È consigliabile che l' EC2 istanza si trovi nella stessa zona di disponibilità della sottorete preferita del file system, come illustrato nella figura seguente.  
![\[Immagine che mostra un file system Amazon FSx for NetApp ONTAP con un LUN iSCSI e un'istanza EC2 Amazon situata nella stessa zona di disponibilità della sottorete preferita del file system.\]](http://docs.aws.amazon.com/it_it/fsx/latest/ONTAPGuide/images/fsx-ontap-iscsi-mnt-client.png)

Se la tua EC2 istanza esegue un'AMI Linux diversa da Amazon Linux 2, alcune delle utilità utilizzate in queste procedure ed esempi potrebbero essere già installate e potresti utilizzare comandi diversi per installare i pacchetti richiesti. Oltre all'installazione dei pacchetti, i comandi usati in questa sezione sono validi per altri EC2 sistemi Linux AMIs.

**Topics**
+ [Prima di iniziare](#iscsi-linux-byb)
+ [Installare e configurare iSCSI sull'host Linux](#configure-iscsi-on-linux-client)
+ [Configurare iSCSI sul file system FSx for ONTAP](#configure-iscsi-on-fsx-ontap)
+ [Montare un LUN iSCSI sul client Linux](#mount-iscsi-lun-on-linux-client)

## Installare e configurare iSCSI sull'host Linux
<a name="configure-iscsi-on-linux-client"></a>

**Per installare il client iSCSI**

1. Confermalo `iscsi-initiator-utils` e `device-mapper-multipath` sono installati sul tuo dispositivo Linux. Connect alla propria istanza Linux utilizzando un client SSH. Per ulteriori informazioni, vedi [Connect alla tua istanza Linux usando SSH.](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstancesLinux.html)

1. Installa `multipath` e installa il client iSCSI utilizzando il seguente comando. L'installazione `multipath` è necessaria se si desidera eseguire automaticamente il failover tra i file server.

   ```
   ~$ sudo yum install -y device-mapper-multipath iscsi-initiator-utils
   ```

1. Per facilitare una risposta più rapida in caso di failover automatico tra file server durante l'utilizzo`multipath`, impostate il valore di timeout sostitutivo nel `/etc/iscsi/iscsid.conf` file su un valore `5` anziché su quello predefinito di. `120`

   ```
   ~$ sudo sed -i 's/node.session.timeo.replacement_timeout = .*/node.session.timeo.replacement_timeout = 5/' /etc/iscsi/iscsid.conf; sudo cat /etc/iscsi/iscsid.conf | grep node.session.timeo.replacement_timeout
   ```

1. Avviare il servizio iSCSI.

   ```
   ~$ sudo service iscsid start
   ```

   Tieni presente che, a seconda della versione di Linux in uso, potrebbe essere necessario utilizzare invece questo comando:

   ```
   ~$ sudo systemctl start iscsid
   ```

1. Verificate che il servizio sia in esecuzione utilizzando il comando seguente.

   ```
   ~$ sudo systemctl status iscsid.service
   ```

   Il sistema risponde con il seguente risultato:

   ```
   iscsid.service - Open-iSCSI 
       Loaded: loaded (/usr/lib/systemd/system/iscsid.service; disabled; vendor preset: disabled) 
       Active: active (running) since Fri 2021-09-02 00:00:00 UTC; 1min ago
       Docs: man:iscsid(8)
       man:iscsiadm(8)
       Process: 14658 ExecStart=/usr/sbin/iscsid (code=exited, status=0/SUCCESS)
       Main PID: 14660 (iscsid)
       CGroup: /system.slice/iscsid.service
       ├─14659 /usr/sbin/iscsid
       └─14660 /usr/sbin/iscsid
   ```

**Per configurare iSCSI sul client Linux**

1. Per consentire ai client di eseguire automaticamente il failover tra i file server, è necessario configurare multipath. Utilizza il seguente comando :

   ```
   ~$ sudo mpathconf --enable --with_multipathd y
   ```

1. Determinate il nome dell'iniziatore del vostro host Linux utilizzando il comando seguente. La posizione del nome dell'iniziatore dipende dall'utilità iSCSI in uso. Se si utilizza`iscsi-initiator-utils`, il nome dell'iniziatore si trova nel file. `/etc/iscsi/initiatorname.iscsi`

   ```
   ~$ sudo cat /etc/iscsi/initiatorname.iscsi
   ```

   Il sistema risponde con il nome dell'iniziatore.

   ```
   InitiatorName=iqn.1994-05.com.redhat:abcdef12345
   ```

## Configurare iSCSI sul file system FSx for ONTAP
<a name="configure-iscsi-on-fsx-ontap"></a>

1. Connect all'interfaccia della NetApp riga di comando ONTAP FSx sul file system for ONTAP su cui è stato creato il LUN iSCSI utilizzando il comando seguente. Per ulteriori informazioni, consulta [Utilizzo della CLI NetApp ONTAP](managing-resources-ontap-apps.md#netapp-ontap-cli).

   ```
   ~$ ssh fsxadmin@your_management_endpoint_ip
   ```

1. Crea il gruppo di iniziatori (`igroup`) utilizzando il comando NetApp ONTAP CLI. [https://docs.netapp.com/us-en/ontap-cli-9111/lun-igroup-create.html](https://docs.netapp.com/us-en/ontap-cli-9111/lun-igroup-create.html) Un gruppo di iniziatori esegue il mapping su LUNs iSCSI e controlla a quali iniziatori (client) hanno accesso. LUNs Sostituirlo `host_initiator_name` con il nome dell'iniziatore dell'host Linux recuperato nella procedura precedente.

   ```
   ::> lun igroup create -vserver svm_name -igroup igroup_name -initiator host_initiator_name -protocol iscsi -ostype linux 
   ```

   Se si desidera rendere disponibile il LUNs mappato a questo igroup per più host, è possibile specificare più nomi di iniziatori separati da una virgola. *Per ulteriori informazioni, consulta [lun igroup create nel Centro documentazione ONTAP](https://docs.netapp.com/us-en/ontap-cli-9111/lun-igroup-create.html). NetApp * 

1. Conferma che `igroup` esiste usando il comando: [https://docs.netapp.com/us-en/ontap-cli-9111/lun-igroup-show.html](https://docs.netapp.com/us-en/ontap-cli-9111/lun-igroup-show.html)

   ```
   ::> lun igroup show
   ```

   Il sistema risponde con il seguente risultato:

   ```
   Vserver   Igroup       Protocol OS Type  Initiators
   --------- ------------ -------- -------- ------------------------------------
   svm_name  igroup_name  iscsi    linux    iqn.1994-05.com.redhat:abcdef12345
   ```

1. Questo passaggio presuppone che sia già stato creato un LUN iSCSI. Se non lo avete fatto, consultate step-by-step le istruzioni [Creazione di un LUN iSCSI](create-iscsi-lun.md) per farlo.

   Create una mappatura dal LUN creato all'igroup creato, utilizzando [https://docs.netapp.com/us-en/ontap-cli-9111/lun-mapping-create.html](https://docs.netapp.com/us-en/ontap-cli-9111/lun-mapping-create.html), specificando i seguenti attributi:
   + `svm_name`— Il nome della macchina virtuale di archiviazione che fornisce la destinazione iSCSI. L'host utilizza questo valore per raggiungere il LUN.
   + `vol_name`— Il nome del volume che ospita il LUN.
   + `lun_name`— Il nome assegnato al LUN.
   + `igroup_name`— Il nome del gruppo iniziatore.
   + `lun_id`— Il numero intero dell'ID LUN è specifico della mappatura, non del LUN stesso. Viene utilizzato dagli iniziatori dell'igroup poiché il numero di unità logica utilizza questo valore per l'iniziatore quando accede allo storage.

   ```
   ::> lun mapping create -vserver svm_name -path /vol/vol_name/lun_name -igroup igroup_name -lun-id lun_id
   ```

1. Utilizzate il [https://docs.netapp.com/us-en/ontap-cli-9111/lun-show.html](https://docs.netapp.com/us-en/ontap-cli-9111/lun-show.html)comando per confermare che il LUN è stato creato, online e mappato.

   ```
   ::> lun show -path /vol/vol_name/lun_name -fields state,mapped,serial-hex
   ```

   Il sistema risponde con il seguente output:

   ```
    Vserver    Path                           serial-hex               state    mapped
    --------- ------------------------------- ------------------------ -------- --------
    svm_name  /vol/vol_name/lun_name          6c5742314e5d52766e796150 online   mapped
   ```

   Salva il `serial_hex` valore (in questo esempio lo è`6c5742314e5d52766e796150`), lo utilizzerai in un passaggio successivo per creare un nome descrittivo per il dispositivo a blocchi.

1. Utilizzate il [https://docs.netapp.com/us-en/ontap-cli-9111/network-interface-show.html](https://docs.netapp.com/us-en/ontap-cli-9111/network-interface-show.html)comando per recuperare gli indirizzi `iscsi_1` e le `iscsi_2` interfacce per l'SVM in cui avete creato il LUN iSCSI.

   ```
   ::> network interface show -vserver svm_name
   ```

   Il sistema risponde con il seguente output:

   ```
               Logical               Status     Network            Current                    Current Is 
   Vserver     Interface             Admin/Oper Address/Mask       Node                       Port    Home
   ----------- ----------            ---------- ------------------ -------------              ------- ----
   svm_name
               iscsi_1               up/up      172.31.0.143/20    FSxId0123456789abcdef8-01  e0e     true
               iscsi_2               up/up      172.31.21.81/20    FSxId0123456789abcdef8-02  e0e     true
               nfs_smb_management_1 
                                     up/up      198.19.250.177/20  FSxId0123456789abcdef8-01  e0e     true
   3 entries were displayed.
   ```

   In questo esempio, l'indirizzo IP di `iscsi_1` è `172.31.0.143` ed `iscsi_2` è`172.31.21.81`.

## Montare un LUN iSCSI sul client Linux
<a name="mount-iscsi-lun-on-linux-client"></a>

Il processo di montaggio del LUN iSCSI sul client Linux prevede tre passaggi:

1. Individuazione dei nodi iSCSI di destinazione

1. Partizionamento del LUN iSCSI

1. Montaggio del LUN iSCSI sul client

Queste sono trattate nelle seguenti procedure.

**Per individuare i nodi iSCSI di destinazione**

1. Sul client Linux, utilizzare il comando seguente per individuare i nodi iSCSI di destinazione utilizzando l'`iscsi_1`indirizzo IP. *iscsi\$11\$1IP*

   ```
   ~$ sudo iscsiadm --mode discovery --op update --type sendtargets --portal iscsi_1_IP
   ```

   ```
   172.31.0.143:3260,1029 iqn.1992-08.com.netapp:sn.9cfa2c41207a11ecac390182c38bc256:vs.3
   172.31.21.81:3260,1028 iqn.1992-08.com.netapp:sn.9cfa2c41207a11ecac390182c38bc256:vs.3
   ```

   In questo esempio, `iqn.1992-08.com.netapp:sn.9cfa2c41207a11ecac390182c38bc256:vs.3` corrisponde al `target_initiator` LUN iSCSI nella zona di disponibilità preferita.

1. (Facoltativo) Per ottenere un throughput superiore a quello del client EC2 singolo Amazon (massimo 5 Gbps (\$1625 MBps) sul tuo LUN iSCSI, segui le procedure descritte nella sezione [Larghezza di banda di EC2 rete delle istanze](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-network-bandwidth.html) Amazon nella Amazon Elastic Compute Cloud User Guide for Linux Instances per stabilire sessioni aggiuntive per una maggiore velocità di trasmissione.

   Il comando seguente stabilisce 8 sessioni per iniziatore per nodo ONTAP in ogni zona di disponibilità, consentendo al client di gestire fino a 40 Gbps (5.000 MBps) di throughput aggregato verso il LUN iSCSI.

   ```
   ~$ sudo iscsiadm --mode node -T target_initiator --op update -n node.session.nr_sessions -v 8
   ```

1. Accedere agli iniziatori di destinazione. Gli iSCSI LUNs vengono presentati come dischi disponibili.

   ```
   ~$ sudo iscsiadm --mode node -T target_initiator --login
   ```

   ```
   Logging in to [iface: default, target: iqn.1992-08.com.netapp:sn.9cfa2c41207a11ecac390182c38bc256:vs.3, portal: 172.31.14.66,3260] (multiple)
   Login to [iface: default, target: iqn.1992-08.com.netapp:sn.9cfa2c41207a11ecac390182c38bc256:vs.3, portal: 172.31.14.66,3260] successful.
   ```

   L'output precedente è troncato; dovrebbe essere visualizzata una `Logging in` `Login successful` risposta per ogni sessione su ciascun file server. Nel caso di 4 sessioni per nodo, ci saranno 8 `Logging in` e 8 risposte. `Login successful`

1. Utilizzare il comando seguente per verificare di aver `dm-multipath` identificato e unito le sessioni iSCSI mostrando un singolo LUN con più policy. Dovrebbe esserci un numero uguale di dispositivi elencati come `active` e quelli elencati come. `enabled` 

   ```
   ~$ sudo multipath -ll
   ```

   Nell'output, il nome del disco è formattato come`dm-xyz`, dove `xyz` è un numero intero. Se non sono presenti altri dischi multipath, questo valore è. `dm-0`

   ```
   3600a09806c5742314e5d52766e79614f dm-xyz NETAPP  ,LUN C-Mode      
   size=10G features='4 queue_if_no_path pg_init_retries 50 retain_attached_hw_handle' hwhandler='0' wp=rw
   |-+- policy='service-time 0' prio=50 status=active
   | |- 0:0:0:1 sda     8:0   active ready running
   | |- 1:0:0:1 sdc     8:32  active ready running
   | |- 3:0:0:1 sdg     8:96  active ready running
   | `- 4:0:0:1 sdh     8:112 active ready running
   `-+- policy='service-time 0' prio=10 status=enabled
     |- 2:0:0:1 sdb     8:16  active ready running
     |- 7:0:0:1 sdf     8:80  active ready running
     |- 6:0:0:1 sde     8:64  active ready running
     `- 5:0:0:1 sdd     8:48  active ready running
   ```

   Il dispositivo a blocchi è ora connesso al client Linux. Si trova sotto il percorso`/dev/dm-xyz`. Non è consigliabile utilizzare questo percorso per scopi amministrativi, ma utilizzare il collegamento simbolico che si trova sotto il percorso`/dev/mapper/wwid`, dove si `wwid` trova un identificatore univoco per il LUN coerente tra i dispositivi. Nel passaggio successivo, fornirai un nome `wwid` descrittivo per distinguerlo dagli altri dischi a percorso multiplo.

**Per assegnare al dispositivo a blocchi un nome descrittivo**

1. Per assegnare al dispositivo un nome descrittivo, crea un alias nel `/etc/multipath.conf` file. A tale scopo, aggiungi la seguente voce al file utilizzando il tuo editor di testo preferito, sostituendo i seguenti segnaposto:
   + Sostituisci `serial_hex` con il valore salvato nella [Configurare iSCSI sul file system FSx for ONTAP](#configure-iscsi-on-fsx-ontap) procedura.
   + Aggiungete il prefisso `3600a0980` al `serial_hex` valore come mostrato nell'esempio. Questo è un preambolo unico per la distribuzione NetApp ONTAP utilizzata da Amazon FSx for NetApp ONTAP.
   + `device_name`Sostituiscilo con il nome descrittivo che desideri utilizzare per il tuo dispositivo.

   ```
   multipaths {
       multipath {
           wwid 3600a0980serial_hex
           alias device_name
       }
   }
   ```

   In alternativa, puoi copiare e salvare il seguente script come file bash, ad esempio. `multipath_alias.sh` È possibile eseguire lo script con i privilegi sudo, sostituendolo `serial_hex` (senza il prefisso 3600a0980) e `device_name` con il rispettivo numero di serie e il nome descrittivo desiderato. Questo script cerca una sezione non commentata nel file. `multipaths` `/etc/multipath.conf` Se ne esiste una, aggiunge una `multipath` voce a quella sezione; in caso contrario, creerà una nuova `multipaths` sezione con una `multipath` voce per il dispositivo a blocchi.

   ```
   #!/bin/bash
   SN=serial_hex
   ALIAS=device_name
   CONF=/etc/multipath.conf
   grep -q '^multipaths {' $CONF
   UNCOMMENTED=$?
   if [ $UNCOMMENTED -eq 0 ]
   then
           sed -i '/^multipaths {/a\\tmultipath {\n\t\twwid 3600a0980'"${SN}"'\n\t\talias '"${ALIAS}"'\n\t}\n' $CONF
   else
           printf "multipaths {\n\tmultipath {\n\t\twwid 3600a0980$SN\n\t\talias $ALIAS\n\t}\n}" >> $CONF
   fi
   ```

1. Riavvia il `multipathd` servizio per `/etc/multipathd.conf` rendere effettive le modifiche.

   ```
   ~$ systemctl restart multipathd.service
   ```

**Per partizionare il LUN**

Il passaggio successivo consiste nel formattare e partizionare il LUN utilizzando. `fdisk`

1. Utilizzate il seguente comando per verificare che il percorso del vostro `device_name` sia presente.

   ```
   ~$ ls /dev/mapper/device_name
   ```

   ```
   /dev/device_name
   ```

1. Partiziona il disco usando`fdisk`. Inserirai un prompt interattivo. Inserisci le opzioni nell'ordine mostrato. È possibile creare più partizioni utilizzando un valore inferiore all'ultimo settore (`20971519`in questo esempio).
**Nota**  
Il `Last sector` valore varia in base alla dimensione del LUN iSCSI (10 GB in questo esempio).

   ```
   ~$ sudo fdisk /dev/mapper/device_name
   ```

   Viene avviato il prompt `fsdisk` interattivo.

   ```
   Welcome to fdisk (util-linux 2.30.2). 
   
   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 0x66595cb0. 
   
   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): 1 
   First sector (2048-20971519, default 2048): 2048 
   Last sector, +sectors or +size{K,M,G,T,P} (2048-20971519, default 20971519): 20971519
                                       
   Created a new partition 1 of type 'Linux' and of size 512 B.
   Command (m for help): w
   The partition table has been altered.
   Calling ioctl() to re-read partition table. 
   Syncing disks.
   ```

   Dopo l'accesso`w`, la nuova partizione `/dev/mapper/partition_name` diventa disponibile. *partition\$1name*Ha il formato *<device\$1name>**<partition\$1number>*. `1`è stato utilizzato come numero di partizione utilizzato nel `fdisk` comando del passaggio precedente.

1. Crea il tuo file system utilizzando `/dev/mapper/partition_name` come percorso.

   ```
   ~$ sudo mkfs.ext4 /dev/mapper/partition_name
   ```

   Il sistema risponde con il seguente output:

   ```
   mke2fs 1.42.9 (28-Dec-2013)
   Discarding device blocks: done 
   Filesystem label=
   OS type: Linux
   Block size=4096 (log=2)
   Fragment size=4096 (log=2)
   Stride=0 blocks, Stripe width=16 blocks
   655360 inodes, 2621184 blocks
   131059 blocks (5.00%) reserved for the super user
   First data block=0
   Maximum filesystem blocks=2151677952
   80 block groups
   32768 blocks per group, 32768 fragments per group
   8192 inodes per group
   Superblock backups stored on blocks: 
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
   Allocating group tables: done 
   Writing inode tables: done 
   Creating journal (32768 blocks): done
   Writing superblocks and filesystem accounting information: done
   ```

**Per montare il LUN sul client Linux**

1. Crea una directory *directory\$1path* come punto di montaggio per il tuo file system.

   ```
   ~$ sudo mkdir /directory_path/mount_point
   ```

1. Montate il file system usando il seguente comando.

   ```
   ~$ sudo mount -t ext4 /dev/mapper/partition_name /directory_path/mount_point
   ```

1. (Facoltativo) Se desideri assegnare a un utente specifico la proprietà della directory di montaggio, sostituiscila *`username`* con il nome utente del proprietario.

   ```
   ~$ sudo chown username:username /directory_path/mount_point
   ```

1. (Facoltativo) Verificate di poter leggere e scrivere dati sul file system.

   ```
   ~$ echo "Hello world!" > /directory_path/mount_point/HelloWorld.txt
   ~$ cat directory_path/HelloWorld.txt
   Hello world!
   ```

   È stato creato e montato correttamente un LUN iSCSI sul client Linux.