Installer un serveur OpenERP avec l'outil automatique xoe
Par SISalp le lundi 11 janvier 2010, - Télécharger et installer Odoo - Lien permanent
xoe permet de gérer OpenERP sur un serveur minimal debian lenny ou un serveur Ubuntu. Cet article traite de l'automatisation du processus d'installation du logiciel server OpenERP.
Pour une utilisation complètement automatisée de xoe et d'OpenERP, vous pouvez vous référer à l'article : Installation-OpenERP-procedure-totalement-automatisee-d-installation-de-xoe-et-d-OpenERP.
Pour l'installation du logiciel client-web OpenERP, aussi connu sous le nom etiny, se remporter à l'article Installer le clientweb OpenERP avec l'outil automatique xoe
Pour plus d'information sur l'utilisation de xoe, se reporter au manuel.de xoe
Durée de la procédure
- 30 minutes
Difficulté : niveau avancé
- Connaître les principales commandes shell,
- savoir paramétrer un serveur de base,
- savoir utiliser vi pour éditer deux fichiers.
- L'utilisation d'un serveur OpenERP avec des données réelles nécessite la maîtrise de l'administration des serveurs Linux et du logiciel OpenERP.
Attention : brouillon, non testé à ce jour, utilisé sous debian-lenny
Je ne sais pas pourquoi, la traduction de Google écrit xoe en lettres capitales en traduction anglaise, lisez bien xoe en petites lettres dans tout cet article.
Connexion sous root, ou bien utiliser sudo devant chaque commande
Sur une machine (physique ou virtuelle) installer une version minimale de debian lenny.
Que vous faudra-t-il pour mener cette procédure au bout ?
Au cours de la procédure vous devez avoir un accès "root" sur la machine physique ou virtuelle.
- Déterminer le nom de l'utilisateur linux qui sera utilisé pour gérer le serveur, ainsi que son mot de passe. Evitez les noms d'utilisateur ambigus comme "admin" ou "openerp". Nous utilisons "sisalpuser" sur nos serveurs. Remplacer openerp_unix_user par le nom d'utilisateur et openerp_user_password par son mot de passe. Cet utilisateur sera créé par xoe.
- Disposer d'un compte sur un serveur d'envoi de messagerie smtp, par exemple gmail de Google afin que le serveur puisse émettre des messages de services vers votre compte. Ces paramètres seront nécessaires pour paramétrer le fichier de configuration de ssmtp.
- Disposer d'une adresse mail pour recevoir ces mêmes messages. Nous utilisons des comptes gmail sur nos serveurs.
- Connaître l'adresse réseau de votre serveur que vous pouvez obtenir par la commande "ifconfig". Dans le cas d'un serveur virtuel, il s'agit de l'adresse du serveur virtuel et non pas l'adresse du host.
- Choisir un nom de service unique pour chaque service OpenERP, nous avons pris oerp-506 et oerp-5XX par la suite et les rôles postgresql, que nous avons fixés à pg-oerp-506 et pg-oerp-5XX..
- Choisir un mot de passe dit "super-administrateur" nécessaire pour créer, sauvegarder, restorer et supprimer des bases de données, soit ABOPASSWD1 et ABOPASSWD2 par la suite
- Enfin, deux exemples de serveurs sont donnés, mais vous devriez décider de la version du logiciel que vous souhaitez utiliser et les ports que vous redirigez par le par-feu, ici les versions 5.0.6 et la dernière révision disponible de la 5.0 ainsi que les ports 8071, 8072, 8073 et 8074.
Première étape : mettre en place le paysage
installer xoe
en root
cd /usr/local/bin wget http://download.sisalp.net/xoe chmod 755 xoe
vérifier le bon fonctionnement de xoe avec quelques commandes de base
xoe --update xoe --version xoe --help
Mise à jour, dépendences, utilitaires et environnement de configuration
xoe --install -server openerp_unix_user openerp_user_password
xoe enchaine l'ensemble des opérations d'installation des dépendances et crée l'utilisateur openerp_unix_user
Paramétrage complémentaire de l'environnement du serveur
adapter le fichier /etc/ssmtp pour l'envoi de mails
vi /etc/ssmtp
A partir de maintenant, quitter root et changer d'utilisateur vers openerp_unix_user
su openerp_unix_user xoe --verbose -blabla
mettre la crontab à votre goût
crontab -e
Adapter la configuration de base de xoe
xoe --config -edit
Attention, dans ce fichier les séparateurs sont des -tab- et non des blancs
Les paramétres importants sont :
openerp_address: 10.0.0.100
mettre l'adresse réelle du serveur obtenue par la commande ifconfig,
admin_mail: admin.openerp@domaine.ext shop_mail: -
votre adresse mail pour recevoir les rapports du serveur
:wq
sauvegarder et quitter l'édition du fichier de configuration
Deuxième étape : Déclarer un serveur OpenERP et préparer son installation automatique
Il faut maintenant définir votre premier serveur OpenERP en lui choisissant un nom
Vous pouvez éditer de nouveau le fichier de configuration ou bien utiliser les fonctions de déclaration de xoe
Pour ajouter un serveur OpenERP appelé oerp-506 utilisant le code de la version 5.0.6
syntaxe incertaine
xoe --config -new -directory -server oerp-506 wget http://download.sisalp.net/openerp-server-5.0.6.tar.gz server xoe --config -new -service oerp-506 Auto pg-oerp-506 server/bin/openerp-server.py http 8070 8071 ABOPASSWD1 xoe --config -new -database oerp-506 serv1 save
créer une base avec ce serveur nécessitera de connaître le mot de passe ABOPASSWD1.
Une base dont le nom commencera par les lettres serv1 sera automatiquement sauvegardée par la crontab ou à l'arrêt du serveur OpenERP
Pour ajouter un deuxième serveur OpenERP appelé oerp-5XX utilisant le code de la version de bazaar de la veille au soir
xoe --config -new -directory -server oerp-5XX wget http://download.sisalp.net/openerp-server-5.uptodate.tar.gz xoe --config -new -directory -addons oerp-5XX wget http://download.sisalp.net/openerp-addons-5.uptodate.tar.gz xoe --config -new -directory -specific oerp-5XX wget http://download.sisalp.net/openerp-specific-5.uptodate.tar.gz xoe --config -new -service oerp-5XX Auto pg-oerp-5XX server/bin/openerp-server.py http 8072 8073 ABOPASSWD2 xoe --config -new -database oerp-5XX serv2 save
Pour contrôle le paramétrage généré par ces commandes
xoe --config
Pour éditer le fichier de configuration
xoe --config -edit
Voici en exemple le fichier du serveur de démonstration sisalp.net
# global values # ============= version: 2.5 Saturday_09/19/09-08:31:01
openerp_main: /home/sisalpuser/openerp openerp_secure_mode: unsecure openerp_address: 10.0.0.101 openerp_url: openerp.sisalp.net admin_mail: dominique.chabord@sisalp.org shop_mail: service.client@bdll.fr #-- # definition du serveur dev5 # ========================== #-- directory:server:dev5: Auto copy /home/sisalpuser/openerp/packages/openerp-V5-server.tar.gz server directory:addons:dev5: Auto copy /home/sisalpuser/openerp/packages/openerp-V5-addons.tar.gz addons directory:extra-addons:dev5: Auto copy /home/sisalpuser/openerp/packages/openerp-V5-extra-addons.tar.gz extra-addons directory:specific:dev5: Auto wget http://download.sisalp.net/specific-5.uptodate.tar.gz specific service:dev5: Auto pg-dev5 /home/sisalpuser/openerp/dev5/server/bin/openerp-server.py http 8073 8074 admin
#-- # definition du serveur stable5 # ============================ #-- directory:server:stable5: Auto wget http://download.sisalp.net/openerp-server-5.0.6.tar.gz server directory:specific:stable5: Auto wget http://download.sisalp.net/specific-5.uptodate.tar.gz specific service:stable5: Auto pg-stable5 /home/sisalpuser/openerp/stable5/server/bin/openerp-server.py http 8071 8072 admin
Télécharger le code des serveurs OpenERP déclarés
xoe --directory -download
Vous pouvez ignorer le téléchargement du répertoire openerp-specific-5.uptodate.tar.gz dont le rôle est de reporter des spécificités propres au serveur, mais dans ce cas n'oubliez pas de copier le contenu de /home/openerp_unix_user/openerp/oerp-5XX/addons /home/openerp_unix_user/openerp/oerp-5XX/server/bin/addons
Troisième étape: Démarrer le serveur et contrôler son fonctionnement
Créer les rôles postgresql
avec les privilèges root (sudo ou si)
xoe --database -createuser pg-oerp-506
Puis on démarre tous les serveurs OpenERP déclarés
retour sous l'utilisateur unix
xoe --start
Contrôle
xoe --watch -running xoe --status
Diagnostique des problèmes
xoe --log oerp-5XX
Remarques
mode secure/unsecure
- le mode unsecure signifie que l'utilisateur unix défini au départ démarre les différents serveurs openerp. Ceux-ci ne sont donc pas emprisonnés dans l'espace d'un utilisateur spécifique. L'utilisateur unix commun n'a pas besoin d'accéder à des droits root. Il faut donc passer sous root pour créer le rôle pg-oerp-506 par la commande xoe --database -createuser pg-oerp-506
- le mode secure signifie que chaque serveur openerp est lancé avec un utilisateur linux spécifique et ne peut aller voir ce qui se passe chez son voisin. Dans ce cas, l'utilisateur unix commun se voit attribuer la possibilité d'effectuer des tâches d'administration par sudo. la création du rôle devient xoe --database -createuser pg-oerp-506
syntaxe des commandes xoe
les commandes et options peuvent être abrégées si elles ne deviennent pas ambigües. Par exemple
xoe --verb -bl
est équivalent à
xoe --verbose -blabla
Cet article doit être vérifié et corrigé.