From 089e2afea14e69458ab68bd36c3587d8c0664c60 Mon Sep 17 00:00:00 2001 From: this-is-tobi Date: Sun, 10 Mar 2024 23:56:02 +0100 Subject: [PATCH] docs: :memo: imrpove documentation --- README.md | 2 +- docs/.vitepress/sidebar.json | 78 +++++++++++++++++----------------- docs/agreement/introduction.md | 6 +-- docs/agreement/kyverno.md | 6 +-- docs/agreement/labels-list.md | 2 +- docs/agreement/mocks.md | 2 +- docs/guide/metrics.md | 8 ++-- docs/index.md | 18 ++++---- docs/platform/introduction.md | 8 ++-- 9 files changed, 65 insertions(+), 65 deletions(-) diff --git a/README.md b/README.md index 5365bff..0ae88f4 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ :warning: __*La plateforme est en cours de construction et des évolutions fréquentes sont à prévoir.*__ :warning: -Ce dépôt est construit et déployé à l'adresse : https://cloud-pi-native.fr +Ce dépôt est construit et déployé à l'adresse : ## L'offre diff --git a/docs/.vitepress/sidebar.json b/docs/.vitepress/sidebar.json index a00c70f..ec945fe 100644 --- a/docs/.vitepress/sidebar.json +++ b/docs/.vitepress/sidebar.json @@ -1,6 +1,44 @@ [ { - "text": "Le produit Hexaforge", + "text": "L'offre de services", + "collapsed": true, + "items": [ + { + "text": "Introduction", + "link": "/agreement/introduction" + }, + { + "text": "Accompagnement", + "link": "/agreement/support" + }, + { + "text": "Exploitation", + "link": "/agreement/exploitation" + }, + { + "text": "Bouchons", + "link": "/agreement/mocks" + }, + { + "text": "Règles kyverno", + "link": "/agreement/kyverno" + }, + { + "text": "Labels kubernetes", + "link": "/agreement/labels-list" + }, + { + "text": "Observabilité", + "link": "/agreement/observability" + }, + { + "text": "F.A.Q", + "link": "/agreement/faq" + } + ] + }, + { + "text": "La plateforme", "collapsed": true, "items": [ { @@ -51,44 +89,6 @@ } ] }, - { - "text": "L'offre Cloud Pi Native", - "collapsed": true, - "items": [ - { - "text": "Introduction", - "link": "/agreement/introduction" - }, - { - "text": "Accompagnement", - "link": "/agreement/support" - }, - { - "text": "Exploitation", - "link": "/agreement/exploitation" - }, - { - "text": "Bouchons", - "link": "/agreement/mocks" - }, - { - "text": "Règles kyverno", - "link": "/agreement/kyverno" - }, - { - "text": "Labels kubernetes", - "link": "/agreement/labels-list" - }, - { - "text": "Observabilité", - "link": "/agreement/observability" - }, - { - "text": "F.A.Q", - "link": "/agreement/faq" - } - ] - }, { "text": "Guide d'utilisation", "collapsed": true, diff --git a/docs/agreement/introduction.md b/docs/agreement/introduction.md index 5f90d89..b04bd3c 100644 --- a/docs/agreement/introduction.md +++ b/docs/agreement/introduction.md @@ -1,7 +1,7 @@ # L'offre Cloud Pi Native La Direction de la Transformation Numérique du Ministère de l'Intérieur et des Outre-mer propose une offre de services autours de deux instances de la plateforme *(OVH SecNumCloud / Cloud π)* à destination des *administrations* ou des *entreprises de services numériques* travaillant pour leur compte. -Cette offre de service est une implémentation du produit *Hexaforge* pour le Ministère de l'intérieur ainsi qu'un accompagment dédié aux spécificités des infrastructures ministériel. +Cette offre de services est une implémentation du produit *Hexaforge* pour le Ministère de l'intérieur ainsi qu'un accompagment dédié aux spécificités des infrastructures ministériel. > __:warning: Attention, les seuls bénéficiaires de cette offre managée sont les administrations ou leurs ESN partenaires__. @@ -26,11 +26,11 @@ Dés que les [prérequis](https://cloud-pi-native.fr/agreement/support.html) son Enfin, le déploiement s'effectue sur différentes cibles d'hébergement possibles : -**Vision d'ensemble de l'offre de service:** +**Vision d'ensemble de l'offre de services:** ![vision](/img/global-vision.png) -Comme mentionné dans le schèma, l'offre de service comprend si vous le souhaitez l'infrastructure hébergeant vos applicatifs. +Comme mentionné dans le schèma, l'offre de services comprend si vous le souhaitez l'infrastructure hébergeant vos applicatifs. Cette infrastrcture peut être: - Un socle kubernetes/Openshift mutualisé dans la zone "Non Protégé" (NP) du ministère de l'intérieur. - Un socle kubernetes/Openshift dédié dans la zone "Non Protégé" (NP) ou la zone "Diffusion Restreinet (DR)du ministère de l'intérieur. diff --git a/docs/agreement/kyverno.md b/docs/agreement/kyverno.md index 20a8e71..d61a968 100644 --- a/docs/agreement/kyverno.md +++ b/docs/agreement/kyverno.md @@ -4,7 +4,7 @@ Kyverno est un moteur de politiques conçu pour Kubernetes. Ces politiques peuvent valider, muter, générer et nettoyer les ressources Kubernetes, ainsi que vérifier les signatures d'images et les artefacts pour aider à sécuriser la chaîne d'approvisionnement des logiciels. -Dans le cadre de l'offre de service du MIOM, les règles suivantes sont appliquées sur les clusters que nous opérons : +Dans le cadre de l'offre de services du MIOM, les règles suivantes sont appliquées sur les clusters que nous opérons : | Kyverno Rules | ValidationFailure Action (Dev, preprod) | ValidationFailure Action (Prod) | Information importantes | Type | description | | -------------------------- | --------------------------------------- | ------------------------------- | ----------------------------------------------------------------------------------------------- | ------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | @@ -26,8 +26,8 @@ Dans le cadre de l'offre de service du MIOM, les règles suivantes sont appliqu | need-containers-ressources | AUDIT | ENFORCE | limits.memory, limits.cpu, request.memory et request.cpu | Bonne pratique | Assure que les demandes de ressources et les limites sont définies pour tous les Pods, pour assurer une utilisation équitable des ressources | | restrict-image-registry | AUDIT | ENFORCE | registres autorisés : docker.io/, harbor.io/, registry.redhat.io/, quay.io/, bitnami/, ghcr.io/ | Sécurité | Restreint les registres d'images à partir desquels les conteneurs peuvent tirer des images, comme mesure de sécurité pour assurer l'utilisation d'images de confiance uniquement | | restrict-nodeport | AUDIT | ENFORCE | | Securité | Restreint l'utilisation des services NodePort, qui peuvent exposer des services à l'extérieur du cluster et représenter un risque de sécurité potentiel | <<>> | -| need-liveness-readiness | AUDIT | ENFORCE | | Bonne pratique | Assure que tous les conteneurs ont l'une des trois sondes (Liveness, Readiness ou Startup), pour s'assurer qu'ils signalent correctement leur statut à Openshift | -| job-history | AUDIT | ENFORCE | | Bonne pratique | Cronjob: ajoute les propriétés `successfulJobsHistoryLimit: 5` et `failedJobsHistoryLimit: 5` | +| need-liveness-readiness | AUDIT | ENFORCE | | Bonne pratique | Assure que tous les conteneurs ont l'une des trois sondes (Liveness, Readiness ou Startup), pour s'assurer qu'ils signalent correctement leur statut à Openshift | +| job-history | AUDIT | ENFORCE | | Bonne pratique | Cronjob: ajoute les propriétés `successfulJobsHistoryLimit: 5` et `failedJobsHistoryLimit: 5` | Explication de la difference entre ENFORCE et AUDIT : - Enforce : Kyverno bloquera l'action (par exemple, la création, la mise à jour ou la suppression d'une ressource) si la politique n'est pas respectée. Cela garantit que toutes les ressources du cluster respectent les politiques mises en place. diff --git a/docs/agreement/labels-list.md b/docs/agreement/labels-list.md index 42abd2e..d0e6b43 100644 --- a/docs/agreement/labels-list.md +++ b/docs/agreement/labels-list.md @@ -1,6 +1,6 @@ # Labélisation des ressources kubernetes -Dans le cadre de l'offre de service du MIOM, il sera demandé d'ajouter les labels suivants sur vos ressources kubernetes : +Dans le cadre de l'offre de services du MIOM, il sera demandé d'ajouter les labels suivants sur vos ressources kubernetes : ## Type d'environnement diff --git a/docs/agreement/mocks.md b/docs/agreement/mocks.md index 1c42ef3..0f803df 100644 --- a/docs/agreement/mocks.md +++ b/docs/agreement/mocks.md @@ -11,7 +11,7 @@ Le chart Helm est disponible sur le [repo github public](https://github.com/clou Ces éléments sont à utiliser uniquement sur les environnements **Hors ministère de l'intérieur**, ainsi il est préférable de ne pas les ajouter dans le repo d'infra de l'application à déployer mais *à côté*. -Ainsi, pour utiliser ce chart HELM, il faut, depuis la console DSO, ajouter un nouveau Dépôt sur un projet existant, choisir comme nom de repo "bouchon" et comme URL : https://github.com/cloud-pi-native/helm-projects-mocks.git et cocher la *case Dépôt d'infrastructure* : +Ainsi, pour utiliser ce chart HELM, il faut, depuis la console DSO, ajouter un nouveau Dépôt sur un projet existant, choisir comme nom de repo "bouchon" et comme URL : et cocher la *case Dépôt d'infrastructure* : ![Ajout du repo bouchon](/img/mocks/add-repo.png) diff --git a/docs/guide/metrics.md b/docs/guide/metrics.md index 1a5a0f5..9247fd8 100644 --- a/docs/guide/metrics.md +++ b/docs/guide/metrics.md @@ -86,8 +86,8 @@ Votre dashboard est maintenant disponible dans la liste des dashbords La communauté propose des dashboards pré-définis pour la plupart des outils. Quelques liens utiles concernant les dashboard: -- https://grafana.com/grafana/dashboards/: Dashboards créés par la communauté -- https://promcat.io/: dashboards créés par la société Sysdig basés sur le principe des golden signals -- https://prometheus.io/docs/prometheus/latest/querying/basics/: Documentation sur le langage PromQL, permettant d'interroger Prometheus -- https://grafana.com/docs/grafana/latest/dashboards/build-dashboards/import-dashboards/: Comment importer un dashboard dans grafana +- : Dashboards créés par la communauté +- : dashboards créés par la société Sysdig basés sur le principe des golden signals +- : Documentation sur le langage PromQL, permettant d'interroger Prometheus +- : Comment importer un dashboard dans grafana diff --git a/docs/index.md b/docs/index.md index 415334f..a94d075 100644 --- a/docs/index.md +++ b/docs/index.md @@ -6,11 +6,11 @@ hero: tagline: Ministère de l'Intérieur et des Outre-mer actions: - theme: brand - text: Le produit Hexaforge - link: /platform/introduction - - theme: brand - text: L'offre Cloud Pi Native + text: L'offre de services link: /agreement/introduction + - theme: brand + text: La plateforme open source + link: /platform/introduction - theme: brand text: Guide d'utilisation link: /guide/get-started @@ -24,17 +24,17 @@ hero: text: View on GitHub link: https://github.com/cloud-pi-native features: - - title: Le produit Hexaforge - details: Présentation d'Hexaforge projet opensource, de sa philosophie, de son architecture, ... - link: /platform/introduction - - title: L'offre Cloud Pi Native + - title: L'offre de services details: Convention de services à destinations des administrations ou leurs partenaires numériques link: /agreement/introduction + - title: La plateforme open source + details: Présentation de la plateforme, de sa philosophie, de son architecture, ... + link: /platform/introduction - title: Guide d'utilisation details: Guide d'utilisation de la console et de la plateforme, tutoriels, bonnes pratiques, ... link: /guide/get-started - title: Guide d'installation - details: Guide d'installation de la solution pour un hébergement self hosted + details: Guide d'installation de la plateforme pour un hébergement self hosted link: /installation/introduction - title: Guide de contribution details: Guide de contribution à la plateforme open source diff --git a/docs/platform/introduction.md b/docs/platform/introduction.md index 11efe6a..8369a9d 100644 --- a/docs/platform/introduction.md +++ b/docs/platform/introduction.md @@ -4,14 +4,14 @@ Le PaaS (Platform-as-a-Service) est une forme de cloud computing dans laquelle l Les plateformes PaaS peuvent s'exécuter dans le cloud ou sur site. En ce qui concerne les offres gérées, le fournisseur héberge le matériel et les logiciels sur sa propre infrastructure et met à disposition de l'utilisateur une plateforme, sous la forme d'une solution intégrée, d'une pile de solutions ou d'un service. -## Description de l'offre +## Description de la plateforme -L'offre "Cloud π Native" est composée d'une **plateforme de services** qu'on a nommé **Hexaforge**.**Hexaforge** est **Open Source** à destination des équipes DevSecOps. +Cloud π Native est composée d'une **plateforme de services Open Source** à destination des équipes DevSecOps. -**Hexaforge** comprend: +**La plateforme** comprend: - Une [usine de logicielle](https://github.com/cloud-pi-native/socle) qui utilise plusieurs services. -- Une [console](https://github.com/cloud-pi-native/console) Web consommant ses services afin de construire et déployer vos ressources applicatifs (projets, membres, environnements, etc). Il est aussi possible d'enregistrer des services custom gràce à son architecture à plugins. Chaque plugin s'enregistre sur des hooks liés au cycle de vie du projet (création d'un projet, d'un environnement ou d'un dépôt, ajout d'un membre, etc...). Les plugins enregistrés recoivent l'ensemble des informations liées aux actions sur les projet (Par le gestionnaire des plugins). Le rajout d'un nouveau plugin est détaillé [ici](https://github.com/cloud-pi-native/console/blob/888119681ed82adf593ba00152511ddeec25faf3/misc/plugins.md) +- Une [console](https://github.com/cloud-pi-native/console) Web consommant ses services afin de construire et déployer vos ressources applicatives (projets, membres, environnements, etc). Il est aussi possible d'enregistrer des services supplémentaires grâce à son `architecture core / plugins`. Chaque plugin s'enregistre sur des hooks liés au cycle de vie du projet (création d'un projet, d'un environnement ou d'un dépôt, ajout d'un membre, etc...). Les plugins enregistrés recoivent l'ensemble des informations liées aux actions sur les projets par le biais du gestionnaire de plugins. L'ajout d'un nouveau plugin est détaillé [ici](https://github.com/cloud-pi-native/console/blob/main/misc/plugins.md) ## Architecture fonctionnelle de la plateforme