summaryrefslogtreecommitdiffstats
path: root/archives/publik-move/README
diff options
context:
space:
mode:
Diffstat (limited to 'archives/publik-move/README')
-rw-r--r--archives/publik-move/README87
1 files changed, 87 insertions, 0 deletions
diff --git a/archives/publik-move/README b/archives/publik-move/README
new file mode 100644
index 0000000..6551f08
--- /dev/null
+++ b/archives/publik-move/README
@@ -0,0 +1,87 @@
+[converted from https://dev.entrouvert.org/projects/sysadmin/wiki/D%C3%A9placement_Publik_Mutualise with html2text]
+
+****** Déplacement Publik Mutualisé¶ ******
+ * Déplacement_Publik_Mutualisé
+ o Procédure
+ # Avant
+ # Pendant
+
+Scripts de déploiement: git://git.entrouvert.org:publik-move.git
+ * list-services.py doit être sur le vieux hobo
+
+Utilisation du script :
+ * publik-cluster-copy update : interroge le vieux hobo et stocke la liste
+ des tenants et des services
+ * publik-cluster-copy sync : copie les fichiers et les dumps des bases de
+ données dans /srv/ceph/migration
+ * publik-cluster-copy ls : liste les tenants
+ * publik-cluster-copy take --tenant demarches-
+ chateauroux.test.entrouvert.org : copie, adapte et pose les fichiers et
+ les db
+ * le flag --verbose permet de suivre les commandes exécutées
+
+Pour une instance au-quotidien, procédure identique, nécessite le flag --auqo
+et --tenant :
+ * ./publik-cluster-copy sync --auquo --tenant demo.test.au-quotidien.com --
+ verbose
+ * ./publik-cluster-copy take --auquo --tenant demo.test.au-quotidien.com --
+ wcsdbname wcs_demo_test_au_quotidien_com --verbose
+
+***** Procédure¶ *****
+**** Avant¶ ****
+ 1. Pré-synchroniser tous les tenants: ./publik-cluster-copy sync
+ 2. parcourir et dupliquer /etc/app/settings.d/ /etc/cron.hourly etc.
+ * ssh app.test.entrouvert.org ls -l /etc/cron.hourly /etc/
+ cron.daily /etc/cron.d
+ * ssh app.test.entrouvert.org ls -l /etc/app/settings.d
+ 1. Préparer les prochains fichiers de zone DNS
+ * à coups de :537,547 s/E[ \t]*.*/E tst/ ou de :537,547 s/E
+ [ \t]*.*/E prod/
+ * ne pas oublier les sous-domaines de au-quotidien.com!
+ 1. Vérifier si les certificats sont dispos sur le nouveau serveur
+ 2. Anticiper des dossiers posés sur des partitions différents (e.g. dossier
+ uploads symlink vers /var/lib/wcs-au-quotidien-uploads/)
+ 3. Si nécessaire convertir wcs vers postgresql: CREATE DATABASE
+ wcs_demo_test_au_quotidien_com WITH OWNER="wcs" TEMPLATE=template0
+ LC_COLLATE='fr_FR.utf8' LC_CTYPE='fr_FR.utf8'; ensuite sudo -u wcs wcs-
+ manage convert_to_sql -d demo.test.au-quotidien.com --database
+ wcs_demo_test_au_quotidien_com
+
+**** Pendant¶ ****
+ 1. couper les cron wcs sur l'ancien et le nouveau:
+ ssh wcs.test.entrouvert.org sudo sed 's/^\*/##\*/' -i /etc/cron.d/wcs
+ ssh wcs.node1.test.saas.entrouvert.org sudo sed 's/^\*/##\*/' -i /etc/cron.d/wcs
+ # ou
+ ssh wcs.entrouvert.org sudo sed 's/^\*/##\*/' -i /etc/cron.d/wcs
+ ssh wcs.node1.prod.saas.entrouvert.org sudo sed 's/^\*/##\*/' -i /etc/cron.d/wcs
+ o Vérifier que cron ne n'exécute plus avant de continuer : ssh wcs.
+ {test|prod}.entrouvert.org ps waux | grep wcs-manage
+ 2. couper les vhost nginx: script qui déploie des 503 là ou c'est
+ nécessaire:
+ o sur gallinette/chicon, mettre à jour: /root/000_503-service-
+ unavailable
+ o lancer /root/diffuse-nginx-config
+ 3. sur le nouvel hyperviseur (e.g. node1.test.saas.entrouvert.org)
+ $ sudo su -
+ # cd /root/publik-move
+ # git pull
+ # ./publik-cluster-copy sync --tenant hobo-foobar.tst.entrouvert.org # prend du temps
+ # ./publik-cluster-copy take --tenant hobo-foobar.tst.entrouvert.org
+ 4. invalider le client sur gallinette/chicon: tenant => tenant-migrated
+ o ssh gallinette.entrouvert.org sudo /root/invalide-tenants-en-503
+ 5. dans le cas de tenant avec dossier uploads symlink vers /var/lib/wcs-au-
+ quotidien-uploads/<site>, synchroniser ce dossier à la main
+ upl=demarches.e-service.seine-et-marne.fr
+ test -L /srv/ceph/lib/wcs/${upl}/uploads && echo "HAAAAA COPY"
+ rm /srv/ceph/lib/wcs/${upl}/uploads
+ rsync -apv --info=progress2 auquo.entrouvert.org:/var/lib/wcs-au-quotidien-
+ uploads/$upl /srv/ceph/migration/wcs-au-quotidien-uploads/
+ mv /srv/ceph/migration/wcs-au-quotidien-uploads/${upl}/uploads /srv/ceph/lib/wcs/${upl}/
+ 6. substituer le fichier de zone DNS, rndc reload
+ 7. attendre 2 minutes (ttl DNS) et tester le plus possible
+ 8. relancer les crons wcs sur l'ancien et le nouveau:
+ ssh wcs.test.entrouvert.org sudo sed 's/^##\\*/\*/' -i /etc/cron.d/wcs
+ ssh wcs.node1.test.saas.entrouvert.org sudo sed 's/^##\\*/\*/' -i /etc/cron.d/wcs
+ # ou
+ ssh wcs.entrouvert.org sudo sed 's/^##\\*/\*/' -i /etc/cron.d/wcs
+ ssh wcs.node1.prod.saas.entrouvert.org sudo sed 's/^##\\*/\*/' -i /etc/cron.d/wcs