Skip to content

Commit

Permalink
intro
Browse files Browse the repository at this point in the history
  • Loading branch information
herveleclerc committed Sep 5, 2024
1 parent 0b7b4a4 commit f98b956
Show file tree
Hide file tree
Showing 2 changed files with 141 additions and 24 deletions.
158 changes: 136 additions & 22 deletions cours/containers/kubernetes/k8s-governance.fr.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,17 +25,52 @@

### CNCF : Pré-requis

- Distribuer sous forme de conteneurs
- Gestion dynamique de la configuration
- Orienté micro services
1. Alignement avec les Objectifs de la CNCF

- Technologies Cloud Natives: Votre projet doit être étroitement lié aux technologies cloud natives, telles que les conteneurs, les orchestrateurs de conteneurs (Kubernetes), les services de réseau, les systèmes de stockage distribués, et les outils de gestion du cycle de vie des applications cloud natives.

- Open Source: Le projet doit être open source sous une licence approuvée par la CNCF (comme Apache 2.0 ou MIT).

- Communauté Active: Il est essentiel de démontrer l'existence d'une communauté active autour du projet, avec des contributions régulières de développeurs et des utilisateurs.

2. Maturation du Projet

- Code de Qualité: Le code source doit être bien structuré, documenté et suivre les meilleures pratiques de développement.

- Tests Unitaires et d'Intégration: Une couverture de tests solide est nécessaire pour garantir la qualité et la stabilité du projet.

- Documentation Complète: Une documentation claire et complète est indispensable pour permettre aux autres développeurs de comprendre et d'utiliser le projet.



### CNCF : Les rôles


- Intendance des projets
- Faire grossir et évoluer l'écosystème
- Rendre la technologie accessible
- Promouvoir la technologie
- Hébergement de Projets Open Source:

La CNCF héberge un grand nombre de projets open source populaires, tels que Kubernetes, Prometheus, Envoy, et bien d'autres. Ces projets sont au cœur de l'infrastructure cloud native moderne.
Elle fournit un cadre de gouvernance et un environnement de collaboration pour ces projets.
Définition de Standards:

La CNCF travaille à la définition de standards et de meilleures pratiques pour les technologies cloud natives.
Elle favorise l'interopérabilité entre les différents projets et outils.

- Promotion de l'Écosystème:

La CNCF organise des événements, des conférences et des meetups pour promouvoir les technologies cloud natives et rassembler la communauté.
Elle favorise l'adoption de ces technologies par les entreprises et les développeurs.

- Incubation de Nouveaux Projets:

La CNCF offre un programme d'incubation pour les nouveaux projets qui répondent à ses critères.
Elle aide ces projets à se développer et à atteindre la maturité nécessaire pour rejoindre la CNCF en tant que projet hébergé.

- Collaboration avec l'Industrie:

La CNCF travaille en étroite collaboration avec les principaux acteurs de l'industrie du cloud, tels que les fournisseurs de cloud public, les entreprises technologiques et les universités.

Elle contribue à façonner l'avenir du cloud computing.


### OCI

Expand All @@ -62,29 +97,98 @@
- Pull Requests <https://github.com/kubernetes/kubernetes/pulls>
- Releases : <https://github.com/kubernetes/kubernetes/releases>
- Projets en incubation :
- <https://github.com/kubernetes-incubator/> (Déprécié)
- <https://github.com/kubernetes-sigs/>

### Kubernetes : Cycle de développement
### Kubernetes : Cycle de développement 1/3

- Chaque _release_ a son propre planning, pour exemple : <https://github.com/kubernetes/sig-release/tree/master/releases/release-1.30#timeline>

- Fréquence des releases :
- Kubernetes suit généralement un cycle de release trimestriel
- Il y a habituellement 3 releases majeures par an


- Structure de versionnage :

- Format : vX.Y.Z (par exemple, v1.26.0)
- X : Version majeure (rarement changée)
- Y : Version mineure (mise à jour trimestrielle)
- Z : Version de patch (mises à jour de sécurité et corrections de bugs)


- Phases du cycle de release :

- Planification
- Développement
- Code Freeze
- Tests et stabilisation
- Release

### Kubernetes : Cycle de développement 2/3

- Chaque _release_ a son propre planning, pour exemple : <https://github.com/kubernetes/sig-release/tree/master/releases/release-1.12#timeline>
- Chaque cycle de développement dure 12 semaines et peut être étendu si nécessaire
- Features freeze
- Code Freeze
- Alpha Release
- Beta Releases
- Release Candidates
- Durée du cycle :

- Environ 12 à 14 semaines pour une release complète


- Support des versions :

- Les 3 dernières versions mineures sont généralement supportées
- Chaque version est supportée pendant environ 9 mois


- Types de fonctionnalités :

- Alpha : Expérimentales, peuvent être instables
- Beta : Plus stables, mais pas garanties pour la production
-Stable : Prêtes pour la production


### Kubernetes : Cycle de développement 3/3

- Processus communautaire :

- Développement piloté par la communauté open-source
- Implication de divers Special Interest Groups (SIGs)


- Compatibilité :

- Effort pour maintenir une compatibilité ascendante entre les versions

- Documentation :

- Mise à jour avec chaque nouvelle release


- Communication :

- Annonces anticipées des dates de release et des changements majeurs
- Publication de notes de release détaillée

### Kubernetes : Communauté

- Contributor and community guide : <https://github.com/kubernetes/community/blob/master/README.md#kubernetes-community>
- Décomposée en [Special Interest Groups] : <https://github.com/kubernetes/community/blob/master/sig-list.md>
- Les SIG sont des projets, centres d'intérêts ou Working Group différents :
- Network
- Docs
- AWS
- etc
- Chaque SIG peut avoir des guidelines différentes.
-
- Les SIG (Special Interest Groups) sont une partie essentielle de la structure organisationnelle de la communauté Kubernetes. Ils jouent un rôle crucial dans le développement et la maintenance de différents aspects de Kubernetes.


| SIG | Description | SIG | Description |
|-----|-------------|-----|-------------|
| API Machinery | Frameworks extensibles pour les API | Apps | Déploiements et charges de travail |
| Architecture | Architecture globale et conception du projet | Auth | Authentification et autorisation |
| Autoscaling | Mise à l'échelle automatique des clusters et workloads | CLI | kubectl et outils en ligne de commande |
| Cloud Provider | Intégration avec les fournisseurs de cloud | Cluster Lifecycle | Outils pour la gestion du cycle de vie des clusters |
| Contributor Experience | Amélioration de l'expérience des contributeurs | Docs | Documentation et site web de Kubernetes |
| Instrumentation | Métriques, logging, et monitoring | Multicluster | Gestion de multiples clusters |
| Network | Réseautage dans Kubernetes | Node | Composants au niveau du nœud |
| Release | Coordination des releases | Scalability | Performance et scalabilité |
| Scheduling | Planification des pods | Security | Sécurité du projet |
| Storage | Stockage et volumes | Testing | Tests et infrastructure de test |
| UI | Interface utilisateur et tableaux de bord | Windows | Support de Windows dans Kubernetes |



### Kubernetes : KubeCon

Expand All @@ -94,4 +198,14 @@ La CNCF organise 3 KubeCon par an :
- Europe (Berlin, Barcelone, Amsterdam etc)
- Chine

Thèmes abordés :

- Les Kubecon couvrent un large éventail de sujets liés à Kubernetes, tels que :
- Les dernières fonctionnalités et évolutions de Kubernetes
- Les meilleures pratiques pour déployer et gérer des applications conteneurisées
- L'intégration de Kubernetes avec d'autres technologies cloud-native (Istio, Helm, etc.)
- Les cas d'utilisation de Kubernetes dans différents secteurs (finance, retail, etc.)
- Les défis et les solutions liés à la sécurité, la performance et la scalabilité des clusters Kubernetes


Pour plus d'informations, Consulter le site officiel de la Cloud Native Computing Foundation (CNCF), l'organisation à l'origine de Kubernetes : <https://www.cncf.io/>
7 changes: 5 additions & 2 deletions cours/intro-awcc.fr.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,18 @@
# Concernant les supports de cours {-}


les Labs sont içi : (https://liascript.github.io/course/?https://raw.githubusercontent.com/alterway/formations/main/labs/liascript/labs-k8s.md)


### Supports de cours réalisés par alter way Cloud Consulting


les Labs sont içi : (https://liascript.github.io/course/?https://raw.githubusercontent.com/alterway/formations/main/labs/liascript/labs-k8s.md)

<https://cloud-consulting.alterway.fr>

![](images/logo-awcc.jpg){height="100px"}

- Copyright © 2014 - 2022 alter way Cloud Consulting
- Copyright © 2014 - 2024 alter way Cloud Consulting
- Licence : [Creative Commons BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/deed.fr)
- Sources : <https://github.com/alterway/formations/>
- PDF : <https://alterway.fr/formations/pdf>
Expand Down

0 comments on commit f98b956

Please sign in to comment.