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}} |
| |
| |