k8s: prod-1: intranet: ldap: switch to RBD, gitolite: switch to CephFS
Before doing anything, scale down ArgoCD so it doesn't recreate stuff behind our back:
-
k --context under -n argocd scale deploy --replicas=0
-
k --content under -n argocd scale sts --replicas=0
LDAP migration procedure:
-
Scale down ldap server k --context prod-1 -n intranet scale sts ldap --replicas=0
-
Export the current LDAP data: -
rbd export volumes/volume-d7347890-df54-406c-a06a-93cea4b030cc - > ldap-config
-
rbd export volumes/volume-90c26ffd-61eb-49fc-bf8c-ec557b9acd7d - > ldap-data
-
scp those two in a secondary location in case of an error
-
-
Delete the current ldap PVC k --content prod-1 -n intranet delete pvc ldap-data ldap-config
-
Recreate the PVC from the files in this MR -
Get the ID of the newly created PV, hereafter refered as <ldap-data-pv-id>
and<ldap-config-pv-id>
-
Reimport LDAP data -
rbd import - prod-1.k8s.cri.epita.fr/<ldap-config-pv-id> < ldap-config
-
rbd import - prod-1.k8s.cri.epita.fr/<ldap-data-pv-id> < ldap-data
-
-
Scale LDAP back up k --context prod-1 -n intranet scale sts ldap --replicas=1
Git migration procedure:
-
Scale down gitolite server k --context prod-1 -n gitolite scale deploy gitolite --replicas=0
-
Export the volume, just in case. rbd export volumes/volume-65da1b47-f3a5-4085-acd6-7206a92c240a - | rbd import - prod-1.k8s.cri.epita.fr/gitolite-export
-
Delete the PVC. As the StorageClass has its ReclaimPolicy to Retain, we won't actually lose the data. k --context prod-1 -n gitolite delete pvc gitolite-data
. -
Mount the existing volume rbd map volumes/volume-65da1b47-f3a5-4085-acd6-7206a92c240a && mount /dev/rbdX /mnt-tmp
-
Recreate the PVC from the files in this MR -
Copy the data rsync -avP /mnt-tmp/.gitolite* /mnt-tmp/* /mnt/volumes/prod-1.k8s.cri.epita.fr/<gitolite-data-pv-id>/<some-uuid>/
-
Scale gitolite back up k --context prod-1 -n gitolite scale deploy gitolite --replicas=3
-
Check that everything is working fine. -
If so, rbd rm prod-1.k8s.cri.epita.fr/gitolite-export
andopenstack volume delete 65da1b47-f3a5-4085-acd6-7206a92c240a
After the migrations:
-
merge this MR -
scale ArgoCD back up (only once the MR is merged)