En tant que Techlead chez Cocktail, j'ai piloté avec succès la migration complète de 50
applications développées en Java et WebObjects. Ma mission englobait la coordination
de l'ensemble du processus, depuis la planification initiale jusqu'au déploiement final en
mode GitOps. J'ai travaillé en étroite collaboration avec les équipes de bases de données,
réseau, développement et test pour garantir une transition fluide et efficace. Mon rôle a
inclus la définition des meilleures pratiques de déploiement, la gestion des dépendances
inter-équipes, et l'assurance de la cohérence entre les divers éléments du système.
Implémentation, configuration et déploiement des clusters Rancher
Implémentation de la solution Kasten : définition et validation du DAT :
Containerisation des applications type Java, springBoot via la technologie Kubernetes
en se basant sur l’approche GitOps.
Déploiement des applications via Artifactory
Automatisation de la gestion des secrets Kubernetes avec KubeSeal et VAULT.
Test des nouvelles mises à jour avec un déploiement type Canary.
Déploiement des applications en mode AppsOfApps.
Techlead chez Thermofisher JUIN 2022 - JANVIER 2023
Mise en place des chaines de CI/CD permettant de packager et tester des applications
Helm, Kubernetes.
Gestion d’une équipe d’ingénieur système et ingénieur DevOps, on était une équipe de tooling, on
réponds principalement aux demandes des équipes de développements et je travaille en étroite
collaboration avec l’équipe de sécurité, ça on dépolie dans un environnement Airgap ( On gère des
applications pour des microscopes).
Customisation des chartes Helm.
Automatisation d’installation de K3S et K3D à travers des scripts shell.
Gestion des pods kubernetes sur les nœuds dédiés (GPU).
Création et injection des certificats auto signé dans les clusters kubernetes.
Mise en place un registry docker en local.
Packaging des manifests kubernetes de postgres, minio, redis, et rabbitmq en mode
kubernetes déconnecté.
Test des nouvelles mises à jour avec un déploiement type Canary.
GitOps : Déploiement d’application avec ArgoCD.
Déploiement des applications sur Artifactory.
Mise en place des clusters K8S, K3D, K0S en mode déconnecter.
Développement un SDK en Python pour automatiser la chaine DevOps.
Configuration du SSO.
Mise en place de solutions de stockage compatible S3.
Mise en place de solutions de backup pour les clusters Kubernetes.
Migration des Workloads CROSS CLOUD & CROSS REGION
J'ai occupé un rôle essentiel en orchestrant des sessions d'acculturation dédiées au domaine
du DevOps au sein de mon équipe. Ma responsabilité consistait à guider et à encadrer les
membres de l'équipe dans l'adoption de pratiques DevOps, en mettant particulièrement
l'accent sur des technologies clés telles que Docker, Kubernetes et GitLab CI. En parallèle de
mes fonctions de gestionnaire, j'ai également assuré le rôle d'administrateur Kubernetes,
démontrant ainsi ma polyvalence et ma maîtrise technique. En tant qu'administrateur
Kubernetes, j'ai dirigé la conception, la mise en œuvre et la gestion de clusters Kubernetes,
assurant une infrastructure fiable et hautement disponible pour le déploiement de
microservices.
Planification et gestion de projet
Automatisation des processus :
- Automatisation des processus de développement, d’intégration, de déploiement et de
livraison pour accélérer les cycles de livraison
- Sélection, installation, configuration et de la maintenance des outils DevOPs utilisés dans
le projet
Admin kubernetes & Rancher :
- Mise en place des clusters kubernetes sur OVH & AWS
- Mise en place Rancher en mode HA
- Gestion des clusters à travers Rancher
- Gestion de registry Docker
- Gestion des certificats
- Gestion de backup & DR
- Gestion des utilisateurs & des droits
- Mettre en place des solutions de monitoring, logging, tracing
- Gestion des LoadBalancer
- Filtrage des IPs
Au sein de Selectour, j'ai piloté l'adoption et l'optimisation de Kubernetes à grande
échelle, jouant un rôle clé dans la transformation de l'infrastructure et l'efficacité
opérationnelle.
Dirigé une équipe de 5 ingénieurs, offrant des formations internes et développant une
documentation complète, accélérant l'adoption de Kubernetes dans l'entreprise de 70%
en six mois.
La réduction des coûts d'infrastructure de 40% grâce à une meilleure allocation et gestion
des ressources et amélioration de la sécurité avec une stratégie de sécurité complète
pour Kubernetes, y compris l'isolation des workloads, la mise en place de RBAC et la
rotation régulière des secrets, garantissant zéro incident de sécurité pendant mon
mandat.
Orchestration et gestion de conteneurs :
- Conception et mise en œuvre d'architectures Kubernetes hautement disponibles avec 5
nœuds master et 8 nœuds worker.
- Planification et gestion de la capacité des clusters pour assurer la montée en charge et
la performance
- Sélection, installation, configuration et de la maintenance des outils DevOPs utilisés
dans le projet
- Mise en œuvre de déploiements, StatefulSets, services, et autres ressources Kubernetes
- Automatisation des déploiements via des pipelines CI/CD intégrant Kubernetes.
- Gestion de la mise à jour des versions de Kubernetes tout en garantissant la
disponibilité.
- Configuration et gestion des solutions CNI (Container Network Interface) pour
Kubernetes.
- Mise en place et gestion des ingress controllers pour la routage des applications.
- Utilisation de RBAC (Role-Based Access Control) pour gérer les permissions au sein du
cluster.
- Gestion des secrets et de la rotation des clés.
- Mise en œuvre de politiques de sécurité à l'aide d'outils comme PodSecurityPolicies
- Gestion des solutions de stockage pour Kubernetes, y compris la configuration des
volumes persistants (PV) et des demandes de volumes persistants (PVC).
- Intégration avec des solutions de stockage externes pour fournir une persistance de
données.
- Backup et restauration des clusters Kubernetes.
- Développement et gestion des Helm charts pour simplifier les déploiements.
- Utilisation d'opérateurs personnalisés pour étendre les fonctionnalités de Kubernetes.
Monitoring et observabilité :
- Configuration et déploiement de prometheus pour la collecte de métriques.
- Définition des règles d'alerte et d'agrégation de données
- Création et gestion de tableaux de bord personnalisés pour la visualisation des
métriques avec Grafana.
- Intégration avec Prometheus pour l'affichage en temps réel.
- Configuration des alertes basées sur les métriques de Prometheus avec AlertManager.
- Intégration des canaux de notification (email, Slack, etc.) pour l'envoi d'alertes.
Formateur chez BNP & La banque postale :
En tant que principal formateur technique au sein de BNP et La Banque postale, j'ai
développé et dispensé une série de sessions de formation spécialisées, visant à renforcer
les compétences de l'équipe en matière de conteneurisation et d'orchestration
Formation en OpenShift :
- Conçu et animé des ateliers interactifs pour familiariser les ingénieurs, architectes et
team leads avec les bases et les pratiques avancées d'OpenShift.
- Abordé des sujets tels que la mise en œuvre d'architectures hautement disponibles, la
gestion de l'infrastructure sous-jacente et l'intégration avec les outils existants de la banque
Formation Docker :
- Dirigé des sessions de formation couvrant le cycle de vie complet du conteneur, de la
création de l'image Docker à l'orchestration avec Docker Compose.
- Emphasé sur les meilleures pratiques de sécurité, de performance et de débogage.
Formation Helm
- Initié les participants aux principes de Helm, du développement de charts à la gestion de
déploiements complexes.
- Favorisé une appr...
Dans le cadre de ma mission chez VIAMEDIS, j'ai été mandaté pour concevoir, déployer et
optimiser une plateforme "Cluster-as-a-Service" pour les développeurs, en utilisant Tanzu
Kubernetes Grid Service (TKGS) et une approche GitOps. L'objectif principal était de fournir une
plateforme robuste et automatisée aux développeurs tout en gérant et sécurisant leur accès.
Planification de la topologie des clusters, y compris la répartition des nœuds master
et worker, et la détermination des exigences de stockage et de réseau
Mise en œuvre d'une stratégie GitOps pour le déploiement et la gestion des
configurations du cluster TKGS, assurant une traçabilité complète et une inversion
automatique en cas de configurations défectueuses.
Installation et configuration du kapp controller pour faciliter le déploiement
d'applications sur TKGS, de Contour, de Prometheus, de Grafana, cert-manager pour
assurer la surveillance et la gestion des performances du cluster.
Définition et mise en place de règles spécifiques dans Alertmanager pour une
réponse proactive aux incidents.
Implémenté la fédération Prometheus pour centraliser la surveillance de plusieurs
clusters.
Conçu un pipeline GitLab CI robuste pour orchestrer le déploiement automatisé des
clusters TKC et de toute la chaîne d'outils de monitoring.
Développé et intégré des scripts Bash pour automatiser diverses tâches
d'infrastructure, renforçant l'efficacité des déploiements
Créé un environnement "Readiness" pour les développeurs, simplifiant la procédure
de déploiement et de gestion des applications
Établi des procédures d'accès claires et automatisées pour garantir que les
développeurs puissent accéder aux ressources dont ils ont besoin tout en maintenant
la sécurité.
Mise en œuvre de best practices pour sécuriser les clusters TKGS, y compris
l'isolation des workloads, la mise en place de politiques RBAC et la gestion des
secrets.