Digital Ocean Kubernetes Services
Documentation Déploiement Kubernetes sur DigitalOcean

Ce document détaille les étapes pour configurer un cluster Kubernetes sur DigitalOcean avec doctl, déployer une application web pour l'entreprise fictive ALPHA sur tk.skyfik.net, configurer un Service Kubernetes, un Ingress, et des certificats TLS avec cert-manager tout en utilisant le registre de conteneurs de Digital Ocean
Prérequis
Un compte DigitalOcean avec un cluster Kubernetes (
k8s-imad) et un registre de conteneurs (imad-cr).doctlinstallé via snap.kubectlethelminstallés.Outils supplémentaires :
vim,k9s(facultatif, pour l'interface de gestion Kubernetes).Un domaine (
tk.skyfik.net) configuré dans le DNS pour pointer vers l'adresse IP du service NGINX Ingress.
Étapes de configuration
1. Installation et configuration de doctl
doctlInitialiser l'authentification :
doctl auth initFournir le token d'accès DigitalOcean.
Vérifier les comptes configurés :
Obtenir les informations du compte :
Connexion au registre de conteneurs DigitalOcean ( si vous utiliser le registry digital ocean ) :
Connecter doctl à Docker :
doctl à Docker :Vérifier les secrets du registre dans Kubernetes :
Vérifie la présence du secret registry-imad-cr.
2. Configuration du cluster Kubernetes
Créer un répertoire de travail :
Sauvegarder la configuration kubeconfig du cluster :
kubeconfig du cluster :Enregistre la configuration du cluster k8s-imad dans ~/.kube/config.
Vérifier les nœuds du cluster :
Lister les namespaces :
Utiliser k9s pour gérer le cluster si installé(facultatif) :
k9s pour gérer le cluster si installé(facultatif) :Ouvre l'interface k9s pour gérer le cluster.
3. Création et déploiement de l'application web
Créer la structure de répertoires pour l'application :
Créer le fichier html/index.html :
html/index.html :Contenu du fichier :
Créer un fichier Dockerfile :
Dockerfile :Contenu du fichier :
Construire l'image Docker :
Tagger l'image pour le registre DigitalOcean :
Pousser l'image vers le registre :
4. Déploiement de l'application sur Kubernetes
Créer un fichier deployment.yaml :
deployment.yaml :Contenu du fichier :
Créer un fichier service.yaml :
service.yaml :Contenu du fichier :
Appliquer les configurations :
Vérifier le déploiement et le service :
5. Configuration de l'Ingress avec TLS
Installer le contrôleur NGINX Ingress :
Vérifier le service NGINX Ingress :
Créer un fichier certificat.yaml pour cert-manager :
certificat.yaml pour cert-manager :Contenu du fichier :
Installer cert-manager :
Appliquer le ClusterIssuer :
Créer un fichier ingress.yaml :
ingress.yaml :Contenu du fichier :
Appliquer l'Ingress :
Vérifier l'état des ressources :
6. Configuration DNS
Configurez le domaine
tk.skyfik.netdans votre fournisseur DNS pour pointer vers l'adresse IP publique du servicenginx-ingress-ingress-nginx-controller.Obtenez l'IP du Load Balancer avec :
7. Dépannage
Vérifier les logs d'un pod :
Détailler l'Ingress :
Vérifier les événements du certificat :
Problèmes de registre : Assurez-vous que le secret
registry-imad-crexiste :
Structure des fichiers
Dans le répertoire DOKS/alpha-web/ :
Architecture

Conclusion
Cette configuration déploie une application web sur un cluster Kubernetes DigitalOcean, accessible via tk.skyfik.net avec un certificat TLS fourni par Let's Encrypt. Utilisez k9s ou kubectl pour surveiller et gérer vos ressources.
Last updated
Was this helpful?