SlideShare une entreprise Scribd logo
1  sur  52
Vivez sans peur, Vivez vraiment !
Jazzy July
05/07/2023
Un Grand Merci À
Qui sommes-nous ?
Alexis Ducastel
Rémi Verchère
Agenda
● Stockage opensource polyvalent et scalable sur Kubernetes avec Rook Ceph
● Optimisez vos Requests et Limits dans Kubernetes
● Surprise(s)
● Apéro / Jeux
Stockage sur Kubernetes avec Rook Ceph
Stockage sur Kubernetes
avec Rook Ceph
expliqué à un enfant de 35 ans…
Stockage sur Kubernetes avec Rook Ceph
Lui, c'est Bob
Image by Freepik
Stockage sur Kubernetes avec Rook Ceph
Bob a un Raspberry PI et
utilise des conteneurs pour
ses projets
Il voudrait faire du K8S,
mais quid du stockage ?
Image by Freepik
Stockage sur Kubernetes avec Rook Ceph
Il choisit pour le stockage,
un "Local Path Provisioner"
Avec un seul noeud dans
son cluster, c'est simple !
Simple
V Léger
V
Image by Freepik
Stockage sur Kubernetes avec Rook Ceph
Mais pour assurer la haute-
disponibilité et la scalabilité
d'un de ses projets, Bob a
besoin de plusieurs noeuds
dans son cluster
Kubernetes
Image by Freepik
Stockage sur Kubernetes avec Rook Ceph
Problème ! Les
Local Path Provisioner ne
correspondent plus !
Pb serveur = Donnée perdue
X
Pas de scalabilité
X
Image by Freepik
Stockage sur Kubernetes avec Rook Ceph
Bob rêve d'une techno
qui sache tout faire, et
qui ne coûte pas trop cher
RWO
V RWX
V ROX
V
Scalabilité
V Durabilité
V
Object storage
V Snapshots
V
Image by Freepik
Stockage sur Kubernetes avec Rook Ceph
La solution :
Image by Freepik
Stockage sur Kubernetes avec Rook Ceph
Y'a quoi dans un cluster Ceph ?
Image by Freepik
Attention !
3 / 5 sur l'échelle du doliprane
Stockage sur Kubernetes avec Rook Ceph
Y'a quoi dans un cluster Ceph ?
Image by Freepik
Ceph Metadata
data
CephFS Metadata
Manager/Dashboard
Ceph CLI
Stockage sur Kubernetes avec Rook Ceph
Comment ça fonctionne Ceph ?
Image by Freepik
Attention !
4 / 5 sur l'échelle du doliprane
Stockage sur Kubernetes avec Rook Ceph
Comment ça fonctionne Ceph ?
Image by Freepik
Distribution Réplication
RF3
Stockage sur Kubernetes avec Rook Ceph
Un parallèle avec Kubernetes ?
Image by Freepik
Distribution Réplication
RF3
Stockage sur Kubernetes avec Rook Ceph
Comment ça marche avec Rook ?
Image by Freepik
Détendez-vous !
1 / 5 sur l'échelle du doliprane
Stockage sur Kubernetes avec Rook Ceph
Comment ça marche avec Rook ?
Image by Freepik
Installation
V Mise à jour
V
gère
Discovery
V
Stockage sur Kubernetes avec Rook Ceph
Ca consomme beaucoup ?
Image by Freepik
Noeuds recommandés :
- en hyperconvergence : min 8c/32Gi
- noeuds dédiés Ceph : min 4c/16Gi
3 mon (2 cpu/2 Gi)
+ 2 mgr (1 cpu/1 Gi)
+ 3(+) osd (1 cpu/4 Gi)
+ operator/tools/csi/crash/… (2 cpu/2 Gi)
—------------------------------------------
Total : 14 cpu/22 Gi minimum pour Ceph
Stockage sur Kubernetes avec Rook Ceph
Démo time !!
Image by Freepik
AUcune donnée ne sera maltraitée …
normalement du moins …
Optimisez vos Requests et Limits
dans Kubernetes
Optimisez vos Requests et Limits dans Kubernetes
Agenda
● (R)appel Requests & Limits dans Kubernetes
● Stratégies : VPA, HPA, HCA, HHC, …
● KRR : Démo !
● Goldilocks : Démo !
● Nouveautés K8S 1.27
● Q/A : Apéro !
Spoiler : beaucoup d’images piquées de chez Sysdig, qui explique bien les choses
(R)appel Requests & Limits
Requests: Ressources
nécessaires pour scheduling du
pod sur un node
Limits: Ressources maximum
qu’un node peut allouer à un pod
Définition se fait au niveau du
conteneur
🫣
(R)appel Requests & Limits
CPU :
● Ressource compressible
● millicores (1000m = 1 core)
● shares : 1024 par core
Risques :
● CPU Throttling -> exponentielle avec les multicores
● Voir “Misérable vie d’une instruction CPU” de Samuel Ortiz
(R)appel Requests & Limits
RAM :
● Ressource non compressible
● bytes (Mi : Mebibytes)
Risques :
● OOMKilled !!
(R)appel Requests & Limits
Stratégies de QoS
● Ni Requests, ni limits : Best Effort
● Requests < Limits : Burstable
● Requests = Limits : Guaranteed
Attention aux évictions & non-scheduled pods !
● PriorityClasses pour les pods critiques
(R)appel Requests & Limits
(R)appel Requests & Limits
Quel sizing alors ? Well, it depends..
Stratégies
1. Namespaces Quotas
1. Pods & Cluster Autoscaling
1. Resource Tracking
Stratégie Namespaces
Namespace ResourceQuota
- Limiter les ressources dans un namespace
Namespace LimitRange
- Restriction des requests / limits sur les ressources dans un NS
- Équivalent règle Kyverno ?
Stratégie HPA : Horizontal Pod Autoscaler (Scale
Out)
- Nouveau Pod lorsque limites atteintes
- Utile pour les microservices avec réplicas
- Par défaut sur CPU/RAM (metrics-server)
- Autres métriques via Prometheus (net latency)
- Temps de réaction ? Serverless / Event Driven
- Voir “Keda”, “Knative”, …
Stratégie HCA : Horizontal Cluster Autoscaler
- Si plus de nodes dispos:
Nouveau node
- Fourni par les CSP
Stratégie VPA : Vertical Pod Autoscaler (Scale Up)
- Pas par défaut, à installer
- Si manque de ressources, on augmente les Requests & Limits du conteneur
- 3 composants
- Recommender
- Updater
- Admission Controller
- Plusieurs modes
- Recreate
- Initial
- Off
Stratégie VPA : Vertical Pod Autoscaler (Scale Up)
- Besoin de créer une ressource particulière de type “Vertical Pod Autoscaler”
- A ne pas utiliser avec HPA
- Restart du conteneur*
- Fournit des métriques
- Calcul : Voir ici ;)
apiVersion: autoscaling.k8s.io/v1
kind: VerticalPodAutoscaler
metadata:
name: my-app-vpa
spec:
targetRef:
apiVersion: "apps/v1"
kind: Deployment
name: my-app
updatePolicy:
updateMode: "Auto"
Stratégie Resource Tracking
- Méthode 1 : Au doigt mouillé ☝️
- Méthode 2 : Grâce aux métriques !
- Prometheus (ou Datadog pour faire plaisir à Frédéric)
- VPA (rappelez-vous !)
Robustadev - Krr
- https://github.com/robusta-dev/krr
- “Prometheus-based Kubernetes Resource Recommendations”
- Sans agent, basé sur métriques prom ou autres, extensible, possibilité run in-
cluster périodique (notifs Slack)
Robustadev - Krr
Démo !
Warning : light theme !
Fairwinds - Goldilocks
- https://goldilocks.docs.fairwinds.com/
- “Get your resource requests "Just Right"”
- Automatise les VPA en mode recommendation + tableau de bord
Fairwinds - Goldilocks
Démo !
Stratégies
Requests, Limits ?
● CPU Requests, No Limits
● RAM Requests = Limits
https://home.robusta.dev/blog/stop-using-cpu-limits
Nouveautés K8S 1.27
● In-place Resource Resize for Kubernetes Pods (alpha)
“In Kubernetes v1.27, we have added a new alpha feature that allows users to resize CPU/memory
resources allocated to pods without restarting the containers”
● HorizontalPodAutoscaler ContainerResource type metric moves to beta
“Kubernetes 1.20 introduced the ContainerResource type metric in HorizontalPodAutoscaler (HPA).
In Kubernetes 1.27, this feature moves to beta and the corresponding feature gate (HPAContainerMetrics)
gets enabled by default.”
● Quality-of-Service for Memory Resources (alpha)
“Support for Memory QoS was initially added in Kubernetes v1.22, and later some limitations around the
formula for calculating memory.high were identified. These limitations are addressed in Kubernetes v1.27.”
Des questions ?
Non ? Tant mieux ;)
Sources & images :
- https://sysdig.com/blog/kubernetes-limits-requests/
- https://sysdig.com/blog/monitoring-custom-metrics/
- https://sysdig.com/blog/kubernetes-cpu-requests-limits-autoscaling/
- https://sysdig.com/blog/kubernetes-capacity-planning/
- https://sysdig.com/blog/kubernetes-autoscaler/
- https://sysdig.com/blog/millions-wasted-kubernetes/
- https://sysdig.com/blog/kubernetes-1-27-whats-new/
- https://help.ovhcloud.com/csm/fr-public-cloud-kubernetes-using-cluster-
autoscaler?id=kb_article_view&sysparm_article=KB0055361
Rétrospective
8 meetups + 1
9 jeux de mot douteux
8 quizz pas sérieux
Aix 4 / Marseille 4
● Infisical
● Victoria Metrics
● OpenTelemetry
● R2devops
● Dagger
● KeyCloack
● Godilocks et Krr
● Rook
● Github copilot
● Github actions
● Pulumi
● Argocd
● Dev Containers
● Docusaurus
● Tilt
● Grafana
● Velero
● CrossPlane
18 sujets
Sans compter les digressions…
9 speakers
Vous !
● 860 membres !!!
● Environ 30 participants par meetups
● Grande variabilité
● Des profils plus variés
Futur
● Plus de speakers
● Plus de représentativité
● Encore plus de régularité
● Des événements spéciaux
meetup.com/Devops-Aix-
Marseille
ibd.sh/openbar
Let’s play !
Apero !

Contenu connexe

Tendances

Project Management To Project Governance , Knowledge Management
Project Management To Project Governance , Knowledge ManagementProject Management To Project Governance , Knowledge Management
Project Management To Project Governance , Knowledge Managementsubramanian K
 
Raising startup capital pitch hacks class at general assembly sf september ...
Raising startup capital   pitch hacks class at general assembly sf september ...Raising startup capital   pitch hacks class at general assembly sf september ...
Raising startup capital pitch hacks class at general assembly sf september ...VentureArchetypes LLC
 
Carve-outs: The new darling of M&A?
Carve-outs:  The new darling of M&A?Carve-outs:  The new darling of M&A?
Carve-outs: The new darling of M&A?accenture
 
The Path to Open Banking
The Path to Open BankingThe Path to Open Banking
The Path to Open BankingMuleSoft
 
M&A integration strategy
M&A integration strategyM&A integration strategy
M&A integration strategyDanny A Davis
 
Lobel proposal for 1 mw crystalline pv solar power plant
Lobel proposal for 1 mw crystalline pv solar power plantLobel proposal for 1 mw crystalline pv solar power plant
Lobel proposal for 1 mw crystalline pv solar power plantL'Obel Solar Power System
 
OpenTelemetry Introduction
OpenTelemetry Introduction OpenTelemetry Introduction
OpenTelemetry Introduction DimitrisFinas1
 
Open Banking - The Digital Transformation Opportunity in Disguise
Open Banking - The Digital Transformation Opportunity in Disguise Open Banking - The Digital Transformation Opportunity in Disguise
Open Banking - The Digital Transformation Opportunity in Disguise WSO2
 
Variable Recurring Payments (VRP): The Latest Open Banking Development in the UK
Variable Recurring Payments (VRP): The Latest Open Banking Development in the UKVariable Recurring Payments (VRP): The Latest Open Banking Development in the UK
Variable Recurring Payments (VRP): The Latest Open Banking Development in the UKaccenture
 
apidays London 2022 - The State of Banking APIs 2022, Mark Boyd, Platformable
apidays London 2022 - The State of Banking APIs 2022, Mark Boyd, Platformableapidays London 2022 - The State of Banking APIs 2022, Mark Boyd, Platformable
apidays London 2022 - The State of Banking APIs 2022, Mark Boyd, Platformableapidays
 
BaaS-platforms and open APIs in fintech l bank-as-a-service.com
BaaS-platforms and open APIs in fintech l bank-as-a-service.comBaaS-platforms and open APIs in fintech l bank-as-a-service.com
BaaS-platforms and open APIs in fintech l bank-as-a-service.comVladislav Solodkiy
 
M&A integration management office
M&A integration management officeM&A integration management office
M&A integration management officeDanny A Davis
 
Startup Funding Made Easy by Shanti Mohan, Founder @LetsVenture
Startup Funding Made Easy by Shanti Mohan, Founder @LetsVentureStartup Funding Made Easy by Shanti Mohan, Founder @LetsVenture
Startup Funding Made Easy by Shanti Mohan, Founder @LetsVentureSanjay Jha
 
Libra meter meter buddy handbook
Libra meter   meter buddy handbookLibra meter   meter buddy handbook
Libra meter meter buddy handbookHilda Bernabé
 
Project Management Steps And Process Powerpoint Presentation Slide
Project Management Steps And Process Powerpoint Presentation SlideProject Management Steps And Process Powerpoint Presentation Slide
Project Management Steps And Process Powerpoint Presentation SlideSlideTeam
 
The Triple Constraint of Project Management - Lou Bergner
The Triple Constraint of Project Management - Lou BergnerThe Triple Constraint of Project Management - Lou Bergner
The Triple Constraint of Project Management - Lou BergnerMAX Technical Training
 

Tendances (20)

Tips and techniques for effective project portfolio management
Tips and techniques for effective project portfolio managementTips and techniques for effective project portfolio management
Tips and techniques for effective project portfolio management
 
Project Management To Project Governance , Knowledge Management
Project Management To Project Governance , Knowledge ManagementProject Management To Project Governance , Knowledge Management
Project Management To Project Governance , Knowledge Management
 
Raising startup capital pitch hacks class at general assembly sf september ...
Raising startup capital   pitch hacks class at general assembly sf september ...Raising startup capital   pitch hacks class at general assembly sf september ...
Raising startup capital pitch hacks class at general assembly sf september ...
 
Carve-outs: The new darling of M&A?
Carve-outs:  The new darling of M&A?Carve-outs:  The new darling of M&A?
Carve-outs: The new darling of M&A?
 
The Path to Open Banking
The Path to Open BankingThe Path to Open Banking
The Path to Open Banking
 
Observability
Observability Observability
Observability
 
M&A integration strategy
M&A integration strategyM&A integration strategy
M&A integration strategy
 
Lobel proposal for 1 mw crystalline pv solar power plant
Lobel proposal for 1 mw crystalline pv solar power plantLobel proposal for 1 mw crystalline pv solar power plant
Lobel proposal for 1 mw crystalline pv solar power plant
 
OpenTelemetry Introduction
OpenTelemetry Introduction OpenTelemetry Introduction
OpenTelemetry Introduction
 
Open Banking - The Digital Transformation Opportunity in Disguise
Open Banking - The Digital Transformation Opportunity in Disguise Open Banking - The Digital Transformation Opportunity in Disguise
Open Banking - The Digital Transformation Opportunity in Disguise
 
Variable Recurring Payments (VRP): The Latest Open Banking Development in the UK
Variable Recurring Payments (VRP): The Latest Open Banking Development in the UKVariable Recurring Payments (VRP): The Latest Open Banking Development in the UK
Variable Recurring Payments (VRP): The Latest Open Banking Development in the UK
 
Red Hat Insights
Red Hat InsightsRed Hat Insights
Red Hat Insights
 
apidays London 2022 - The State of Banking APIs 2022, Mark Boyd, Platformable
apidays London 2022 - The State of Banking APIs 2022, Mark Boyd, Platformableapidays London 2022 - The State of Banking APIs 2022, Mark Boyd, Platformable
apidays London 2022 - The State of Banking APIs 2022, Mark Boyd, Platformable
 
BaaS-platforms and open APIs in fintech l bank-as-a-service.com
BaaS-platforms and open APIs in fintech l bank-as-a-service.comBaaS-platforms and open APIs in fintech l bank-as-a-service.com
BaaS-platforms and open APIs in fintech l bank-as-a-service.com
 
M&A integration management office
M&A integration management officeM&A integration management office
M&A integration management office
 
Startup Funding Made Easy by Shanti Mohan, Founder @LetsVenture
Startup Funding Made Easy by Shanti Mohan, Founder @LetsVentureStartup Funding Made Easy by Shanti Mohan, Founder @LetsVenture
Startup Funding Made Easy by Shanti Mohan, Founder @LetsVenture
 
Observability
ObservabilityObservability
Observability
 
Libra meter meter buddy handbook
Libra meter   meter buddy handbookLibra meter   meter buddy handbook
Libra meter meter buddy handbook
 
Project Management Steps And Process Powerpoint Presentation Slide
Project Management Steps And Process Powerpoint Presentation SlideProject Management Steps And Process Powerpoint Presentation Slide
Project Management Steps And Process Powerpoint Presentation Slide
 
The Triple Constraint of Project Management - Lou Bergner
The Triple Constraint of Project Management - Lou BergnerThe Triple Constraint of Project Management - Lou Bergner
The Triple Constraint of Project Management - Lou Bergner
 

Similaire à slides meetup devops aix-marseille - juillet 2023

Analytics et Big Data, une histoire de cubes...
Analytics et Big Data, une histoire de cubes...Analytics et Big Data, une histoire de cubes...
Analytics et Big Data, une histoire de cubes...Mathias Kluba
 
Alphorm.com Formation Kubernetes : Installation et Configuration
Alphorm.com Formation Kubernetes : Installation et ConfigurationAlphorm.com Formation Kubernetes : Installation et Configuration
Alphorm.com Formation Kubernetes : Installation et ConfigurationAlphorm
 
Zimbra Forum France 2016 - Beezim and Ceph
Zimbra Forum France 2016 - Beezim and CephZimbra Forum France 2016 - Beezim and Ceph
Zimbra Forum France 2016 - Beezim and CephZimbra
 
A la découverte de kubernetes
A la découverte de kubernetesA la découverte de kubernetes
A la découverte de kubernetesJulien Maitrehenry
 
Sébastien Coutu: Copy this Meetup Devops - microservices - infrastructure imm...
Sébastien Coutu: Copy this Meetup Devops - microservices - infrastructure imm...Sébastien Coutu: Copy this Meetup Devops - microservices - infrastructure imm...
Sébastien Coutu: Copy this Meetup Devops - microservices - infrastructure imm...MSDEVMTL
 
2023-02-02 - Marvelous March
2023-02-02 - Marvelous March2023-02-02 - Marvelous March
2023-02-02 - Marvelous MarchFrederic Leger
 
Le Cloud IaaS & PaaS, OpenStack réseau et sécurité
Le Cloud IaaS & PaaS, OpenStack réseau et sécuritéLe Cloud IaaS & PaaS, OpenStack réseau et sécurité
Le Cloud IaaS & PaaS, OpenStack réseau et sécuritéNoureddine BOUYAHIAOUI
 
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseriesBreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseriesXavier MARIN
 
Suivre l'évolution du covid19 sur RaspberryPi avec la suite Elastic
Suivre l'évolution du covid19 sur RaspberryPi avec la suite ElasticSuivre l'évolution du covid19 sur RaspberryPi avec la suite Elastic
Suivre l'évolution du covid19 sur RaspberryPi avec la suite ElasticIdriss Neumann
 
Etes vous prêts pour le succes ?
Etes vous prêts pour le succes ?Etes vous prêts pour le succes ?
Etes vous prêts pour le succes ?Steven VAN POECK
 
The real WAX ROADSHOW K8S 2022.pdf
The real WAX ROADSHOW K8S 2022.pdfThe real WAX ROADSHOW K8S 2022.pdf
The real WAX ROADSHOW K8S 2022.pdfFrançois Berthault
 
Kuberbetes 101: Unlocking containerisation’s full potential
Kuberbetes 101: Unlocking containerisation’s full potentialKuberbetes 101: Unlocking containerisation’s full potential
Kuberbetes 101: Unlocking containerisation’s full potentialOVHcloud
 
Jeudis du Libre - MySQL InnoDB Cluster
Jeudis du Libre - MySQL InnoDB ClusterJeudis du Libre - MySQL InnoDB Cluster
Jeudis du Libre - MySQL InnoDB ClusterFrederic Descamps
 
XebiCon'16 : WeScale - DNS as a Service, the OpenStack way. Par Pascal Edoua...
XebiCon'16 : WeScale - DNS as a Service, the OpenStack way.  Par Pascal Edoua...XebiCon'16 : WeScale - DNS as a Service, the OpenStack way.  Par Pascal Edoua...
XebiCon'16 : WeScale - DNS as a Service, the OpenStack way. Par Pascal Edoua...Publicis Sapient Engineering
 
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinLudovic Piot
 
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide
 

Similaire à slides meetup devops aix-marseille - juillet 2023 (20)

Analytics et Big Data, une histoire de cubes...
Analytics et Big Data, une histoire de cubes...Analytics et Big Data, une histoire de cubes...
Analytics et Big Data, une histoire de cubes...
 
Alphorm.com Formation Kubernetes : Installation et Configuration
Alphorm.com Formation Kubernetes : Installation et ConfigurationAlphorm.com Formation Kubernetes : Installation et Configuration
Alphorm.com Formation Kubernetes : Installation et Configuration
 
Zimbra Forum France 2016 - Beezim and Ceph
Zimbra Forum France 2016 - Beezim and CephZimbra Forum France 2016 - Beezim and Ceph
Zimbra Forum France 2016 - Beezim and Ceph
 
A la découverte de kubernetes
A la découverte de kubernetesA la découverte de kubernetes
A la découverte de kubernetes
 
Gdg lille-intro-to-kubernetes
Gdg lille-intro-to-kubernetesGdg lille-intro-to-kubernetes
Gdg lille-intro-to-kubernetes
 
Openstack framework Iaas
Openstack framework IaasOpenstack framework Iaas
Openstack framework Iaas
 
Sébastien Coutu: Copy this Meetup Devops - microservices - infrastructure imm...
Sébastien Coutu: Copy this Meetup Devops - microservices - infrastructure imm...Sébastien Coutu: Copy this Meetup Devops - microservices - infrastructure imm...
Sébastien Coutu: Copy this Meetup Devops - microservices - infrastructure imm...
 
2023-02-02 - Marvelous March
2023-02-02 - Marvelous March2023-02-02 - Marvelous March
2023-02-02 - Marvelous March
 
Le Cloud IaaS & PaaS, OpenStack réseau et sécurité
Le Cloud IaaS & PaaS, OpenStack réseau et sécuritéLe Cloud IaaS & PaaS, OpenStack réseau et sécurité
Le Cloud IaaS & PaaS, OpenStack réseau et sécurité
 
Kubernetes (k8s).pdf
Kubernetes (k8s).pdfKubernetes (k8s).pdf
Kubernetes (k8s).pdf
 
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseriesBreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
 
Suivre l'évolution du covid19 sur RaspberryPi avec la suite Elastic
Suivre l'évolution du covid19 sur RaspberryPi avec la suite ElasticSuivre l'évolution du covid19 sur RaspberryPi avec la suite Elastic
Suivre l'évolution du covid19 sur RaspberryPi avec la suite Elastic
 
Etes vous prêts pour le succes ?
Etes vous prêts pour le succes ?Etes vous prêts pour le succes ?
Etes vous prêts pour le succes ?
 
Formation Google App Engine
Formation Google App EngineFormation Google App Engine
Formation Google App Engine
 
The real WAX ROADSHOW K8S 2022.pdf
The real WAX ROADSHOW K8S 2022.pdfThe real WAX ROADSHOW K8S 2022.pdf
The real WAX ROADSHOW K8S 2022.pdf
 
Kuberbetes 101: Unlocking containerisation’s full potential
Kuberbetes 101: Unlocking containerisation’s full potentialKuberbetes 101: Unlocking containerisation’s full potential
Kuberbetes 101: Unlocking containerisation’s full potential
 
Jeudis du Libre - MySQL InnoDB Cluster
Jeudis du Libre - MySQL InnoDB ClusterJeudis du Libre - MySQL InnoDB Cluster
Jeudis du Libre - MySQL InnoDB Cluster
 
XebiCon'16 : WeScale - DNS as a Service, the OpenStack way. Par Pascal Edoua...
XebiCon'16 : WeScale - DNS as a Service, the OpenStack way.  Par Pascal Edoua...XebiCon'16 : WeScale - DNS as a Service, the OpenStack way.  Par Pascal Edoua...
XebiCon'16 : WeScale - DNS as a Service, the OpenStack way. Par Pascal Edoua...
 
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
 
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
 

Plus de Frederic Leger

2024-01 - slides du meetup devops aix-marseille
2024-01 - slides du meetup devops aix-marseille2024-01 - slides du meetup devops aix-marseille
2024-01 - slides du meetup devops aix-marseilleFrederic Leger
 
KubeTrain sponsor prospectus Aix-Marseille
KubeTrain sponsor prospectus Aix-MarseilleKubeTrain sponsor prospectus Aix-Marseille
KubeTrain sponsor prospectus Aix-MarseilleFrederic Leger
 
meetup devops aix-marseille - décembre 2023
meetup devops aix-marseille - décembre 2023meetup devops aix-marseille - décembre 2023
meetup devops aix-marseille - décembre 2023Frederic Leger
 
Level up your ci-cd experience
Level up your ci-cd experienceLevel up your ci-cd experience
Level up your ci-cd experienceFrederic Leger
 
Slides du meetup devops aix-marseille d'ocotbre 2023
Slides du meetup devops aix-marseille d'ocotbre 2023Slides du meetup devops aix-marseille d'ocotbre 2023
Slides du meetup devops aix-marseille d'ocotbre 2023Frederic Leger
 
slides meetup devops aix-marseille - septembre 2023
slides meetup devops aix-marseille - septembre 2023slides meetup devops aix-marseille - septembre 2023
slides meetup devops aix-marseille - septembre 2023Frederic Leger
 
meetup devops 2023-06-15
meetup devops 2023-06-15meetup devops 2023-06-15
meetup devops 2023-06-15Frederic Leger
 
meetup devops 2023/04/04 - Astonish April
meetup devops 2023/04/04 - Astonish Aprilmeetup devops 2023/04/04 - Astonish April
meetup devops 2023/04/04 - Astonish AprilFrederic Leger
 
2023-01-24 - dry january.pptx
2023-01-24 - dry january.pptx2023-01-24 - dry january.pptx
2023-01-24 - dry january.pptxFrederic Leger
 
2022-11-22 - November Rain
2022-11-22 - November Rain2022-11-22 - November Rain
2022-11-22 - November RainFrederic Leger
 
meetup devops aix-marseille 27/10/2022
meetup devops aix-marseille 27/10/2022meetup devops aix-marseille 27/10/2022
meetup devops aix-marseille 27/10/2022Frederic Leger
 
Maltacademy: securing your k8s cluster with CNCF falco
Maltacademy: securing your k8s cluster with CNCF falcoMaltacademy: securing your k8s cluster with CNCF falco
Maltacademy: securing your k8s cluster with CNCF falcoFrederic Leger
 
Voyage en terre du multi-cloud
Voyage en terre du multi-cloudVoyage en terre du multi-cloud
Voyage en terre du multi-cloudFrederic Leger
 
Meetup vault - ScaaS Secrets as a Service
Meetup vault - ScaaS Secrets as a ServiceMeetup vault - ScaaS Secrets as a Service
Meetup vault - ScaaS Secrets as a ServiceFrederic Leger
 
Aws beanstalk - Pastis Tech 21/11/2019
Aws beanstalk - Pastis Tech 21/11/2019Aws beanstalk - Pastis Tech 21/11/2019
Aws beanstalk - Pastis Tech 21/11/2019Frederic Leger
 
Des jeux et des devops
Des jeux et des devopsDes jeux et des devops
Des jeux et des devopsFrederic Leger
 
Lightning talk: Les Load Balancers HTTP modernes
Lightning talk: Les Load Balancers HTTP modernesLightning talk: Les Load Balancers HTTP modernes
Lightning talk: Les Load Balancers HTTP modernesFrederic Leger
 
Meetup DevOps Aix-Marseille - théorie du chaos et architectures résilientes
Meetup DevOps Aix-Marseille - théorie du chaos et architectures résilientesMeetup DevOps Aix-Marseille - théorie du chaos et architectures résilientes
Meetup DevOps Aix-Marseille - théorie du chaos et architectures résilientesFrederic Leger
 
meetup - Workflow complet de CI/CD pour les geeks avec gitlab et kubernetes
meetup - Workflow complet de CI/CD pour les geeks avec gitlab et kubernetesmeetup - Workflow complet de CI/CD pour les geeks avec gitlab et kubernetes
meetup - Workflow complet de CI/CD pour les geeks avec gitlab et kubernetesFrederic Leger
 

Plus de Frederic Leger (19)

2024-01 - slides du meetup devops aix-marseille
2024-01 - slides du meetup devops aix-marseille2024-01 - slides du meetup devops aix-marseille
2024-01 - slides du meetup devops aix-marseille
 
KubeTrain sponsor prospectus Aix-Marseille
KubeTrain sponsor prospectus Aix-MarseilleKubeTrain sponsor prospectus Aix-Marseille
KubeTrain sponsor prospectus Aix-Marseille
 
meetup devops aix-marseille - décembre 2023
meetup devops aix-marseille - décembre 2023meetup devops aix-marseille - décembre 2023
meetup devops aix-marseille - décembre 2023
 
Level up your ci-cd experience
Level up your ci-cd experienceLevel up your ci-cd experience
Level up your ci-cd experience
 
Slides du meetup devops aix-marseille d'ocotbre 2023
Slides du meetup devops aix-marseille d'ocotbre 2023Slides du meetup devops aix-marseille d'ocotbre 2023
Slides du meetup devops aix-marseille d'ocotbre 2023
 
slides meetup devops aix-marseille - septembre 2023
slides meetup devops aix-marseille - septembre 2023slides meetup devops aix-marseille - septembre 2023
slides meetup devops aix-marseille - septembre 2023
 
meetup devops 2023-06-15
meetup devops 2023-06-15meetup devops 2023-06-15
meetup devops 2023-06-15
 
meetup devops 2023/04/04 - Astonish April
meetup devops 2023/04/04 - Astonish Aprilmeetup devops 2023/04/04 - Astonish April
meetup devops 2023/04/04 - Astonish April
 
2023-01-24 - dry january.pptx
2023-01-24 - dry january.pptx2023-01-24 - dry january.pptx
2023-01-24 - dry january.pptx
 
2022-11-22 - November Rain
2022-11-22 - November Rain2022-11-22 - November Rain
2022-11-22 - November Rain
 
meetup devops aix-marseille 27/10/2022
meetup devops aix-marseille 27/10/2022meetup devops aix-marseille 27/10/2022
meetup devops aix-marseille 27/10/2022
 
Maltacademy: securing your k8s cluster with CNCF falco
Maltacademy: securing your k8s cluster with CNCF falcoMaltacademy: securing your k8s cluster with CNCF falco
Maltacademy: securing your k8s cluster with CNCF falco
 
Voyage en terre du multi-cloud
Voyage en terre du multi-cloudVoyage en terre du multi-cloud
Voyage en terre du multi-cloud
 
Meetup vault - ScaaS Secrets as a Service
Meetup vault - ScaaS Secrets as a ServiceMeetup vault - ScaaS Secrets as a Service
Meetup vault - ScaaS Secrets as a Service
 
Aws beanstalk - Pastis Tech 21/11/2019
Aws beanstalk - Pastis Tech 21/11/2019Aws beanstalk - Pastis Tech 21/11/2019
Aws beanstalk - Pastis Tech 21/11/2019
 
Des jeux et des devops
Des jeux et des devopsDes jeux et des devops
Des jeux et des devops
 
Lightning talk: Les Load Balancers HTTP modernes
Lightning talk: Les Load Balancers HTTP modernesLightning talk: Les Load Balancers HTTP modernes
Lightning talk: Les Load Balancers HTTP modernes
 
Meetup DevOps Aix-Marseille - théorie du chaos et architectures résilientes
Meetup DevOps Aix-Marseille - théorie du chaos et architectures résilientesMeetup DevOps Aix-Marseille - théorie du chaos et architectures résilientes
Meetup DevOps Aix-Marseille - théorie du chaos et architectures résilientes
 
meetup - Workflow complet de CI/CD pour les geeks avec gitlab et kubernetes
meetup - Workflow complet de CI/CD pour les geeks avec gitlab et kubernetesmeetup - Workflow complet de CI/CD pour les geeks avec gitlab et kubernetes
meetup - Workflow complet de CI/CD pour les geeks avec gitlab et kubernetes
 

slides meetup devops aix-marseille - juillet 2023

  • 1. Vivez sans peur, Vivez vraiment ! Jazzy July 05/07/2023
  • 3. Qui sommes-nous ? Alexis Ducastel Rémi Verchère
  • 4. Agenda ● Stockage opensource polyvalent et scalable sur Kubernetes avec Rook Ceph ● Optimisez vos Requests et Limits dans Kubernetes ● Surprise(s) ● Apéro / Jeux
  • 5. Stockage sur Kubernetes avec Rook Ceph Stockage sur Kubernetes avec Rook Ceph expliqué à un enfant de 35 ans…
  • 6. Stockage sur Kubernetes avec Rook Ceph Lui, c'est Bob Image by Freepik
  • 7. Stockage sur Kubernetes avec Rook Ceph Bob a un Raspberry PI et utilise des conteneurs pour ses projets Il voudrait faire du K8S, mais quid du stockage ? Image by Freepik
  • 8. Stockage sur Kubernetes avec Rook Ceph Il choisit pour le stockage, un "Local Path Provisioner" Avec un seul noeud dans son cluster, c'est simple ! Simple V Léger V Image by Freepik
  • 9. Stockage sur Kubernetes avec Rook Ceph Mais pour assurer la haute- disponibilité et la scalabilité d'un de ses projets, Bob a besoin de plusieurs noeuds dans son cluster Kubernetes Image by Freepik
  • 10. Stockage sur Kubernetes avec Rook Ceph Problème ! Les Local Path Provisioner ne correspondent plus ! Pb serveur = Donnée perdue X Pas de scalabilité X Image by Freepik
  • 11. Stockage sur Kubernetes avec Rook Ceph Bob rêve d'une techno qui sache tout faire, et qui ne coûte pas trop cher RWO V RWX V ROX V Scalabilité V Durabilité V Object storage V Snapshots V Image by Freepik
  • 12. Stockage sur Kubernetes avec Rook Ceph La solution : Image by Freepik
  • 13. Stockage sur Kubernetes avec Rook Ceph Y'a quoi dans un cluster Ceph ? Image by Freepik Attention ! 3 / 5 sur l'échelle du doliprane
  • 14. Stockage sur Kubernetes avec Rook Ceph Y'a quoi dans un cluster Ceph ? Image by Freepik Ceph Metadata data CephFS Metadata Manager/Dashboard Ceph CLI
  • 15. Stockage sur Kubernetes avec Rook Ceph Comment ça fonctionne Ceph ? Image by Freepik Attention ! 4 / 5 sur l'échelle du doliprane
  • 16. Stockage sur Kubernetes avec Rook Ceph Comment ça fonctionne Ceph ? Image by Freepik Distribution Réplication RF3
  • 17. Stockage sur Kubernetes avec Rook Ceph Un parallèle avec Kubernetes ? Image by Freepik Distribution Réplication RF3
  • 18. Stockage sur Kubernetes avec Rook Ceph Comment ça marche avec Rook ? Image by Freepik Détendez-vous ! 1 / 5 sur l'échelle du doliprane
  • 19. Stockage sur Kubernetes avec Rook Ceph Comment ça marche avec Rook ? Image by Freepik Installation V Mise à jour V gère Discovery V
  • 20. Stockage sur Kubernetes avec Rook Ceph Ca consomme beaucoup ? Image by Freepik Noeuds recommandés : - en hyperconvergence : min 8c/32Gi - noeuds dédiés Ceph : min 4c/16Gi 3 mon (2 cpu/2 Gi) + 2 mgr (1 cpu/1 Gi) + 3(+) osd (1 cpu/4 Gi) + operator/tools/csi/crash/… (2 cpu/2 Gi) —------------------------------------------ Total : 14 cpu/22 Gi minimum pour Ceph
  • 21. Stockage sur Kubernetes avec Rook Ceph Démo time !! Image by Freepik AUcune donnée ne sera maltraitée … normalement du moins …
  • 22. Optimisez vos Requests et Limits dans Kubernetes
  • 23. Optimisez vos Requests et Limits dans Kubernetes Agenda ● (R)appel Requests & Limits dans Kubernetes ● Stratégies : VPA, HPA, HCA, HHC, … ● KRR : Démo ! ● Goldilocks : Démo ! ● Nouveautés K8S 1.27 ● Q/A : Apéro ! Spoiler : beaucoup d’images piquées de chez Sysdig, qui explique bien les choses
  • 24. (R)appel Requests & Limits Requests: Ressources nécessaires pour scheduling du pod sur un node Limits: Ressources maximum qu’un node peut allouer à un pod Définition se fait au niveau du conteneur 🫣
  • 25. (R)appel Requests & Limits CPU : ● Ressource compressible ● millicores (1000m = 1 core) ● shares : 1024 par core Risques : ● CPU Throttling -> exponentielle avec les multicores ● Voir “Misérable vie d’une instruction CPU” de Samuel Ortiz
  • 26. (R)appel Requests & Limits RAM : ● Ressource non compressible ● bytes (Mi : Mebibytes) Risques : ● OOMKilled !!
  • 27. (R)appel Requests & Limits Stratégies de QoS ● Ni Requests, ni limits : Best Effort ● Requests < Limits : Burstable ● Requests = Limits : Guaranteed Attention aux évictions & non-scheduled pods ! ● PriorityClasses pour les pods critiques
  • 29. (R)appel Requests & Limits Quel sizing alors ? Well, it depends..
  • 30. Stratégies 1. Namespaces Quotas 1. Pods & Cluster Autoscaling 1. Resource Tracking
  • 31. Stratégie Namespaces Namespace ResourceQuota - Limiter les ressources dans un namespace Namespace LimitRange - Restriction des requests / limits sur les ressources dans un NS - Équivalent règle Kyverno ?
  • 32. Stratégie HPA : Horizontal Pod Autoscaler (Scale Out) - Nouveau Pod lorsque limites atteintes - Utile pour les microservices avec réplicas - Par défaut sur CPU/RAM (metrics-server) - Autres métriques via Prometheus (net latency) - Temps de réaction ? Serverless / Event Driven - Voir “Keda”, “Knative”, …
  • 33. Stratégie HCA : Horizontal Cluster Autoscaler - Si plus de nodes dispos: Nouveau node - Fourni par les CSP
  • 34. Stratégie VPA : Vertical Pod Autoscaler (Scale Up) - Pas par défaut, à installer - Si manque de ressources, on augmente les Requests & Limits du conteneur - 3 composants - Recommender - Updater - Admission Controller - Plusieurs modes - Recreate - Initial - Off
  • 35. Stratégie VPA : Vertical Pod Autoscaler (Scale Up) - Besoin de créer une ressource particulière de type “Vertical Pod Autoscaler” - A ne pas utiliser avec HPA - Restart du conteneur* - Fournit des métriques - Calcul : Voir ici ;) apiVersion: autoscaling.k8s.io/v1 kind: VerticalPodAutoscaler metadata: name: my-app-vpa spec: targetRef: apiVersion: "apps/v1" kind: Deployment name: my-app updatePolicy: updateMode: "Auto"
  • 36. Stratégie Resource Tracking - Méthode 1 : Au doigt mouillé ☝️ - Méthode 2 : Grâce aux métriques ! - Prometheus (ou Datadog pour faire plaisir à Frédéric) - VPA (rappelez-vous !)
  • 37. Robustadev - Krr - https://github.com/robusta-dev/krr - “Prometheus-based Kubernetes Resource Recommendations” - Sans agent, basé sur métriques prom ou autres, extensible, possibilité run in- cluster périodique (notifs Slack)
  • 38. Robustadev - Krr Démo ! Warning : light theme !
  • 39. Fairwinds - Goldilocks - https://goldilocks.docs.fairwinds.com/ - “Get your resource requests "Just Right"” - Automatise les VPA en mode recommendation + tableau de bord
  • 41. Stratégies Requests, Limits ? ● CPU Requests, No Limits ● RAM Requests = Limits https://home.robusta.dev/blog/stop-using-cpu-limits
  • 42. Nouveautés K8S 1.27 ● In-place Resource Resize for Kubernetes Pods (alpha) “In Kubernetes v1.27, we have added a new alpha feature that allows users to resize CPU/memory resources allocated to pods without restarting the containers” ● HorizontalPodAutoscaler ContainerResource type metric moves to beta “Kubernetes 1.20 introduced the ContainerResource type metric in HorizontalPodAutoscaler (HPA). In Kubernetes 1.27, this feature moves to beta and the corresponding feature gate (HPAContainerMetrics) gets enabled by default.” ● Quality-of-Service for Memory Resources (alpha) “Support for Memory QoS was initially added in Kubernetes v1.22, and later some limitations around the formula for calculating memory.high were identified. These limitations are addressed in Kubernetes v1.27.”
  • 43. Des questions ? Non ? Tant mieux ;) Sources & images : - https://sysdig.com/blog/kubernetes-limits-requests/ - https://sysdig.com/blog/monitoring-custom-metrics/ - https://sysdig.com/blog/kubernetes-cpu-requests-limits-autoscaling/ - https://sysdig.com/blog/kubernetes-capacity-planning/ - https://sysdig.com/blog/kubernetes-autoscaler/ - https://sysdig.com/blog/millions-wasted-kubernetes/ - https://sysdig.com/blog/kubernetes-1-27-whats-new/ - https://help.ovhcloud.com/csm/fr-public-cloud-kubernetes-using-cluster- autoscaler?id=kb_article_view&sysparm_article=KB0055361
  • 45. 8 meetups + 1 9 jeux de mot douteux 8 quizz pas sérieux Aix 4 / Marseille 4
  • 46. ● Infisical ● Victoria Metrics ● OpenTelemetry ● R2devops ● Dagger ● KeyCloack ● Godilocks et Krr ● Rook ● Github copilot ● Github actions ● Pulumi ● Argocd ● Dev Containers ● Docusaurus ● Tilt ● Grafana ● Velero ● CrossPlane 18 sujets Sans compter les digressions…
  • 48. Vous ! ● 860 membres !!! ● Environ 30 participants par meetups ● Grande variabilité ● Des profils plus variés
  • 49. Futur ● Plus de speakers ● Plus de représentativité ● Encore plus de régularité ● Des événements spéciaux