231 lines
8.5 KiB
Markdown
231 lines
8.5 KiB
Markdown
----------------------------
|
|
| Configuration |
|
|
----------------------------
|
|
|
|
Types de données
|
|
===============================
|
|
|
|
Différents type de données
|
|
-------------------------------
|
|
|
|
Voici les différents types de données :
|
|
|
|
- données système : le système d'exploitation mais également les différentes applications et la configuration par défaut. Généralement installés depuis une distribution.
|
|
- données de configuration : les personnalisations (issue des recettes fait par les contributeurs en suivant les configurations utilisateurs)
|
|
- données temporaire :
|
|
- illimité : conservées jusqu'au redémarrage de la machine. Par exemple cache squid, cache base de donnée, ...
|
|
- limité dans le temps : données temporaires qui seront supprimés au démarrage ou si elles sont perimées. Par exemple : session, copie de fichier avant traitement, ...
|
|
- la SWAP
|
|
- données utilisateurs : données produits par l'utilisateur.
|
|
|
|
Les disques
|
|
-------------
|
|
|
|
Il existe trois types de disques :
|
|
|
|
- le disque système qui contiendra les données systèmes
|
|
- le disque de configuration qui comprendra les données de configuration
|
|
- le disque de données qui comprendra les données temporaires et les données utilisateurs
|
|
|
|
Dans ces disques, il peut y avoir des partitions séparées.
|
|
|
|
La mutabilité des données
|
|
-------------------------------
|
|
|
|
Les données système sont immuables.
|
|
Les données de configuration sont immuables.
|
|
Les données temporaires sont mutables.
|
|
Les données utilisateurs sont mutables.
|
|
|
|
Approvisionnement
|
|
-----------------------
|
|
|
|
Toutes les données immuables sont approvisionnées, reproductible et non modifiable.
|
|
Les données mutables peuvent être approvisionnées pour les initialiser.
|
|
Les répertoires temporaires mutables n'ont pas vocation a être provisionnés.
|
|
|
|
Les données mutables peuvent être facilement réinitialisé par l'administrateur et re approvisionnées.
|
|
|
|
Mise à jour
|
|
--------------
|
|
|
|
- des données systèmes d'une machine physique :
|
|
- la machine doit passer dans un état mutable pour les données systèmes
|
|
- la mise à jour système (notamment de la distribution) est effectuée
|
|
- la machine est redémarré
|
|
- des données systèmes d'une machine virtuelle :
|
|
- l'image est regénéré (pas de mise à jour)
|
|
- mise à disposition
|
|
- la machine est redémarré
|
|
- des données immuables de configuration :
|
|
- regénéré
|
|
- mise à disposition
|
|
- la machine est redémarré
|
|
- des données mutables utilisateurs : peuvent être mise à jour si nécessaire
|
|
- des données mutables temporaires : ne sont pas mise à jour, elles sont réinitialisés par un redémarrage.
|
|
|
|
Les recettes
|
|
----------------
|
|
|
|
Il existe deux grandes familles de recette :
|
|
|
|
- les recettes pour construire les données systèmes :
|
|
- pour mettre à disposition un système de base par système d'exploitation et par version
|
|
- pour installer les paquets spécifiques au service, les fichiers, script a exécuter, ...
|
|
- les recettes pour construire les données de configuration et approvisionnées les données mutables :
|
|
- les fichiers de configuration
|
|
- activation de service, ...
|
|
- le nécessaire pour faire les différents approvisionnement et mises à jour
|
|
|
|
Sauvegardes
|
|
----------------
|
|
|
|
Seules les données mutables sont sauvegardées.
|
|
|
|
Elles peuvent être sauvegardées :
|
|
|
|
- directement
|
|
- après extraction
|
|
|
|
Taille
|
|
----------
|
|
|
|
La taille des disques de données est définit par le contributeur dans une recette et n'est pas modifiable par l'administrateur.
|
|
|
|
Seule les partitions mutables sont redimensionnable (il est possible de les augmenter). C'est le contributeur qui décide de les augmenter.
|
|
|
|
La taille des données système ne doivent pas dépasser idéalement les 500 Mo.
|
|
|
|
Différents composants
|
|
=============================
|
|
|
|
Description de l'infrastructure
|
|
---------------------------------------
|
|
|
|
La description de l'infrastructure se fait par les administrateurs suivant les droits.
|
|
L'infrastructure est décrit via la ligne de commande.
|
|
|
|
L'infrastructure se défini avec les objets suivant :
|
|
|
|
- le cluster de virtualisation
|
|
- des noeuds de calculs
|
|
- des sites
|
|
- des zones
|
|
- des services
|
|
|
|
Génération des données de configuration
|
|
----------------------------------------------
|
|
|
|
FIXME description de la partie Rougail
|
|
|
|
Installation du système
|
|
---------------------------
|
|
|
|
Les données du système sont installés de façon automatique.
|
|
L'installation se fait en suivant les recettes mis à diposition par les contributeurs.
|
|
|
|
Les recettes sont spécifiques à la distribution.
|
|
|
|
Le système installé est ensuite mis à disposition dans le disque prévu à cette effet. Ce disque est générique et peut servir pour plusieurs service de même type.
|
|
|
|
Personnalisation des fichiers de configuration
|
|
----------------------------------------------------
|
|
|
|
Les fichiers de configuration sont générés à partir des recettes fournis par les contributeurs et la configuration défini par l'administrateur.
|
|
|
|
L'administrateur prépare la configuration via la ligne de commande.
|
|
|
|
L'administrateur peut faire des modèles de serveurs contenant les valeurs par défaut des différents serveurs hérité de ce serveur modèles. Le multi-héritage et l'héritage multiple est possible.
|
|
|
|
L'administrateur commence par faire un "brouillon" de configuration qu'il devra valider lorsqu'il sera satisfait.
|
|
C'est cette configuration qui sera utilisée pour générer les fichiers de configuration.
|
|
|
|
Ces fichiers de configuration sont ensuite mis à disposition dans le disque prévu à cette effet.
|
|
|
|
Approvisionnement et mise à jour des données mutables
|
|
-----------------------------------------------------
|
|
|
|
L'approvisionnement et la mise à jour se fait via des procédures prévus dans la recette et dans les fichiers de configuration suivant les besoins du service.
|
|
|
|
Fournisseur
|
|
--------------
|
|
|
|
FIXME décrire le fonctionnement de factory
|
|
|
|
Fournisseur d'identité
|
|
--------------------------
|
|
|
|
PKI
|
|
-----
|
|
|
|
- SSL
|
|
|
|
L'ensemble des certificats doivent être signé par une autorité de certification centralisée.
|
|
|
|
Il est nécessaire de gérer 2 types d'autorités :
|
|
|
|
- une autorité extérieur pour que les services soient valide avec des acteurs hors de la plateforme
|
|
- une autorité interne
|
|
|
|
Aucun certificat généré sur la machine ne doit être utilisé.
|
|
|
|
- SSH
|
|
|
|
Les clé SSH sont signés par une autorité géré par l'usine d'infrastructure.
|
|
|
|
Cette signature :
|
|
|
|
- n'a une validité que d'une journée
|
|
- autorise la connexion au serveur via un compte nominatif
|
|
|
|
Les secrets
|
|
--------------
|
|
|
|
Différents mots de passe :
|
|
|
|
- pour se connecter aux différents machines via root (mode secours)
|
|
- un mot de passe par administrateur pour se connecté sur une machine
|
|
- pour se connecter en lecture ou en écriture sur les différents services
|
|
|
|
Outil de l'administrateur
|
|
------------------------------
|
|
|
|
L'administrateur peut piloter l'infrastructure via une ligne de commande unique.
|
|
|
|
L'utilisateur doit avoir une ouvrir une session d'administration pour avoir accès aux différentes fonctionnalités de la plateforme.
|
|
|
|
Les droits d'accès sont validé par la plateforme.
|
|
|
|
Sécurisation de l'infrastructure
|
|
=======================================
|
|
|
|
Réseau d'administration
|
|
----------------------------------------------
|
|
|
|
Un réseau d'administration est mis en place.
|
|
|
|
Les administrateurs doivent être physiquement sur ce réseau pour faire des tâches d'administration sur les machines.
|
|
|
|
Ce réseau n'est pas routable.
|
|
Seul les tâches d'adminitration y sont autorisés.
|
|
|
|
Tout le traffic sur ce réseau doit être considéré comme illégitime et doit générer une alerte.
|
|
|
|
Connexion sur un interpreteur de commande
|
|
-----------------------------------------------
|
|
|
|
Il y a deux type de connexion sur un interpréteur de commande :
|
|
|
|
- automatisée : les connexions se font via SSH avec un compte générique autorisé sur l'ensemble des machines. Ce compte peut devenir root sans mot de passe
|
|
- manuelle :
|
|
- il faut que l'utilisateur ait les droits
|
|
- les droits utilisateurs sont définit dans les données de configuration
|
|
- la connexion est autorisé via SSH
|
|
- la connexion est autorisé via TTY
|
|
- le compte nécessite un mot de passe pour devenir root
|
|
- les connexions SSH sont valide sans passer par le mécanisme TOFU
|
|
- le répertoire de connexion est temporaire et créé à la connexion, aucune donnée utilisateur dans ce répertoire ne sera conservé
|
|
- mode secours : il existe un mode secours où l'utilisateur peut se connecter en root via TTY. Ce mode n'est a utilisé qu'en dernier recours et doit être justifié. Une alerte doit être remontée.
|
|
|
|
L'ensemble des connexions se font via le réseau administratif.
|