installation et configuration via les manifests yaml
Méthodes d'installation d'argoCD
- Manifest yaml
- helm chart
- Operator argocd
ArgoCD peut être déployé sur n'importe quel cluster Kubernetes selon plusieurs méthodes, chacune offrant des avantages différents selon les besoins et la maturité de votre environnement. Nous allons explorer les trois principales approches d'installation.
Requirements:
- Installer un clustr kubernetes. Vous pouvez suivre cette doc.
Installation via Manifests Kubernetes
L'installation via des manifests Kubernetes est l'approche la plus directe et recommandée pour les débutants ou les environnements simples.
- Installation standard
# Créer un namespace dédié
kubectl create namespace argocd
# Appliquer les manifests officiels
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
Cette commande déploie ArgoCD dans sa configuration par défaut, incluant tous les composants essentiels dans le namespace argocd.
kubectl -n argocd get po,svc

Un port-forward pour acceder à l'ui d'argocd.
kubectl port-forward svc/argocd-server 8088:80
Le mot de passe de admin user
kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d

- Installation personnalisée et le mode HA
Pour une installation personnalisée dans un environnement de production, vous pouvez télécharger et modifier les manifests avant de les appliquer:
-
- Personnalisations courantes:
- Modifier les limites de ressources
- Ajuster le nombre de réplicas
- Configurer les paramètres de stockage
- Ajouter des annotations ou des labels spécifiques
- Ajouter un ingress
- ConfigMap pour sso OIDC
- Personnalisations courantes:
curl -o argocd-ha-manifests.yaml https://raw.githubusercontent.com/argoproj/argo-cd/v2.14.9/manifests/ha/install.yaml
# Modifier le fichier selon vos besoins
Dans cet exemple, je vais modifier service argocd-server pour le passer en LoadBalancer et fixer LoadBalancerIP. J'ai deployer un lb k8s natif(kube-vip) sur mon cluster.
Editer le ficher argocd-ha-manifests.yaml
apiVersion: v1
kind: Service
metadata:
labels:
app.kubernetes.io/component: server
app.kubernetes.io/name: argocd-server
app.kubernetes.io/part-of: argocd
name: argocd-server
spec:
type: LoadBalancer # ligne ahjoutée
loadBalancerIP: 10.10.10.25 # ligne ahjoutée
ports:
- name: http
port: 80
protocol: TCP
targetPort: 8080
- name: https
port: 443
protocol: TCP
targetPort: 8080
selector:
app.kubernetes.io/name: argocd-server
Deployer argoCD
kubectl apply -n argocd -f argocd-ha-manifests.yaml
kubectl -n argocd get po,svc

Pour acceder à l'ui d'argocd : http://10.10.10.25
Le mot de passe de admin user
kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d

Commentaires
Aucun commentaire pour le moment.