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é.
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 |
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).
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
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).
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
.
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
.
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:
- Installer SAINet en tant que service.
- Intégrer SAINet derrière un serveur HTTP.
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
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).
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