Il existe de nombreuses distributions Linux. La plupart proposent postgreSQL dans leurs dépôts. Cette documentation n'a pas vocation à documenter toutes les manières d'installer postgreSQL sur toutes les distributions. Chaque utilisateur connaît normalement bien sa distribution et saura trouver les ressources nécessaires sur le web.
Bien que l'emplacement des fichiers de paramétrage puisse être différent selon les distribution, leur utilisation est normalement la même.
Cette documentation documente succinctement le déploiement de postgreSQL sur debian tel qu'il est pratiqué par Cilog mais surtout, la configuration nécessaire pour un bon fonctionnement de Logeproj. Il y est surtout question de ce qu'il faut faire, pas toujours ou à gros traits de comment le faire.
Attention : Cilog décline toute responsabilité en cas de problème rencontré en suivant cette documentation. Vous êtes le root !
Pour des performances optimales de Logeproj, le serveur de base de données doit être convenablement dimensionné. Bien que postgreSQL soit peu gourmand, ses performances sont très affectées dans le cas ou la mémoire vive est pleine et que le serveur se met à utiliser le swap. Il est donc recommandé de se réserver une marge confortable et de surveiller la mémoire vive du serveur. Nous recommandons, bien que de bonnes performances soient possible avec moins en fonction du nombre d'utilisateurs, de déployer postgreSQL sur une machine virtuelle disposant d'au moins 2Go de mémoire vive.
Cilog préfère utiliser les dépôt mis à disposition par postgreSQL que les dépôts Debian. Pour cela, suivre les instructions de la section PostgreSQL Apt Repository de la page https://www.postgresql.org/download/linux/debian/.
Par exemple, sur une Debian 8 Jessie :
deb http://apt.postgresql.org/pub/repos/apt/ jessie-pgdg main
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add - sudo apt-get update
aptitude install postgresql-9.5
Le fichier de configuration pg_hba.conf permet de lister quelles connexions sont autorisées et sur quel canal. Pour rendre les connexions possibles depuis le réseau local, ajouté la ligne suivante (exemple pour le réseau 192.168.42.0/24) :
host all all 192.168.42.0/24 md5
Il est bien sûr possible d'être plus fin mais cela nous semble suffisant.
Un rôle de connexion logeproj doit être créé sur postgreSQL pour que le logiciel puisse se connecter aux bases et accéder aux données. Cet utilisateur devra être propriétaire des bases de données de Logeproj et disposer des droits suivant :
Pour créer le rôle, utiliser soit pgadmin, soit une requête avec psql. L'utilisateur logeproj doit disposer d'un mot de passe que nous conseillons robuste et dont il sera nécessaire de se souvenir pour installer les clients et le service.
Attention à la casse : logeproj doit être écrit en minuscules.
max_connections = 500
shared_buffers = 512 Mo work_mem = 10Mo maintenance_work_mem = 256 Mo effective_cache_size = 1Go checkpoint_completion_target = 0.9
Logeproj utilise deux bases de données par site :
Le nom des bases n'est pas paramétrable : il est composé du code de la structure et d'un suffixe imposé. Par exemple, si le code de la structure est code_structure, deux bases devront être créées :