Installation système

Une installation système signifie que SAINet est installé directement sur la machine hôte sans passer par un environnement de type “container” comme Docker.

Paramètres

Afin de pouvoir télécharger et installer SAINet, les paramètres ci-dessous doivent être connus au préalable.

Paramètre Description
user Identifiant pour accéder aux paquets d’installation et de mises à jour.
password Mot de passe pour accéder aux paquets d’installation et de mises à jour.
customer id Identifiant du client au sein de SAINet (server.customerFile).
environment id Identifiant de l’environnement d’installation (server.sainet.domain.env). Cette valeur est en lien avec le serveur sur lequel l’application va être installée.
mobile Détermine si la partie mobile doit être déployée, notamment pour permettre l’accès à l’application par browser / tablette (server.mobile.enabled).
Base de données Paramètres de connexion à la base de données. Si aucune base de données n’est installée, il est possible d’utiliser le mot-clé h2 (pour tests uniquement).

Ces paramètres seront demandés lors de l’installation.

Paquets d’installation / mise à jour

Le serveur SAINet se compose d’un unique JAR contenant tout le nécessaire. La première étape consiste donc à récupérer un package de la version souhaitée (voir les types).

Afin de pouvoir accéder au fichier, des identifiants sont nécessaires (voir chapitre précédent).

Version Type Lien
4.10 RELEASE Non publiée - version en cours de développement
4.10 RC Non publiée - version en cours de développement
4.10 SNAPSHOT Télécharger
4.9 RELEASE Télécharger
4.9 RC Télécharger
4.9 SNAPSHOT Télécharger
4.8 RELEASE Télécharger
4.8 RC Télécharger
4.8 SNAPSHOT Télécharger

Le fichier téléchargé est à enregistrer sous le nom sainet.jar à l’emplacement désiré.

Info:

Tous les paquets ci-dessus sont officiellement signés par un certificat QuoVadis.

Afin de vérifier la signature, il est possible d’utiliser la commande ci-dessous:

$ jarsigner -verify sainet.jar
jar verified

Prérequis

Selon la version, voici les programmes devant être installés au préalable sur le système avant de pouvoir effectuer l’installation.

Version Linux Windows
4.10.x AdoptOpenJDK 11 AdoptOpenJDK 11
4.9.x OpenJDK 8 AdoptOpenJDK 8
4.8.x OpenJDK 8 AdoptOpenJDK 8
Note:

La commande java du JDK doit être disponible dans le PATH.

Il est également conseillé d’installer une base de données. Sinon, le serveur utilisera une base de données embarquée (H2).

Attention:

La base de données embarquée n’est pas recommandée pour une utilisation en production !

Installation

L’installation s’effectue avec la commande suivante:

java -jar sainet.jar --runtime <runtime> --install
Note:

S’il est prévu d’installer le service SAINet, le répertoire <runtime> doit être au même endroit que sainet.jar.

Durant l’installation, les différents paramètres seront demandés et le serveur sera installé dans <runtime> (le fichier sainet.jar reste nécessaire).

Attention:

Le chemin complet vers le dossier <runtime> ne doit pas contenir plus de 35 caractères, sinon le serveur SAINet refusera de démarrer. Il est également recommandé d’éviter les caractères spéciaux dans le chemin d’accès.

Les paramètres sont enregistrés dans <runtime>/server.properties. Il est possible de les modifier après-coup, mais cela implique qu’il faudra relancer le serveur avec l’option --update.

Note:

Seul le dossier <runtime> va être créé et utilisé par le serveur SAINet. Aucun autre fichier n’est touché durant l’installation, ni durant l’exécution. Il est possible de déplacer ce dossier après l’installation.

Exécution

Une fois le serveur installé, il peut être lancé avec la commande suivante:

java -jar sainet.jar --runtime <runtime> --start

Le serveur va démarrer et au bout de quelques minutes, le bloc de texte suivant sera affiché:

================================================
SAINet Embedded Server version 4.10.0-20201007-122115.
The domain payara is now up and running. (inst:PYA, env:#local)
The GlassFish/Payara installation dir is /tmp/gfembed14043435345614509593tmp
The SAINet runtime dir is <runtime>
Ports used: HTTP=9090, HTTPS=9191, ADMIN=5858
URL: http://<url>/SNV4SRV-ws-war/EPS
Host: sagittarius/127.0.1.1
================================================
You can use <ctrl> + C to shut it down.

A partir de là, le serveur SAINet est fonctionnel et il est possible de s’y connecter avec les indications affichées dans la console. L’identifiant par défaut est saierp avec le mot de passe bootStrap373746.

Note:

En cas de problème durant le démarrage, l’option --verbose permet d’avoir plus de détails quant à l’erreur qui s’est produite.

Une fois le serveur installé, les prochaines étapes consistent à intégrer SAINet:

Attention:

Bien qu’il soit possible de laisser tourner le serveur SAINet dans une console en arrière-plan, cela n’est pas compatible avec les mises à jour automatiques. Il est donc nécessaire d’installer le service SAINet.

Vérification

Afin de vérifier si le serveur est prêt à répondre, il est possible d’utiliser la commande suivante (ou utiliser un navigateur):

curl http://localhost:9090/SNV4SRV-ws-war/healthcheck

Cela devrait produire un résultat XML avec la forme suivante:

<health>
  <currentTime>1607264881995</currentTime>
  <java-version>11.0.8</java-version>
  <java-vendor>AdoptOpenJDK</java-vendor>
  <java-vm>OpenJDK 64-Bit Server VM</java-vm>
  ...
</health>

Mise à jour majeure

Attention:

Il est fortement recommandé de faire une sauvegarde de la base de données avant toute mise à jour majeure !

Une mise à jour majeure peut impliquer des changements au niveau du système d’exploitation. Selon la version qui va être installée, se référer aux prérequis nécessaires (voir plus haut).

Note:

Afin d’appliquer la mise à jour, il est important que le serveur SAINet ne soit pas en cours d’éxecution. Il faudra donc arrêter le service au préalable.

Finalement, il faut simplement récupérer le package de la version souhaitée et lancer la commande suivante:

java -jar sainet.jar --runtime <runtime> --update