| Both sides previous revision Previous revision Next revision | Previous revision |
| system_administration:automation:deploy_manager [2022/01/14 10:24] – [Paramétrage de deploy_manager] aziz | system_administration:automation:deploy_manager [2022/10/31 18:08] (current) – [Préparation d'un serveur de déploiements] aziz |
|---|
| ===== Préparation d'un serveur de déploiements ===== | ===== Préparation d'un serveur de déploiements ===== |
| |
| Un seveur préparé est un serveur sur lequel est déployé le dépôt | Un seveur préparé est un serveur sur lequel est déployé le dépôt [[https://git.elosys.net/aziz/deployctl_rembin.git|deployctl_rembin]] dans le HOME de l'utilisateur principal à l'emplacement ''~/rembin''. FIXME |
| [[https://git.elosys.net/aziz/deployctl_rembin.git|deployctl_rembin]] dans le HOME de l'utilisateur principal à l'emplacement ''~/rembin''. | |
| FIXME | |
| <code bash> | <code bash> |
| cd ; \ | cd ; \ |
| git clone https://git.elosys.net/aziz/deployctl_rembin.git rembin ; \ | git clone git@git.elosys.net:sys/rembin.git ; \ |
| cd rembin; \ | cd rembin; \ |
| git checkout level0.2; \ | |
| ./init.sh | ./init.sh |
| </code> | </code> |
| Le script ''init.sh'' met en place une partie importante de l'infrastructure nécessaire pour lancer des instances odoo avec le module ''deploy_manager''. | Le script ''init.sh'' met en place une partie importante de l'infrastructure nécessaire pour lancer des instances odoo avec le module ''deploy_manager''. |
| |
| Après le lancement du script, le dossier personnel de l'utilisateur | Après le lancement du script, le dossier personnel de l'utilisateur doit contenir l'arborescence suivante: |
| doit contenir l'arborescence suivante: | |
| |
| <code> | <code -> |
| . | . |
| ├── extra-addons | ├── extra-addons |
| |
| Le serveur fait tourner deux services docker en permanence : | Le serveur fait tourner deux services docker en permanence : |
| | |
| - ''postgres'', le gestionnaire de bases de données commun à toutes les instances odoo qui seront créées. | - ''postgres'', le gestionnaire de bases de données commun à toutes les instances odoo qui seront créées. |
| - ''wproxy'', le proxy nginx qui redirige vers les instances odoo et qui se charge également de la certification SSL. | - ''wproxy'', le proxy nginx qui redirige vers les instances odoo et qui se charge également de la certification SSL. |
| |
| Une fois le serveur où seront déployés les instances préparé, ''deploy_manager'' peut être utilisé. | |
| |
| ===== Paramétrage de deploy_manager ===== | ===== Paramétrage de deploy_manager ===== |
| |
| Le module ''deploy_manager'' présente l'arborescence de menus suivante : | Le module ''deploy_manager'' présente l'arborescence de menus suivante : |
| * [[system_administration:automation:deploy_manager#deployement_deployement|Deployement/Deployement]] | |
| * [[system_administration:automation:deploy_manager#deployement_instances_instances|Deployement/Instances/Instances]] | * [[deploy_manager#deployement_deployement|Deployement/Deployement]] |
| * [[system_administration:automation:deploy_manager#deployement_instances_mutualisees|Deployement/Instances/Mutualisees]] | * [[deploy_manager#deployement_instances_instances|Deployement/Instances/Instances]] |
| * [[system_administration:automation:deploy_manager#deployement_machines_images_machines|Deployement/Machines/Images & machines]] | * [[deploy_manager#deployement_instances_mutualisees|Deployement/Instances/Mutualisees]] |
| | * [[deploy_manager#deployement_machines_images_machines|Deployement/Machines & Images/Machines]] |
| | * [[deploy_manager#deployement_machines_images_images|Deployement/Machines & Images/Images]] |
| ==== Deployement/Deployement ==== | ==== Deployement/Deployement ==== |
| |
| Dans ce menu, la vue par défaut liste les instances odoo hébergées sur | Dans ce menu, la vue par défaut liste les instances odoo hébergées sur le serveur ''dockerservice''. |
| le serveur ''dockerservice''. | |
| |
| ''dockerservice'' est un serveur de staging. | ''dockerservice'' est un serveur de staging. |
| |
| La vue formulaire permet de renseigner manuellement un service | La vue formulaire permet de renseigner manuellement un service préexistant sur le serveur ''dockerservice''. |
| préexistant sur le serveur ''dockerservice''. | |
| |
| Une fois renseigné, les fonctionnalités suivantes permettent de | Une fois renseigné, les fonctionnalités suivantes permettent de contrôler le service, à savoir : |
| contrôler le service, à savoir : | |
| |
| - La mise à l'arrêt, le démarrage et le redémarrage du service. | - La mise à l'arrêt, le démarrage et le redémarrage du service. |
| - Lancement de la synchronisation du service avec la production. | - Lancement de la synchronisation du service avec la production. |
| - Lister et télécharger des modules. | - Lister et télécharger des modules. |
| | |
| ==== Deployement/Instances/Instances ==== | ==== Deployement/Instances/Instances ==== |
| |
| ==== Deployement/Machines & Images/Machines ==== | ==== Deployement/Machines & Images/Machines ==== |
| |
| Ce menu list les serveurs préparés sur lesquelles des instances | Ce menu list les serveurs préparés sur lesquelles des instances peuvent être déployées depuis les menu. |
| peuvent être déployées depuis les menu. | |
| |
| Les informations nécessaires pour rendre une machine accessible au | Les informations nécessaires pour rendre une machine accessible au module ''deploy_manager'' sont : |
| module ''deploy_manager'' sont : | |
| |
| * L'adresse IP ou l'adresse réseau sur lequel le serveur est accessible. | * L'adresse IP ou l'adresse réseau sur lequel le serveur est accessible. |
| * L'utilisateur au nom duquel la connexion ssh poura se faire sur le serveur | * Le nom d'utilisaeur pour se connecter au serveur |
| * Le port du service SSH disponible sur le serveur. | * Le port du service SSH sur le serveur. |
| * Le nom de domaine sous lequel les instances déployées seront créées. | * Le nom de domaine du serveur. Chaque nouvelle instances Odoo aura son propre sous-domaine. |
| |
| ==== Deployement/Machines & Images/Images ==== | ==== Deployement/Machines & Images/Images ==== |
| |
| Ce model liste les versions des images odoo disponibles. Ces images | Ce model liste les versions des images odoo disponibles. Ces images peuvent ainsi être attribuées aux Machines rendant ainsi possible de lancer des instances odoo de cette version sur le serveur. |
| peuvent ainsi être attribuées aux Machines rendant ainsi possible de | |
| lancer des instances odoo de cette version sur le serveur. | |
| |
| |
| {{drawio>system_administration:live-sys-arch.png}} | |
| ===== Exécution & création de nouvelles instances ===== | ===== Exécution & création de nouvelles instances ===== |
| |
| Le processus de création d'une nouvelle instance odoo sur le serveur | Le processus de création d'une nouvelle instance odoo sur le serveur ''live.elosys.net'' peut être décomposé de la manière suivante : |
| ''live.elosys.net'' peut être décomposé de la manière suivante : | |
| |
| À la création et à l'enregistrement d'un nouveau record sur le model | À la création et à l'enregistrement d'un nouveau record sur le model ''elo.instance'', une commande est envoyé vers le serveur ''live.elosys.net''. |
| ''elo.instance'', une commande est envoyé vers le serveur | |
| ''live.elosys.net''. | |
| |
| Cette commande lance le script ''start_container'' avec des arguments | Cette commande lance le script ''start_container'' avec des arguments tels que le nom de l'instance, la version odoo souhaitée, et la list des applications odoo elosys apps à installer. |
| tels que le nom de l'instance, la version odoo souhaitée, et la list des | |
| applications odoo elosys apps à installer. | |
| |
| Pour rappel, le script ''start_container'' fait partie du dépôt ''deployctl_rembin''. | Pour rappel, le script ''start_container'' fait partie du dépôt ''deployctl_rembin''. |
| | |
| | {{drawio>system_administration:live-sys-arch.png}} |
| | |
| |