Procedure to restore OpenStack cluster¶
Procedura da eseguire in caso Juju sovrascriva le modifiche al cluster fatte con Ansible.
Preliminari¶
Login su maasprod@10.3.0.211.
Caricare la chiave SSH id_progress:
$ ssh-agent bash
$ ssh-add ~/.ssh/id_progress
Ripristino configurazione Ceph¶
Eseguire il playbook cephconfig:
$ cd ~/csd-install
$ ansible-playbook -i inventories/prod/cephJuju_ct1-cl1.yml -l ct1-cl1-ceph cephconfig.yml
Verifica configurazione Ceph¶
Eseguire i seguenti comandi:
$ juju run --application cinder-ct1-cl1 "sudo rbd --user cinder-ceph-ct1-cl1 --pool cinder-ceph-ct1-cl1 ls | head -3"
$ juju run --application glance-ct1-cl1 "sudo rbd --user glance-ct1-cl1 --pool glance-ct1-cl1 ls | head -3"
L’output dovrebbe mostrare una serie di Volume-ID, ad es.:
- Stdout: |
0144598b-1a09-4ce6-85fa-3814f27f9a60
0186c668-8827-42bc-881a-b7699cf9dc66
025db41e-3070-4410-96f8-fe0e1e9c5274
...
diviso in 3 blocchi (uno per ciascuna unità di Cinder/Glance).
Ripristino configurazione HTTPS/SAML/OIDC¶
Accedere al DB Percona di OpenStack:
$ juju ssh percona-cluster-ct1-cl1/6 sudo mysql -u root -p$PASS keystone
dove $PASS è la password di root di mysql.
Eseguire il comando:
mysql> select id,url from endpoint where url like '%keystone%';
L’output del comando sarà simile a:
id
url
cb141ba8c8d142ea981c432e601a9fd5
Segnare l’ID dell’enpdoint keystone.
Uscire da Percona.
Editare il file:
~/ansible-fed-keystone/inventories/production/group_vars/all.yml
Sotto la sezione keystone: settare:
public_endpoint_id: <ID ricavato precedentemente>
Girare il playbook ansible di federazione:
$ cd ~/ansible-fed-keystone $ ansible-playbook -i inventories/production/inventory site.yml
Verifica¶
Accedere alla Dashboard alla URL https://dashboard.cloud.garr.it/
Accertarsi che sia possibile accedere tramite autenticazione IDEM (Authenticate with: Federazione IDEM)
Dal proprio progetto provare ad eseguire un’istanza e ad accedervi.
Stop agent Juju sui nodi¶
Eseguire lo script (git: openstack-juju) per spegnere gli agent juju sui nodi su cui si è girato ansible:
openstack-juju/script/juju-service.sh stop|start|status
Prima editare lo script inserendo il nome del file che contiene la lista dei nodi (al posto di juju-units-2017-03-21.txt):
ceilometer-ct1-cl1/0
ceph-proxy-ct1-cl1/2
ceph-radosgw-ct1-cl1/6
ceph-radosgw-ct1-cl1/7
ceph-radosgw-ct1-cl1/8
...
That’s all.