179 lines
5.6 KiB
ReStructuredText
179 lines
5.6 KiB
ReStructuredText
La procédure de migration est la suivante :
|
|
|
|
|
|
Récupérer le mot de passe w.c.s. de connexion à la base de donnée
|
|
-----------------------------------------------------------------
|
|
|
|
Il faut récupérer le mot de passe sur une autre instance, sur la cible :
|
|
https://demarches-eurelien.test.entrouvert.org/backoffice/settings/postgresql
|
|
puis utiliser l'inspecteur pour récupérer le mot de passe.
|
|
Ou sinon en ligne de commande :
|
|
::
|
|
|
|
$ sudo -u wcs wcs-manage shell -d demarches-eurelien.test.entrouvert.org
|
|
In [1]: from quixote import get_publisher
|
|
In [2]: print(get_publisher().cfg['postgresql'].get('createdb-connection-params', {}))
|
|
|
|
|
|
Récupérer les identifiant de connexion à la BD et le dsn sentry sur wcs-olap
|
|
----------------------------------------------------------------------------
|
|
|
|
Il faut récupérer ces information sur la cible, dans les fichiers
|
|
wcs-olap.ini des instances déjà migrées (en recette, il s'agit du même
|
|
mot de passe que pour w.c.s).
|
|
|
|
|
|
Recopier le certificat
|
|
----------------------
|
|
|
|
Pour la recette rien a faire le certificat wildcard est déja en place
|
|
pour test.entrouvert.org
|
|
::
|
|
|
|
$ haproxy.test-hds.saas.entrouvert:/etc/ssl/bundles$ openssl x509 -in test.entrouvert.org.pem -text
|
|
|
|
|
|
Re-diriger vers une page de travaux
|
|
-----------------------------------
|
|
|
|
Ce n'est pas encore possible en recette.
|
|
|
|
|
|
Jouer une première fois le scripts pour cibler la bon noeud
|
|
-----------------------------------------------------------
|
|
|
|
(Le script doit être lancé sur le noeud où les crons ne sont pas désactivés)
|
|
::
|
|
|
|
$ publik_dump/publik_dump.py tenantinfo node2.test.saas.entrouvert.org hobo-ac-versailles.test.entrouvert.org --update
|
|
|
|
Si un tenant est trop lourd (w.c.s à 18G)
|
|
-----------------------------------------
|
|
|
|
* Faire le dump w.c.s à la main
|
|
::
|
|
|
|
$ ssh wcs.node1.prod.saas.entrouvert.org
|
|
$ sudo tar -C /var/lib/wcs -Jcf demarches.demarches.ac-versailles.fr.tar.xz demarches.demarches.ac-versailles.fr
|
|
$ ^D
|
|
$ scp wcs.node1.prod.saas.entrouvert.org:demarches.demarches.ac-versailles.fr.tar.xz .
|
|
|
|
|
|
* Le restaurer dans un tenant .invalid
|
|
::
|
|
|
|
$ scp demarches.demarches.ac-versailles.fr.tar.xz wcs.node1.hds.saas.entrouvert:.
|
|
$ ssh wcs.node1.hds.saas.entrouvert
|
|
$ sudo tar -Jxf demarches.demarches.ac-versailles.fr.tar.xz
|
|
$ mv demarches.demarches.ac-versailles.fr /var/lib/wcs/demarches.demarches.ac-versailles.fr.invalid
|
|
|
|
* Sauter le dump et le restore w.c.s. en décommentant ces 4 lignes dans le script
|
|
::
|
|
|
|
#if service["name"] == "wcs":
|
|
# continue # in order to run rsync instead, a second time on large tenant dump
|
|
|
|
|
|
* Lors de la migration, passer ce répertoire et le synchroniser via rsync
|
|
|
|
|
|
Invalider les tenants
|
|
---------------------
|
|
|
|
Pour ne pas avoir les cron qui se jouent sur les 2 instances.
|
|
::
|
|
|
|
$ publik_dump/publik_dump.py invalidate_source node2.test.saas.entrouvert.org hobo-ac-versailles.test.entrouvert.org
|
|
|
|
|
|
Dump
|
|
----
|
|
|
|
(tenant + base de donnée)
|
|
::
|
|
|
|
$ publik_dump/publik_dump.py dump node2.test.saas.entrouvert.org hobo-ac-versailles.test.entrouvert.org
|
|
|
|
Restore
|
|
-------
|
|
::
|
|
|
|
$ publik_dump/publik_dump.py restore node2.test.saas.entrouvert.org hobo-ac-versailles.test.entrouvert.org --target node1.test-hds.saas.entrouvert --dbtarget sql3.test-hds.saas.entrouvert
|
|
|
|
|
|
Mise à jour des identifiant de connexion à la base de donnée de w.c.s.
|
|
----------------------------------------------------------------------
|
|
|
|
Modification du pickle config.pck :
|
|
::
|
|
|
|
$ scp publik_dump/adapt_wcs_config.py wcs.node1.test-hds.saas.entrouvert:.
|
|
$ ssh wcs.node1.test-hds.saas.entrouvert
|
|
$ sudo -u wcs ./adapt_wcs_config.py /var/lib/wcs/demarches-ac-versailles.test.entrouvert.org.invalid/config.pck --host test-hds.saas.entrouvert.clusters.entrouvert.org --password XXX
|
|
|
|
Remarque, ici on peut tester la connexion :
|
|
::
|
|
|
|
$ ssh wcs.node1.test-hds.saas.entrouvert
|
|
$ psql -U wcs -h test-hds.saas.entrouvert.clusters.entrouvert.org
|
|
Mot de passe pour l'utilisateur wcs : XXX
|
|
|
|
et aussi que tout va bien côté wcs :
|
|
::
|
|
|
|
$ sudo -u wcs wcs-manage shell -d demarches-ac-versailles.test.entrouvert.org.invalid
|
|
|
|
Mise à jour des identifiant de connexion à la BD et du dsn sentry de wcs-olap
|
|
-----------------------------------------------------------------------------
|
|
|
|
Modification de wcs-olap.ini :
|
|
::
|
|
|
|
$ ssh bijoe.node1.test-hds.saas.entrouvert
|
|
$ sudo -u bijoe vi /var/lib/bijoe/tenants/statistiques-ac-versailles.test.entrouvert.org.invalid/wcs-olap.ini
|
|
...
|
|
pg_dsn = dbname='bijoe' host='test-hds.saas.entrouvert.clusters.entrouvert.org' password='YYY'
|
|
|
|
[sentry]
|
|
dsn = https://39e69f265d6d41adbba9cbdd9f1d4573@sentry.entrouvert.org/6
|
|
environment = test
|
|
...
|
|
|
|
Remarque, ici on peut tester la connexion et l'import :
|
|
::
|
|
|
|
ssh bijoe.node1.test-hds.saas.entrouvert
|
|
psql -U bijoe -h test-hds.saas.entrouvert.clusters.entrouvert.org
|
|
Mot de passe pour l'utilisateur bijoe : YYY
|
|
bijoe=> set search_path="statistiques_ac_versailles_test_entrouvert_org"
|
|
bijoe=> \d
|
|
bijoe=> select * from auth_user;
|
|
|
|
|
|
Valider les tenants cibles
|
|
--------------------------
|
|
|
|
Cela va également rétablir les crons.
|
|
::
|
|
|
|
$ publik_dump/publik_dump.py validate_target node2.test.saas.entrouvert.org hobo-ac-versailles.test.entrouvert.org --target node1.test-hds.saas.entrouvert
|
|
|
|
|
|
Rejouer les migrations Passerelle
|
|
---------------------------------
|
|
|
|
Parce qu'il y a les deux connecteurs mdph13 et rsa13 en plus sur
|
|
l'HDS, qui ne sont pas déployé sur le SaaS.
|
|
::
|
|
|
|
$ ssh passerelle.node1.test-hds.saas.entrouvert
|
|
$ sudo -u passerelle passerelle-manage migrate_schemas -v2
|
|
|
|
|
|
Modifier les DNS
|
|
----------------
|
|
|
|
|
|
Retirer la redirection haproxy du SaaS
|
|
--------------------------------------
|