Phase 7 - Kubernetes sur OpenStack
Objectif
Déployer des clusters Kubernetes via deux approches : Magnum (natif OpenStack) et VMs + K3s/RKE2 (via Terraform).
Architecture C4 - Kubernetes Deployment
graph TB
dev["👤 Developer<br/>Deploy apps"]
ops["👤 Platform Team<br/>Manage clusters"]
subgraph OpenStack["OpenStack"]
nova["Nova<br/>Compute"]
neutron["Neutron<br/>Network"]
cinder["Cinder<br/>Storage"]
octavia["Octavia<br/>LB"]
magnum["Magnum<br/>K8s as a Service"]
end
subgraph Magnum_Cluster["Magnum Cluster"]
master_m["Master<br/>Control plane"]
worker_m["Workers<br/>Workloads"]
end
subgraph K3s_Cluster["K3s/RKE2 Cluster"]
master_r["Master<br/>Control plane"]
worker_r["Workers<br/>Workloads"]
end
terraform["🏗️ Terraform<br/>IaC"]
ops -->|Create cluster| magnum
magnum -->|Provision VMs| nova
magnum --> Magnum_Cluster
ops -->|terraform apply| terraform
terraform -->|Create VMs| nova
terraform -->|Install K3s/RKE2| K3s_Cluster
dev -->|kubectl| Magnum_Cluster
dev -->|kubectl| K3s_Cluster
Magnum_Cluster -->|CSI| cinder
K3s_Cluster -->|CSI| cinder
Sujets de cette phase
Comparaison des approches
| Aspect |
Magnum |
K3s/RKE2 sur VMs |
| Facilité |
Simple (1 commande) |
Plus de contrôle |
| Versions K8s |
Limitées aux templates |
Libre choix |
| Customisation |
Via labels |
Totale |
| Production |
Bon |
Excellent (RKE2) |
| Upgrades |
Via Magnum |
Manuel ou automatisé |
Checkpoint de validation