Déployer une application
Découvrez comment déployer une application "Hello World" sur un cluster OVHcloud Managed Kubernetes
Objectif
OVHcloud Managed Kubernetes service vous fournit des clusters Kubernetes sans les contraintes liées à l'installation ou à l'exploitation. Ce guide explique comment déployer une simple application Hello World sur un cluster OVHcloud Managed Kubernetes.
Prérequis
- un cluster OVHcloud Managed Kubernetes
- au moins un nœud sur le cluster (consultez le guide commander un nœud pour plus de détails)
- un
kubectlcorrectement configuré (consultez le guide configurer kubectl pour plus de détails)
Lorsqu'une ressource Service de type LoadBalancer est créée au sein d'un cluster Managed Kubernetes, un Load Balancer Public Cloud associé est automatiquement créé, permettant un accès public à votre application K8S. Le service Load Balancer Public Cloud est facturé à l'heure et apparaîtra dans votre projet Public Cloud. Pour plus d'informations, consultez la documentation suivante : tarifs du Network Load Balancer.
En pratique
Étape 1 - Déployer votre première application
La commande suivante va déployer une application simple (image nginx) à l'aide d'un Deployment Kubernetes et d'un Service Kubernetes.
Créez un nouveau namespace :
Créez un fichier hello.yml pour notre image Docker ovhplatform/hello :
Puis appliquez le fichier :
Après avoir appliqué le fichier YAML, un nouveau service hello-world et le déploiement hello-world-deployment correspondant sont créés dans le namespace hello-app :
L'application que vous venez de déployer est un simple serveur Nginx avec une unique page statique Hello World.
Concrètement, elle ne fait que déployer l'image Docker ovhplatform/hello.
Étape 2 - Lister les pods
Vous venez de déployer un service hello-world dans un pod sur votre worker node. Vérifiez que tout est correct en listant les pods.
Vous devriez voir votre pod nouvellement créé :
Dans ce tutoriel, nous avons choisi de créer un namespace spécifique pour isoler notre application.
Mais si vous souhaitez utiliser le namespace default à la place, c'est le namespace par défaut de Kubernetes ; vous n'avez donc pas besoin de le spécifier dans vos commandes kubectl.
Étape 3 - Lister les déploiements
Vous pouvez également vérifier que le déploiement est actif :
Vous verrez alors le hello-service-deployment :
Étape 4 - Lister les services
Utilisez maintenant kubectl pour afficher votre service :
Vous devriez voir votre service nouvellement créé :
Si vous obtenez <pending> sous EXTERNAL-IP, le provisionnement du LoadBalancer peut prendre une minute ou deux ; réessayez donc dans quelques instants.
Étape 5 - Tester votre service
Récupérez l'URL de l'application hello-world :
Copiez/collez l'URL dans votre navigateur pour voir votre nouvelle application hello-world en cours d'exécution :
Vous pouvez également tester le service nouvellement créé, en ligne de commande, avec curl :
Vous devriez voir votre service nouvellement créé :
Si vous obtenez un message d'erreur « Failed to connect to 135.125.83.30 port 80: Connection refused », c'est normal. Le service démarre ; vous devez donc attendre quelques secondes avant de le tester à nouveau.
Étape 6 - Nettoyage
Pour terminer, vous pouvez nettoyer en supprimant le service et le déploiement.
Supprimez le namespace (supprimer le namespace supprimera toutes les ressources créées à l'intérieur, y compris le déploiement et le service) :
Si vous listez les services, les déploiements et les pods, vous constaterez que hello-world n'existe plus :
Aller plus loin
Pour en savoir plus sur l'utilisation pratique de votre cluster Kubernetes, consultez notre site de documentation OVHcloud Managed Kubernetes.
-
Pour une formation ou une assistance technique sur la mise en œuvre de nos solutions, contactez votre commercial ou consultez la page Professional Services pour obtenir un devis et faire analyser votre projet par nos experts.
-
Échangez avec notre communauté d'utilisateurs.