Les services EOLE3 s'installent dans un cluster Kubernetes. EOLE3 fournit l'outil Tools pour faciliter leur installation.
L'outil Tools sert à générer les différents fichiers nécessaires au déploiement des charts Helm pour les services EOLE3 dans votre kubernetes.
kubectl
installationhelm
installationjq
(utiliser le paquet de votre distribution)L'outil de paramétrage et de déploiement d'EOLE3 s'installe sur votre poste de travail. Lors du déploiement l'outil va se connecter à votre cluster Kubernetes grâce au fichier "kubeconfig.yaml".
Afin de ne pas polluer votre système, nous conseillons l’utilisation un environnement virtuel (
venv
).
En fonction de votre distribution, vous devez installer le paquet nécessaire à la gestion des venv
apt update
apt install python3-venv
Il faut ensuite créer l’environnement dédié à l’outil
cd
python3 -m venv venv
Une fois installé, il faut activer l’environnement afin que l’installation et l’exécution des commandes se déroulent à l’intérieur
source ~/venv/bin/activate
Ensuite installez le paquet python eole3
pip install eole3 --index-url https://gitlab.mim-libre.fr/api/v4/projects/494/packages/pypi/simple
L’activation du
venv
sera à réaliser après chaque connexion à la machine pour exécuter la commandeeole3
.
Pour sortir du virtual env Python :
deactivate
Dans un dossier dédié sur votre poste de travail, créer un répertoire moncluster
.
Le nom moncluster
est arbitraire. Il est conseillé d'utiliser un nom de dossier sans espaces, sans accents et en minuscules seulement. :
mkdir moncluster
cd moncluster
On peut afficher la configuration par défaut avec les commandes suivantes.
source ~/venv/bin/activate
eole3 config socle
deactivate
Dans le dossier moncuster
, créer un fichier socle.ini et l'adapter à votre environnement.
Il faut au minimum adapter la valeur de la variable domain à votre nom de domaine :
cat > socle.ini <<EOF
[general]
#general domain for the deployment
domain=mon-domaine.fr
EOF
Ensuite générer les fichiers de déploiement avec la commande :
source ~/venv/bin/activate
eole3 -c socle.ini build socle
deactivate
Si vous n'utilisez pas Cert Manager, copier la clef privée (tls.key) et le certificat (tls.crt) wildcard ou multi-domaines dans le répertoire "./install". Vous devez obtenir :
./install/tls.key
./install/tls.crt
Déployer la configuration avec les commandes :
cd ./install
bash deploy
Pour mettre à jour le socle, il vous faut :
Éditer le fichier moncluster/socle.ini et mettre à jour les options.
Depuis le dossier moncluster
, générer les fichiers de déploiement avec la commande :
cd moncluster
source venv/bin/activate
eole3 -c socle.ini build socle
deactivate
Mettre à jour la configuration avec les commandes :
cd ./install && bash update
Page d'installation des services additionnels
Page d'installation des outils d'administration
Vous pouvez spécifier les fichiers de configurations utilisés pour la génération de la configuration EOLE3 et le dossier de stockage des fichiers générés par la commande build.
eole3 build --help
Usage: eole3 build [OPTIONS] COMMAND [ARGS]...Options:
-c, --config PATH Configuration value file
-o, --outputdir TEXT Output Directory (default: ./install)
--help Show this message and exit.Commands:
addon Generate addon
admin-tool Generate admin tool
socle Generate all templates for all basic services in outputdir
Exemple :
eole3 --config path/to/my-vars.ini --config /path/to/my-cluster-vars.ini --output /path/to/my-install build socle
eole3 build addon --help
Usage: eole3 build addon [OPTIONS]
Generate addon
Options:
-n, --name TEXT Addon name [required]
--help Show this message and exit.
Exemple pour CodiMD:
eole3 --config path/to/my-vars.ini --config path/to/my-cluster-vars.ini --config path/to/my-codimd-vars.ini build addon -n codimd
eole3 build admin-tool --help
Usage: eole3 build admin-tool [OPTIONS]Generate admin tool
Options:
-n, --name TEXT Admin tool name
--help Show this message and exit.
Exemple pour SuperCRUD:
eole3 --config path/to/my-vars.ini --config path/to/my-cluster-vars.ini --config path/to/my-admin-tool-vars.ini build admin-tool -n supercrud