guide de maintenance - Karitchi/woodytoys-admin2-b2-q2-y22_23 GitHub Wiki
setup services
1. Organisation des conteneurs sur Portainer :
- Tous les conteneurs sont organisés sur Portainer, une interface de gestion des conteneurs Docker.
- Les conteneurs sont répartis en deux stacks distincts. Le premier stack contient plusieurs conteneurs Ubuntu qui représentent les ordinateurs des employés de l'entreprise dans différents départements, et le deuxième stack contient tous les services nécessaires tels que DNS et serveur Web.
- Chaque conteneur a sa propre configuration stockée dans des bind mounts Docker sur la machine hôte à l'emplacement /home/user/config/.
2. Gestion du réseau entre les conteneurs :
- Tous les conteneurs sont connectés à un réseau Docker IPvlan L3, qui est configuré pour avoir son propre subnet.
- Les conteneurs du stack client ont chacun leur propre subnet, tout comme les conteneurs du deuxième stack contenant les services.
- La communication entre les différents conteneurs est assurée par le réseau Docker IPvlan L3.
- La gestion du réseau entre les conteneurs peut être effectuée via Portainer, en accédant à la section "Networks". Les sous-réseaux et adresses IP des différents subnets peuvent être modifiés à partir de cette section.
3. Emplacement des fichiers de configuration des conteneurs :
- Les fichiers de configuration de chaque conteneur sont stockés dans des bind mounts Docker situés sur la machine hôte à l'emplacement /home/user/config/. Ces fichiers incluent des fichiers de configuration spécifiques à chaque application, tels que les fichiers de configuration Apache pour les conteneurs de serveur Web.
4. Emplacement des Dockerfiles pour les images custom des conteneurs clients et serveurs Web :
- Les Dockerfiles pour les images custom des conteneurs clients et serveurs Web (php-apache) sont stockés sur la machine hôte dans le répertoire /home/user/dockerfile/<nom de l'image>/dockerfile. Ces Dockerfiles incluent des instructions pour la construction des images Docker personnalisées, avec les packages et les configurations nécessaires pour chaque application.
Gestion des utilisateurs : Ajout, suppression et modification
1. Ajout d'éléments :
- Déterminez le type d'élément que vous devez ajouter (par exemple, un nouvel employé).
- Créez un conteneur Docker pour l'élément que vous ajoutez. Vous pouvez le faire via l'interface de gestion des conteneurs de Portainer ou en utilisant la ligne de commande Docker.
- Assurez-vous que le conteneur utilise le subnet approprié pour son type d'élément et configurez-le en conséquence.
- Si l'élément nécessite des fichiers de configuration spécifiques, créez-les et stockez-les dans le bind mount Docker correspondant au conteneur.
2. Suppression d'éléments :
- Trouvez le conteneur Docker correspondant à l'élément que vous voulez supprimer, que ce soit via l'interface de gestion de Portainer ou en utilisant la ligne de commande Docker.
- Arrêtez et supprimez le conteneur Docker.
- Supprimez tous les fichiers de configuration stockés dans le bind mount Docker correspondant au conteneur.
3. Modification d'éléments:
- Trouvez le conteneur Docker correspondant à l'élément que vous voulez modifier.
- Modifiez la configuration du conteneur selon vos besoins (par exemple, changer l'adresse IP du conteneur).
- Si nécessaire, modifiez les fichiers de configuration stockés dans le bind mount Docker correspondant au conteneur.
- Redémarrez le conteneur pour appliquer les modifications.
Mise à jour des éléments du service/de la plateforme
Il est important de maintenir à jour tous les éléments de la plateforme pour garantir la sécurité et la stabilité de l'environnement. La mise à jour peut être effectuée en deux parties : la mise à jour du système d'exploitation de la machine hôte et la mise à jour des conteneurs via Portainer.
1 Mise à jour du système d'exploitation Ubuntu de la machine hôte :
La mise à jour du système d'exploitation Ubuntu doit être effectuée de manière spécifique pour éviter les erreurs et les conflits. Voici les étapes à suivre pour mettre à jour le système d'exploitation :
1. Avant de commencer la mise à jour, il est recommandé de sauvegarder toutes les données importantes présentes sur la machine hôte. En cas de problème, cette sauvegarde sera utile pour restaurer les données.
2. Ouvrir un terminal sur la machine hôte et exécuter la commande suivante pour mettre à jour la liste des paquets disponibles :
sudo apt-get update
3. Ensuite, exécuter la commande suivante pour mettre à jour les paquets déjà installés sur la machine hôte :
sudo apt-get upgrade
4.0 Après avoir terminé la mise à jour des paquets, il est recommandé de redémarrer la machine hôte pour appliquer les changements. Pour redémarrer la machine hôte, exécuter la commande suivante :
sudo reboot
2 Mise à jour des conteneurs via Portainer :
La mise à jour des conteneurs peut être effectuée via Portainer en utilisant l'option "repull images". Avant de mettre à jour un conteneur, il est important de sauvegarder les données présentes dans le conteneur. Voici les étapes à suivre pour mettre à jour les conteneurs :
- Accéder à Portainer et sélectionner le stack qui contient les conteneurs à mettre à jour.
- Cliquer sur l'onglet "Stacks" et sélectionner le stack correspondant aux conteneurs à mettre à jour.
- Cliquer sur le bouton "Update stack" en haut à droite de la page.
- Cocher la case "Pull new images" pour récupérer la dernière version des images Docker.
- Cliquer sur "Update the stack" pour mettre à jour les conteneurs avec les dernières images Docker.
Il est important de noter que la mise à jour des conteneurs peut entraîner des erreurs ou des conflits. Il est recommandé de sauvegarder toutes les données importantes avant de procéder à la mise à jour des conteneurs.
Troubleshooting des dysfonctionnements à l'aide des logs
Si un dysfonctionnement survient sur l'un des conteneurs ou sur l'ensemble de la plateforme, il est important de consulter les logs pour déterminer la cause du problème. Les logs contiennent des informations détaillées sur l'activité de chaque conteneur et peuvent aider à identifier les erreurs ou les problèmes de configuration.
Accès aux logs des conteneurs via Portainer
Les logs des conteneurs sont facilement accessibles via l'interface de gestion Portainer. Suivez les étapes ci-dessous pour y accéder :
- Ouvrez l'interface de gestion Portainer dans votre navigateur et connectez-vous.
- Sélectionnez le conteneur dont vous souhaitez consulter les logs dans la liste des conteneurs.
- Cliquez sur l'onglet "Logs" pour afficher les logs du conteneur.
- Utilisez les options de filtrage pour affiner votre recherche.
Erreurs fréquentes
- Bind9 :
- Problème : Le serveur DNS ne résout pas les noms de domaine.
- Solution : Vérifiez que la configuration du fichier named.conf est correcte et que les zones ont été correctement déclarées. Vérifiez également que les fichiers de zone ont été correctement configurés et qu'ils contiennent les enregistrements DNS appropriés.
- Php-apache :
- Problème : Le serveur Web ne peut pas se connecter à la base de données MySQL.
- Solution : Vérifiez que les informations de connexion à la base de données sont correctes dans le fichier de configuration PHP. Assurez-vous également que la base de données est accessible et que les tables ont été correctement créées.
- Dovecot :
- Problème : Les clients de messagerie ne peuvent pas se connecter au serveur de messagerie.
- Solution : Vérifiez que la configuration de Dovecot est correcte et que les fichiers de configuration ont été correctement créés. Assurez-vous également que les certificats SSL sont correctement configurés. Vérifiez que le service IMAP/POP3 est activé et que les ports appropriés sont ouverts dans le pare-feu.