# Slides atelier kube n°2
## Production & Batchs
---
## Plan de la séance
- Rappels session précédente
- Passage en production - configuration de package helm dans argocd
- Architectures applicatives batch, un peu de veille
- Argoworkflow?
- Packaging global avec helm ?
---
## Rappel sur la session précédente
----
## Création de ressources Kubernetes
- Deployment
- Service
- Ingress
- Job / CronJob
- Pod
- Secret/Configmap
----
## Packaging des objets via helm
- Permet de créer un livrable unique constitué des *manifestes* variabilisés qui permettent l'installation de l'application.
- Intégration continue pour le déploiement sur gitlab de chart helm
----
## Installation de briques déjà packagées
- Via helm directement dans un espace de travail *namespace*.
- Installation d'un chart helm, avec sa configuration (au travers du fichier **values.yaml**) avec ArgoCD
---
## Mise en Production
----
## Mise en place dans ArgoCD
ArgoCD permet de réaliser l'installation de chart helm de manière continue a partir de la configuration sur un dépot git.
----
## Passage en mode gitops
Afin de vous laisser libre d'ajouter des applications sur un espace sur lequel vous êtes autonome, nous avons mis en place des projets de type "apps of apps" sur ArgoCD [(Doc ici)](https://argo-cd.readthedocs.io/en/stable/operator-manual/cluster-bootstrapping/#app-of-apps-pattern)
Vous les retrouverez souvent :
```bash
README.md
root-apps.yaml # Lien vers ensemble des applications
root-projects.yaml # Lien vers ensemble des projets du dépot
projects/* # Projets + habilitations des projets et ns cible
apps/* # Applications + configurations des applis du projet
```
---
## Architectures applicatives batch
---
## Que fait-on ?
---
## Exemples d'architectures : cas d'Argoworkflow
De manière historique a l'insee, un batch était lancé une fois ou n fois, par un traitement "Cron" ou traitement a la demande, via Rundeck.
Argoworkflow est un gestionnaire de lancement de processus et de création de workflow. Il peut répondre au besoin de l'existant (pouvoir lancer ses batchs côté stat en recette).
----
## Installation dans le namespace
Argoworkflow permet de lancer des traitements batch depuis une IHM. Il s'installe dans kubernetes avec Helm par exemple.
=> https://github.com/argoproj/argo-helm/tree/main/charts/argo-workflows
---
## Exemples de workflow
Argo workflow permet d'enchaîner les traitements, avec différentes briques.
Quelques exemples de workflows :
https://gitlab.insee.fr/mdzp17/scripts-exemple-workflow
{"metaMigratedAt":"2023-06-18T03:04:39.857Z","metaMigratedFrom":"YAML","title":"Présentation atelier kube n°2 => Production & Batchs","breaks":true,"slideOptions":"{\"theme\":\"black\",\"transition\":\"fade\"}","contributors":"[{\"id\":\"d9e2c8cd-a93f-4098-845f-eed33864c9bd\",\"add\":4964,\"del\":2267}]"}