Skip to content

Commit

Permalink
Merge pull request #23 from cloud-pi-native/docs/improve-doc
Browse files Browse the repository at this point in the history
docs: 📝 imrpove documentation
  • Loading branch information
this-is-tobi authored Mar 10, 2024
2 parents 82e9683 + 089e2af commit af28e7a
Show file tree
Hide file tree
Showing 9 changed files with 65 additions and 65 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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 : <https://cloud-pi-native.fr>

## L'offre

Expand Down
78 changes: 39 additions & 39 deletions docs/.vitepress/sidebar.json
Original file line number Diff line number Diff line change
@@ -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": [
{
Expand Down Expand Up @@ -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,
Expand Down
6 changes: 3 additions & 3 deletions docs/agreement/introduction.md
Original file line number Diff line number Diff line change
@@ -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__.
Expand All @@ -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.
Expand Down
6 changes: 3 additions & 3 deletions docs/agreement/kyverno.md
Original file line number Diff line number Diff line change
Expand Up @@ -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 |
| -------------------------- | --------------------------------------- | ------------------------------- | ----------------------------------------------------------------------------------------------- | ------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
Expand All @@ -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.
Expand Down
2 changes: 1 addition & 1 deletion docs/agreement/labels-list.md
Original file line number Diff line number Diff line change
@@ -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

Expand Down
2 changes: 1 addition & 1 deletion docs/agreement/mocks.md
Original file line number Diff line number Diff line change
Expand Up @@ -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 : <https://github.com/cloud-pi-native/helm-projects-mocks.git> et cocher la *case Dépôt d'infrastructure* :

![Ajout du repo bouchon](/img/mocks/add-repo.png)

Expand Down
8 changes: 4 additions & 4 deletions docs/guide/metrics.md
Original file line number Diff line number Diff line change
Expand Up @@ -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
- <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

18 changes: 9 additions & 9 deletions docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -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
Expand Down
8 changes: 4 additions & 4 deletions docs/platform/introduction.md
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand Down

0 comments on commit af28e7a

Please sign in to comment.