Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 8 additions & 4 deletions docs/managed_kubernetes/managed_kubernetes.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,19 +22,21 @@ title: Vue d'ensemble
</div>
</div>

Managed Kubernetes by Cloud Temple est une solution d’orchestration de conteneurs basée sur des produits OpenSources et conçue pour offrir un haut niveau de sécurité, de résilience et d’automatisation sur les plateformes SecNumcloud de Cloud Temple. Chaque cluster est déployé dans un environnement IaaS Cloud-Temple OpenIaaS entièrement dédié au client.
Managed Kubernetes by Cloud Temple est une solution d’orchestration de conteneurs basée sur des produits OpenSources et conçue pour offrir un haut niveau de sécurité, de résilience et d’automatisation sur les plateformes SecNumcloud de Cloud Temple. Chaque cluster est déployé dans un environnement IaaS Cloud-Temple OpenIaaS entièrement dédié au client.

Cette offre est conçue pour les experts Kubernetes et les adeptes de l'open source qui recherchent une solution native, portable, sans surcouche constructeur, sur un OS minimaliste et immuable conçu pour l’automatisation et la sécurité.
Cette offre est conçue pour les équipes ayant une bonne connaissance de Kubernetes et les adeptes de l'open source qui recherchent une solution native, portable, sans surcouche constructeur, sur un OS minimaliste et immuable conçu pour l’automatisation et la sécurité.

### Bénéfices Clés

- **Souveraineté et Réversibilité** : La solution s'appuie sur des standards open source (Kubernetes CNCF) pour éviter toute dépendance technologique et garantir la portabilité de vos applications. L'outil de sauvegarde Veeam Kasten, inclus dans l'offre, est spécialement conçu pour faciliter les migrations d'un cloud à un autre.
- **Sécurité "Zero-Trust" et Gouvernance** : L'architecture repose sur Talos OS, un système d'exploitation immuable sans accès direct (ni shell, ni SSH), ce qui réduit drastiquement la surface d'attaque. Cette approche est couplée à des outils de gouvernance comme Kyverno pour la gestion des politiques et Capsule pour la gestion fine des droits, constituant une base solide pour une stratégie de sécurité "Zero-Trust".
- **Maîtrise des Coûts et Intégration** : La solution intègre nativement des outils de FinOps comme OpenCost pour un suivi précis des consommations. Le modèle économique est transparent, basé sur les ressources IaaS consommées, et l'utilisation de composants open source reconnus (Cilium, Ceph, ArgoCD) facilite l'intégration dans vos écosystèmes existants.
- **Maîtrse des Coûts et Intégration** : La solution intègre nativement des outils de FinOps comme OpenCost pour un suivi précis des consommations. Le modèle économique est transparent, basé sur les ressources IaaS consommées, et l'utilisation de composants open source reconnus (Cilium, Ceph, ArgoCD) facilite l'intégration dans vos écosystèmes existants.

### Une plateforme complète et prête à l'emploi

La solution inclut nativement une stack complète et cohérente d'outils open source de pointe pour couvrir tous les besoins du cycle de vie applicatif :

- **Réseau et Sécurité** : Cilium, Hubble, Kyverno, Capsule
- **Réseau et Sécurité** : Cilium, Hubble, MetalLB, Ingress Nginx, Kyverno, Capsule
- **Stockage** : Rook-Ceph
- **Déploiement Continu (GitOps)** : ArgoCD
- **Observabilité** : Prometheus, Grafana, Loki
Expand Down Expand Up @@ -70,13 +72,15 @@ Conçue pour la production et les applications critiques, cette architecture dis
- **Haute Disponibilité** : 3 nœuds Control Plane répartis sur 3 AZ.
- **Stockage Dédié** : 3 nœuds de stockage dédiés et répartis pour la performance et la résilience.
- **Workers Répartis** : Au minimum 3 nœuds workers, un par AZ.
- **Nœuds Bare Metal (Optionnel)** : Intégration possible de nœuds workers de type **"Bare Metal"** pour des besoins de performance spécifiques, notamment le **support des GPU**.
- **SLA de 99.90%**.

<img src={require('./images/archi_overview.png').default} alt="Architecture Multi-AZ" />

---

### Composants techniques détaillés

L'offre inclus en détail les composants suivants:

- CNI Cillium, avec interface d'observabilité (Hubble)
Expand Down
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
57 changes: 57 additions & 0 deletions docs/managed_kubernetes/tutorials/usinggpu.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
---
title: Utiliser un GPU nVidia
---

import nvidiasmi from './images/nvidiasmi.png'

# Utiliser un GPU sur Managed Kubernetes

Ce tutoriel vous montre comment déployer un pod qui utilise une ressource GPU sur un cluster Managed Kubernetes configuré avec des nœuds "Bare Metal" équipés de GPU NVIDIA.

## Prérequis

- Un cluster Managed Kubernetes avec au moins un nœd worker de type "Bare Metal" avec GPU.

## Manifeste de Pod d'exemple

Voici un exemple de manifeste de pod qui exécute la commande `nvidia-smi` pour vérifier la présence et l'état de la carte GPU.

```yaml
apiVersion: v1
kind: Pod
metadata:
name: nvidia-cuda-check
spec:
runtimeClassName: nvidia # Clé pour Talos NVIDIA
restartPolicy: Never
containers:
- name: nvidia-version-check
image: "nvidia/cuda:13.1.0-devel-ubuntu24.04"
imagePullPolicy: Always
command: ["nvidia-smi"]
```

### Explication du Manifeste

- **`runtimeClassName: nvidia`**: C'est la partie la plus importante. Elle indique à Kubernetes d'utiliser le runtime NVIDIA. Le toolkit NVIDIA s'occupe alors d'injecter les drivers NVIDIA directement dans le pod, ce qui permet au conteneur d'accéder au GPU.
- **`restartPolicy: Never`**: Comme ce pod est juste une commande de vérification, nous ne voulons pas qu'il redémarre après son exécution.
- **`image: "nvidia/cuda:..."`**: Nous utilisons une image fournie par NVIDIA qui contient les outils nécessaires pour interagir avec le GPU.
- **`command: ["nvidia-smi"]`**: C'est la commande qui sera exécutée à l'intérieur du conteneur. `nvidia-smi` est un outil en ligne de commande qui fournit des informations sur les GPU NVIDIA.

Pour plus d'informations sur le fonctionnement du toolkit NVIDIA, vous pouvez consulter la [documentation officielle sur GitHub](https://github.com/NVIDIA/nvidia-container-toolkit).

## Déploiement et Vérification

1. **Déployez le pod** en utilisant la commande `kubectl apply` :
```shell
kubectl apply -f nvidia-smi.yaml
```

2. **Vérifiez les logs du pod** pour voir la sortie de la commande `nvidia-smi` :
```shell
kubectl logs nvidia-cuda-check
```

Si tout est configuré correctement, vous devriez voir une sortie similaire à celle-ci, montrant les détails de votre carte GPU :

<img src={nvidiasmi} alt="nvidia-smi command result"/>
73 changes: 0 additions & 73 deletions docs/managed_kubernetes/tutorials/usingkubecosts.md

This file was deleted.

7 changes: 7 additions & 0 deletions docs/managed_kubernetes/tutorials/usingopencost.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
title: Suivre les coûts avec OpenCost
---
import opencostui from './images/opencost.png'
import opencostgrafana from './images/opencostgrafana.png'
import opencostmcp from './images/opencostmcp.png'
import opencostmcp2 from './images/opencostmcp2.png'
import opencostmcp3 from './images/opencostmcp3.png'
Expand Down Expand Up @@ -47,6 +48,12 @@ Cette vue vous permet de décomposer les coûts par concepts natifs Kubernetes.
Pour une analyse financière encore plus fine, OpenCost peut agréger les coûts en se basant sur les **labels Kubernetes**. Il n'y a pas une option "Label" directe dans le menu, mais OpenCost ingère vos labels et vous permet de créer des agrégations personnalisées. Pour cela, une stratégie de labeling cohérente est essentielle. Par exemple, en utilisant des labels comme `team: backend` ou `product: api-gateway`, vous pourrez analyser les coûts qui correspondent précisément à votre organisation.
Pour ce type d'analyse, vous devez passer par l'intégration IA d'opencost.

## Dashboard Grafana

Un dashboard Grafana est également disponible pour visualiser les données d'OpenCost. Ce dashboard offre une vue alternative et complémentaire à l'interface d'OpenCost, et il conserve l'historique complet des métriques de coûts, vous permettant d'analyser les tendances sur le long terme.

<img src={opencostgrafana} alt="OpenCost Grafana Dashboard"/>

## Utilisation Avancée : Intégration avec une IA (Serveur MCP)

Pour les utilisateurs avancés, OpenCost peut être directement interrogé depuis l'assistant conversationnel Cline (ou autre) grâce au système de **MCP (Multi-purpose Co-processor) servers**. Cela vous permet de scripter des requêtes et d'obtenir des données de coût directement dans vos conversations.
Expand Down
2 changes: 1 addition & 1 deletion sidebars.ts
Original file line number Diff line number Diff line change
Expand Up @@ -231,11 +231,11 @@ const sidebars: SidebarsConfig = {
'managed_kubernetes/tutorials/networking',
'managed_kubernetes/tutorials/usingcapsule',
'managed_kubernetes/tutorials/usinggapi',
'managed_kubernetes/tutorials/usingkubecosts',
'managed_kubernetes/tutorials/usingopencost',
'managed_kubernetes/tutorials/usingkasten',
'managed_kubernetes/tutorials/usingargocd',
'managed_kubernetes/tutorials/usingharbor',
'managed_kubernetes/tutorials/usinggpu',
],
},
],
Expand Down