HA suite
This commit is contained in:
parent
79ea64ec61
commit
f1a7e95b56
|
@ -3,24 +3,24 @@
|
|||
Ce chapitre présente des moyens permettant d'ajouter de la redondance en vue de
|
||||
garantir la disponibilité d'une installation de Publik. La charge des
|
||||
opérations est dès lors répartie sur plusieurs machines; et le service est
|
||||
maintenu en cas de panne sur un des composants.
|
||||
maintenu en cas de panne d'un des composants.
|
||||
|
||||
## Pré-requis
|
||||
|
||||
Se référer aux <a href='../pre-requis/'>pré-requis</a> avec les différences suivantes:
|
||||
|
||||
Voici les machines utilisée dans une architecture à haute disponibilité:
|
||||
Se référer aux <a href='../pre-requis/'>pré-requis</a> avec les différences
|
||||
suivantes: voici les machines utilisée dans une architecture à haute
|
||||
disponibilité:
|
||||
|
||||
* 2 machines physiques identiques (ici nommées *web1* et *web2*):
|
||||
|
||||
* CPU 8 cœurs
|
||||
* 32Go de mémoire vive
|
||||
* 100Mo d'espace disque
|
||||
* 100Go d'espace disque
|
||||
* Debian 8 installé en architecture amd64 (installation minimale)
|
||||
|
||||
* un service frontal HAProxy (géré par le client)
|
||||
* un service de base-de-donnée PostgreSQL (cluster géré par le client)
|
||||
* un service de partage de fichiers NFS (cluster géré par le client)
|
||||
* un service de base-de-donnée PostgreSQL disposant de 200Go d'espace (cluster géré par le client)
|
||||
* un service de partage de fichiers NFS disposant de 200Go d'espace (cluster géré par le client)
|
||||
|
||||
## Installation des composants
|
||||
|
||||
|
@ -29,17 +29,17 @@ Voici les machines utilisée dans une architecture à haute disponibilité:
|
|||
Commencer par une installation mono-machine. Ensuite déplacer les éléments de
|
||||
configuration vers le partage de fichiers :
|
||||
|
||||
* les répertoires de configuration */etc/xxx* des composants Publik,
|
||||
copiés vers */srv/nfs/publik/etc/xxx,*
|
||||
* les données */var/lib/xxx* de ces mêmes composants, copiés vers
|
||||
*/srv/nfs/publik/var/lib/xxx,*
|
||||
* la configuration nginx ; copiés vers */srv/nfs/publik/etc/nginx/xxx*
|
||||
et */srv/nfs/publik/var/www/html*.
|
||||
* les répertoires de configuration `/etc/xxx` des composants Publik,
|
||||
copiés vers `/srv/nfs/publik/etc/xxx,`
|
||||
* les données `/var/lib/xxx` de ces mêmes composants, copiés vers
|
||||
`/srv/nfs/publik/var/lib/xxx,`
|
||||
* la configuration nginx ; copiés vers `/srv/nfs/publik/etc/nginx/xxx`
|
||||
et `/srv/nfs/publik/var/www/html`.
|
||||
|
||||
Sur *web1* et *web2* nous pointons les fichiers partagés à l'aide de liens symboliques :
|
||||
|
||||
* Configuration : */etc/xxx* → */srv/nfs/publik/etc/xxx,*
|
||||
* Données : */var/lib/xxx* → */srv/nfs/publik/var/lib/xxx,*
|
||||
* Configuration : `/etc/xxx` → `/srv/nfs/publik/etc/xxx,`
|
||||
* Données : `/var/lib/xxx` → `/srv/nfs/publik/var/lib/xxx,`
|
||||
* Configuration nginx.
|
||||
|
||||
### Détail des opérations
|
||||
|
@ -57,8 +57,8 @@ Déplacement des configurations et données des services Publik:
|
|||
service wcs stop
|
||||
mv /etc/wcs /srv/nfs/publik/etc/
|
||||
ln -sf /srv/nfs/publik/etc/wcs /etc/wcs
|
||||
mv /var/lib/wcs /srv/nfs/publik/var-lib/
|
||||
ln -sf /srv/nfs/publik/var-lib/wcs /var/lib/wcs
|
||||
mv /var/lib/wcs /srv/nfs/publik/var/lib/
|
||||
ln -sf /srv/nfs/publik/var/lib/wcs /var/lib/wcs
|
||||
service wcs start
|
||||
|
||||
2. Service *combo*
|
||||
|
@ -66,8 +66,8 @@ Déplacement des configurations et données des services Publik:
|
|||
service combo stop
|
||||
mv /etc/combo /srv/nfs/publik/etc/
|
||||
ln -sf /srv/nfs/publik/etc/combo /etc/combo
|
||||
mv /var/lib/combo /srv/nfs/publik/var-lib/
|
||||
ln -sf /srv/nfs/publik/var-lib/combo /var/lib/combo
|
||||
mv /var/lib/combo /srv/nfs/publik/var/lib/
|
||||
ln -sf /srv/nfs/publik/var/lib/combo /var/lib/combo
|
||||
service combo start
|
||||
|
||||
3. Même procédure avec *fargo*
|
||||
|
@ -95,8 +95,8 @@ Autres partages via NFS :
|
|||
2. Éléments web statiques
|
||||
|
||||
cd /var/www
|
||||
mv html /srv/nfs/publik/var-www/
|
||||
ln -sf /srv/nfs/publik/var-www/html .
|
||||
mv html /srv/nfs/publik/var/www/
|
||||
ln -sf /srv/nfs/publik/var/www/html .
|
||||
|
||||
3. APT : dépôts et préférences backports
|
||||
|
||||
|
@ -107,21 +107,21 @@ Autres partages via NFS :
|
|||
|
||||
### Opérations sur web2
|
||||
|
||||
**Attention** : l'UID et le GUID de l'utilisateur "web" doit être
|
||||
**Attention** : l'UID et le GUID de l'utilisateur *www-data* doit être
|
||||
identique.
|
||||
|
||||
On prépare les répertoires de configuration et de données des composants
|
||||
Préparer les répertoires de configuration et de données des composants
|
||||
Publik **avant** leur installation :
|
||||
|
||||
1. Service wcs
|
||||
|
||||
ln -sf /srv/nfs/publik/etc/wcs /etc/wcs
|
||||
ln -sf /srv/nfs/publik/var-lib/wcs /var/lib/wcs
|
||||
ln -sf /srv/nfs/publik/var/lib/wcs /var/lib/wcs
|
||||
|
||||
2. Service *combo*
|
||||
|
||||
ln -sf /srv/nfs/publik/etc/combo /etc/combo
|
||||
ln -sf /srv/nfs/publik/var-lib/combo /var/lib/combo
|
||||
ln -sf /srv/nfs/publik/var/lib/combo /var/lib/combo
|
||||
|
||||
3. Même procédure avec *fargo*
|
||||
4. Même procédure avec *passerelle*
|
||||
|
@ -131,7 +131,7 @@ Publik **avant** leur installation :
|
|||
|
||||
ln -sf /srv/nfs/publik/etc/hobo-agent /etc/hobo-agent
|
||||
|
||||
On utilise aussi les autres configurations partagées via NFS :
|
||||
Préparer la configuration des autres composants:
|
||||
|
||||
1. Configurations nginx
|
||||
|
||||
|
@ -145,7 +145,7 @@ On utilise aussi les autres configurations partagées via NFS :
|
|||
|
||||
cd /var/www
|
||||
rm -rf html
|
||||
ln -sf /srv/nfs/publik/var-www/html .
|
||||
ln -sf /srv/nfs/publik/var/www/html .
|
||||
|
||||
3. APT : dépôts et préférences backports
|
||||
|
||||
|
@ -153,10 +153,9 @@ On utilise aussi les autres configurations partagées via NFS :
|
|||
rm -rf sources.list.d preferences.d
|
||||
ln -sf /srv/nfs/publik/etc/apt/* .
|
||||
|
||||
On peut alors lancer l'installation des composants packagés. Attention,
|
||||
lors de cette étape, toujours refuser les éventuelles demandes de
|
||||
modification des fichiers de configuration (on utilise ceux partagés par
|
||||
NFS) :
|
||||
Lancer l'installation des composants packagés. Attention, lors de cette étape,
|
||||
toujours refuser les éventuelles demandes de modification des fichiers de
|
||||
configuration (on utilise ceux partagés par NFS) :
|
||||
|
||||
apt install wcs wcs-au-quotidien
|
||||
apt install combo
|
||||
|
@ -174,10 +173,6 @@ Nous comparons la liste des paquets installés entre web1 et web2
|
|||
- publik-base-theme,
|
||||
- gettext
|
||||
|
||||
## Configuration du frontal HAProxy
|
||||
|
||||
HAProxy doit disposer du ou des certificats X509.
|
||||
|
||||
## Désactivation des *crons* Publik sur web2
|
||||
|
||||
Il est **très important** de désactiver les crons de Publik sur web2,
|
||||
|
@ -214,6 +209,8 @@ Faire de même avec :
|
|||
- les services bientôt systemd-isés (avant fin 2017, donc prévoir dès
|
||||
maintenant le supplément) : authentic2-multitenant, hobo,
|
||||
hobo-agent, wcs
|
||||
|
||||
|
||||
## Configuration du frontal HAProxy
|
||||
|
||||
HAProxy doit disposer du ou des certificats X509.
|
||||
|
||||
|
|
Loading…
Reference in New Issue