Maîtriser ArgoCD : GitOps Avancé pour Kubernetes 7 Sections26 Lessons3 Hours
Détails
- 7 Sections
- 26 Lessons
- 3 Hours
- Introduction:4 Items
- Installation et Fonctionnement d'Argo CD5 Items
- Sécuriser les Mots de Passe des Applications dans Vos Dépôts Git4 Items
- Déployer une Application de Blog avec Argo CD2 Items
- Interface Web ArgoCD1 Item
- Gestion des Accès4 Items
- Argo Rollouts6 Items
Déployer Argo CD
Explorons les différentes méthodes de déploiement d’Argo CD. Il existe plusieurs types d’installations :
- Non haute disponibilité (Non-HA) : Utilise le fichier de manifest install.yaml. Recommandé pour les environnements de développement, de démonstration ou de test. Cette installation déploie des Pods et des réplicas uniques pour les composants Argo CD, sans assurer une haute disponibilité.
- Haute disponibilité (HA) : Utilisant le fichier de manifest namespace-install.yaml, cette méthode est recommandée pour les environnements de production. Elle est optimisée pour la haute disponibilité et la résilience, bien que certains composants comme le cache Redis ne soient pas redondants car ils peuvent être facilement reconstruits en cas de problème.
- Installation de base : Utilise le fichier de manifest core-install.yaml pour des installations où les fonctionnalités de multi-location (comme l’interface utilisateur web et le serveur API) ne sont pas nécessaires. Elle installe des composants légers d’Argo CD sans haute disponibilité.
Niveaux de Déploiement
Argo CD peut être déployé à différents niveaux :
- Niveau Cluster : Utilisé lorsque vous avez un accès au niveau du cluster Kubernetes et que vous déployez des applications sur le même cluster où Argo CD est exécuté.
- Niveau Namespace : Utilisé lorsque vous avez un accès au niveau des espaces de noms et que vous prévoyez de déployer des applications sur des clusters Kubernetes externes, pas sur le cluster où Argo CD est exécuté. Cela permet de configurer Argo CD de manière centralisée et de gérer plusieurs clusters Kubernetes à partir d’une seule instance Argo CD.
Cette flexibilité dans les types de déploiement permet de structurer Argo CD selon les besoins de votre organisation et de vos équipes. Par exemple, vous pouvez déployer Argo CD sur un cluster Kubernetes centralisé et ajouter des identifiants de clusters Kubernetes externes à cette instance, permettant ainsi de déployer des applications sur plusieurs clusters Kubernetes externes.
Méthodes d’Installation
Il existe plusieurs façons d’installer Argo CD :
- Fichiers YAML : La méthode la plus courante consiste à utiliser les fichiers YAML fournis par le dépôt GitHub d’Argo CD.
-
Kustomize : Vous pouvez utiliser Kustomize pour personnaliser et déployer Argo CD.
Pour installer Argo CD en utilisant Kustomize, vous pouvez suivre les étapes suivantes. Kustomize permet de personnaliser des configurations Kubernetes sans avoir besoin de les modifier directement. Voici un exemple complet de la manière d’installer Argo CD en utilisant Kustomize :
Téléchargez les fichiers YAML nécessaires depuis le dépôt GitHub d’Argo CD et placez-les dans le répertoire base :
Créez un fichier kustomization.yaml dans le répertoire base :
Créez un fichier kustomization.yaml pour chaque overlay (par exemple, production et development). Vous pouvez utiliser ces overlays pour des configurations spécifiques à chaque environnement.
Overlay Production :
Overlay Développement
Utilisez Kustomize pour déployer Argo CD dans votre cluster Kubernetes.
Pour l’overlay production :
Résumé de la Structure des Répertoires
Voici un résumé de la structure des répertoires que vous devriez avoir :
Charts Helm : Une autre méthode consiste à utiliser les charts Helm pour installer et gérer Argo CD sur Kubernetes
Se Connecter à Argo CD Après avoir utilisé l’une des 3 méthodes:
Après avoir installé Argo CD, vous devrez vous connecter pour gérer vos applications et clusters Kubernetes. Voici les étapes pour se connecter à Argo CD :
Obtenir le mot de passe d’administration:
Si vous utilisez minikube activer le port-forwarding
Ouvrez votre navigateur et allez à https://:8080. Utilisez les informations d’identification suivantes :
- Nom d’utilisateur : admin
- Mot de passe : (Le mot de passe que vous avez obtenu à l’étape 1)