strutture:lnf:dr:calcolo:sistemi:ceph:iscsigw
Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| strutture:lnf:dr:calcolo:sistemi:ceph:iscsigw [2023/11/09 22:26] – created rorru@infn.it | strutture:lnf:dr:calcolo:sistemi:ceph:iscsigw [2023/11/14 14:55] (current) – rorru@infn.it | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== iSCSI Gateway ====== | ||
| + | Il servizio permette di esportare un' | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | |||
| + | ===== Deploy ===== | ||
| + | Assumendo di disporre di un cluster CEPH operativo, per il deploy dei relativi daemon è possibile seguire i seguenti passi: | ||
| + | |||
| + | 1. Applicare una label (di seguito verrà utilizzata una label '' | ||
| + | | ||
| + | ceph orch host label add < | ||
| + | ... | ||
| + | ceph orch host label add < | ||
| + | | ||
| + | 2. Verificare la corretta associaziome delle label con: | ||
| + | | ||
| + | ceph orch host ls | ||
| + | | ||
| + | 3. Creare un pool per ospitare la configurazione (oppure utilizzarne uno già esistente che sia già assegnato all' | ||
| + | ceph osd pool create < | ||
| + | |||
| + | 4. Generare un file per la definizione del servizio come segue: | ||
| + | < | ||
| + | service_type: | ||
| + | service_id: iscsi | ||
| + | placement: | ||
| + | label: iscsi | ||
| + | spec: | ||
| + | pool: < | ||
| + | trusted_ip_list: | ||
| + | api_user: < | ||
| + | api_password: | ||
| + | </ | ||
| + | |||
| + | **Includere tra gli indirizzi abilitati gli IP degli host e assicurarsi che un' | ||
| + | |||
| + | 5. Scatenare il deploy del servizio utilizzando il file: | ||
| + | | ||
| + | ceph orch apply -i / | ||
| + | |||
| + | 6. Verificare i servizi effettivamente avviati con: | ||
| + | | ||
| + | ceph orch ls | ||
| + | | ||
| + | | ||
| + | ===== Creazione Target ===== | ||
| + | |||
| + | I target per lo sharing iSCSI devono essere opportunamente creati utilizzando le API. Per dialogarci è possibile utilizzare la dashboard o i tool da CLI ('' | ||
| + | |||
| + | Per accedere a '' | ||
| + | |||
| + | 1. Accedere a '' | ||
| + | podman exec -it $(podman ps | grep iscsi | grep -v tcmu | cut -d " " -f1 ) /bin/bash | ||
| + | [root@ /]# gwcli | ||
| + | /> | ||
| + | | ||
| + | 2. Visualizzare i target eventuali: | ||
| + | /> cd iscsi-targets | ||
| + | / | ||
| + | o- iscsi-targets ...................................................................... [DiscoveryAuth: | ||
| + | | ||
| + | 3. Creare un nuovo target: | ||
| + | < | ||
| + | />cd / | ||
| + | create iqn.2001-07.com.ceph:< | ||
| + | ok | ||
| + | </ | ||
| + | |||
| + | 4. Aggiungere gli iSCSI GW per il target (gli host sui quali è stato installato il servizio): | ||
| + | < | ||
| + | / | ||
| + | / | ||
| + | Adding gateway, sync' | ||
| + | ok | ||
| + | / | ||
| + | Adding gateway, sync' | ||
| + | ok | ||
| + | / | ||
| + | Adding gateway, sync' | ||
| + | ok | ||
| + | / | ||
| + | o- gateways ...................................................................................... [Up: 3/3, Portals: 3] | ||
| + | o- < | ||
| + | o- < | ||
| + | o- < | ||
| + | </ | ||
| + | |||
| + | 5. Creare un nuovo disco dal pool prescelto per esportarlo come LUN: | ||
| + | < | ||
| + | cd /disks | ||
| + | /disks> create < | ||
| + | ok | ||
| + | </ | ||
| + | |||
| + | 6. Creare un client dopo aver ottenuto l' | ||
| + | < | ||
| + | /disks> goto hosts | ||
| + | / | ||
| + | ok | ||
| + | </ | ||
| + | |||
| + | 7. Assegnare la LUN al client: | ||
| + | < | ||
| + | / | ||
| + | ok | ||
| + | </ | ||
| + | |||
| + | 8. Configurare l' | ||
| + | |||
| + | ===== Configurazione iSCSI initiator ===== | ||
| + | |||
| + | 1. Installare i pacchetti necessari (su distribuzioni non RH-like potrebbero differire): | ||
| + | dnf install iscsi-initiator-utils device-mapper-multipath | ||
| + | | ||
| + | 2. Abilitare il multipath | ||
| + | mpathconf --enable --with_multipathd y | ||
| + | | ||
| + | 3. Aggiungere al file ''/ | ||
| + | < | ||
| + | devices { | ||
| + | device { | ||
| + | vendor | ||
| + | product | ||
| + | hardware_handler | ||
| + | path_grouping_policy | ||
| + | path_selector | ||
| + | failback | ||
| + | path_checker | ||
| + | prio alua | ||
| + | prio_args | ||
| + | fast_io_fail_tmo | ||
| + | no_path_retry | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | 4. Rconfigurare il servizio multipath: | ||
| + | systemctl reload multipathd | ||
| + | | ||
| + | 5. Effettuare il discovery dei portal, e appuntarsi il nome del target: | ||
| + | iscsiadm -m discovery -t st -p < | ||
| + | | ||
| + | 6. Fare login sul target: | ||
| + | iscsiadm -m node -T < | ||
| + | | ||
| + | 7. Verificare la presenza di più path con '' | ||
| + | |||
| + | 8. Verificare la corrispodenza dei devicename con portali: | ||
| + | iscsiadm -m session -P 3 | ||
| + | | ||
| + | |||
