progetti:cloud-areapd:best_practices:storage_external
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| progetti:cloud-areapd:best_practices:storage_external [2015/05/15 07:26] – fcosta@infn.it | progetti:cloud-areapd:best_practices:storage_external [2016/11/30 15:52] (current) – fcosta@infn.it | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ===Storage external to the cloud=== | ||
| + | Si presenta ls necessita` di accedere a dischi dati esterni alla cloud. La macchina che ospita lo storage e` una macchina linux su cui si puo` installare il software di livello due di neutron, percio` puo` entare a far parte degli agent della cloud e accedere alle vm. | ||
| + | |||
| + | Configurazione | ||
| + | * Installazione del software openstack-utils, | ||
| + | * Configurazione solo della parte di neutron livello 2. Si possono copiare da un compute node i files / | ||
| + | * Start di openvswitch e neutron-openvswitch-agent | ||
| + | |||
| + | A questo punto lo storage e` entrato a far parte della cloud. Si puo` verificare con: (previo la creazione e source del file keystone_admin.sh): | ||
| + | | ||
| + | che il servizio sia attivo, e dallo storage: | ||
| + | | ||
| + | che esista il bridge br-tun e ci siano tutti i tunnel gre verso gli altri elementi della cloud. | ||
| + | |||
| + | * Creazione dell' | ||
| + | |||
| + | | ||
| + | | ||
| + | |||
| + | * Assegnazione alla vlan interna: bisogna trovare il valore di segmentation_id della rete che si vuole raggiungere. Si fa con il comando: | ||
| + | |||
| + | neutron net-show network-name | ||
| + | il network-name lo si trova con il comando neutron net-list | ||
| + | | ||
| + | il numero individuato coincide con l'id del tunnel gre di quella rete. Per comodita` assegno lo stesso numero al vlan tag della porta. Supponendo che provider: | ||
| + | |||
| + | | ||
| + | |||
| + | * Assegnazione indirizzo ip e route statica. Se la vm da cui voglio fare il mount sta sulla rete 10.62.1.0 | ||
| + | |||
| + | ip addr add 10.62.1.250/ | ||
| + | ip link set promisc on | ||
| + | ip link set nfs0 up | ||
| + | |||
| + | * Configurazione dei flussi di br-tun | ||
| + | E` necessario definire i percorsi tra i tunnel gre e modificare il vlan tag in id-tunnel. I comandi sono: | ||
| + | |||
| + | | ||
| + | | ||
| + | Dove la prima linea viene eseguita se il numero della vlan vale 4, quindi proviene dallo storage, toglie il tag, mette il tunnel id=4, (corrisponde al segmentation_id gia` trovato) e fa uscire il flusso su tutti i tunnel gre. Se ne puo` selezionare anche uno soltanto, per esempio se la porta 3 fosse quella del tunnel tra lo storage e la macchina che ospita la vm basterebbe mettere output: | ||
| + | | ||
| + | La seconda linea serve per il percorso inverso, quello che arriva con tunnel-id 4, viene cambiato in vlan id 4 per poter passare dall' | ||
| + | |||
| + | Per rendere stabile la configurazione dello storage devono partire al boot openvswitch e neutron-openvswitch-agent; | ||
| + | |||
| + | |||
| + | === Procedura automatica per i flussi === | ||
| + | |||
| + | Si puo` scaricare il tar file [[http:// | ||
| + | |||
| + | < | ||
| + | cd /root | ||
| + | tar xvf gre.tar | ||
| + | cd GRE | ||
| + | ./ | ||
| + | </ | ||
| + | |||
| + | Vengono chiesti la directory di installazione e i segmentation_id. Lo script configura i flussi, prepara lo script da eseguire al boot e lo mette in / | ||
| + | |||
| + | === Debugging === | ||
| + | |||
| + | Se qualche cosa non funziona, la prima cosa da verificare e` se la vm riesce a pingare l'ip dell' | ||
| + | Le azioni da fare sono: | ||
| + | * Individuare l'ip del compute node | ||
| + | * Verificare l' | ||
| + | < | ||
| + | ovs-vsctl show | grep -A1 "type: gre" | ||
| + | </ | ||
| + | ottengo cosi` la lista dei tunnel con i relativi indirizzi ip | ||
| + | * Se il compute node che mi interessa non compare nella lista, faccio ripartire il servizio che dovrebbe crearmi il tunnel mancante e aggiorno i flussi: | ||
| + | < | ||
| + | service neutron-openvswitch-agent restart | ||
| + | / | ||
| + | </ | ||
| + | | ||
| + | Per la lista degli storage e degli indirizzi ip: [[progetti: | ||
