Retour au blog

Exploration de CloudSigma PaaS : Comment accéder à une application Kubernetes via une IP publique

Exploration de CloudSigma PaaS : Comment accéder à une application Kubernetes via une IP publique

CloudSigma PaaS permet aux utilisateurs d'exposer leurs applications à l'aide d'une adresse IP publique. Cette adresse doit être rattachée à un nœud du cluster Kubernetes . Il existe deux façons d'y parvenir dans l'environnement CloudSigma PaaS :

  • La première méthode consiste à rattacher l'IP publique à un équilibreur de charge dédié.1-Public IP for Access to Kubernetes Application in Jelastic PaaS
  • Une autre méthode consiste à rattacher l'IP publique à un nœud Worker de Kubernetes.

Dans ce tutoriel, nous vous guiderons sur la façon d'accéder à l'application Kubernetes en utilisant l'une ou l'autre de ces approches.

Configuration d'un équilibreur de charge dédié pour l'accès à l'application Kubernetes

Tout d'abord, nous allons apprendre à configurer un équilibreur de charge dédié pour l'accès à l'application :

  1. Rendez-vous sur le CloudSigma Marketplace pour localiser et installer le cluster Kubernetes. Ensuite, déployez votre application. À titre d'exemple, nous allons déployer le Jakarta EE Cargo Tracker.
  2. À côté de votre cluster Kubernetes, recherchez et cliquez sur Modifier la topologie de l'environnement. Dans la fenêtre qui s'ouvre sur votre écran, ajoutez un nœud d'équilibreur de charge dédié. Ensuite, rattachez-y une adresse IP publique comme ceci :

2-Public IP Jelastic PaaS

Dans notre exemple, nous avons utilisé l'équilibreur de charge NGINX . Plusieurs autres équilibreurs de charge sont disponibles, notamment HAProxy, LS Web ADC, et Varnish. Vous pouvez choisir celui que vous préférez utiliser.

Une fois la topologie modifiée, les modifications appliquées ressembleront à ceci :

3-Public IP for Access to Kubernetes Application in Jelastic PaaS

4-Public IP for Access to Kubernetes Application in Jelastic PaaS

3. L'étape suivante consiste à créer un enregistrement A pour un domaine personnalisé. Vous utiliserez la même adresse IP publique que celle utilisée lors des étapes précédentes. Dans cet exemple, nous utiliserons cargo-tracker.cloudsigma.website:

5-Public IP for Access to Kubernetes Application in Jelastic PaaS

4. Nous pouvons maintenant rattacher notre domaine personnalisé au cluster K8s. Pour ce faire, nous allons envoyer une demande d'émission d'un certificat de confiance Let’s Encrypt SSL :

  • Survolez l'équilibreur de charge et cliquez sur Add-Ons.
  • Recherchez et installez Let’s Encrypt Free SSL:

6-Public IP for Access in Jelastic PaaS-02

  • Dans la configuration, saisissez votre nom de domaine personnalisé, puis cliquez sur Installer. Dans notre cas, le nom de domaine est le suivant :

7-Public IP for Access to Kubernetes Application in Jelastic PaaS-

Enfin, nous avons maintenant rendu notre application accessible à l'aide du domaine personnalisé https://cargo-tracker.cloudsigma.website. Nous avons également chiffré le trafic sur notre application avec un certificat SSL Let's Encrypt valide et de confiance.

Accéder à l'application à l'aide de l'adresse IP publique du nœud Worker Kubernetes

Ensuite, nous examinerons l'autre approche que vous pouvez adopter pour rendre l'application disponible en dehors du cluster Kubernetes. Essentiellement, nous apprendrons comment rattacher une adresse IP publique à un nœud worker dans le cluster Kubernetes afin de rendre l'application directement accessible :

8-Public IP for Access to Kubernetes Application in Jelastic PaaS

Continuons avec le même exemple que celui présenté précédemment. Nous utiliserons le même cluster sur lequel nous avons déployé notre application Cargo Tracker. Voici comment procéder :

1. Cliquez sur Modifier la topologie de l'environnement. Ajoutez l'adresse IP publique au nœud worker :

9.1-Public IP for Access in Jelastic PaaS

2. Ensuite, créez un enregistrement A pour votre domaine personnalisé et associez-le à l'adresse IP que vous venez d'ajouter. Assurez-vous d'utiliser un nom de domaine différent de celui utilisé dans le chapitre précédent. For example, we will use the following domain name: cargo-tracker-worker.cloudsigma.website:

9.2-Public IP for Access to Kubernetes Application in Jelastic PaaS

3. Survolez le Control Plane ou le nœud Master et cliquez sur Add-Ons. Recherchez et installez Certificate Manager. Cela devrait installer un contrôleur cert-manager ainsi qu'un contrôleur d'ingress NGINX avec le type de service LoadBalancer. Ce dernier contient l'adresse IP associée à votre nœud worker. Il servira les ressources de la classe d'ingress « nginx-cert » :

10-Public IP for Access to Kubernetes Application in Jelastic PaaS-01

4. Dans le champ indiqué, saisissez votre nom de domaine préféré et cliquez sur Appliquer:

11-Public IP for Access to Kubernetes Application in Jelastic PaaS

5. Lors de l'installation, l'extension installe également une application de test appelée helloworld-cert. Vous pouvez simplement supprimer les ressources qu'elle utilise avec ces commandes :

Ces commandes doivent être saisies et exécutées à l'aide de SSH (SFTP) ou de la Web SSH Gate du Control Plane ou du Master Node. Survolez le nœud et cliquez sur l'option Web SSH à côté pour accéder à la passerelle.

L'autre option consiste à survoler le Control Plane ou Master Node et à cliquer sur Config. De là, allez dans le SFTP/SSH Gate et suivez les instructions fournies.

6. Afin de terminer le trafic SSL de l'application et de gérer le routage vers le service cargo-tracker, nous devons créer une ressource ingress appelée cargo-tracker-worker. Disons que nous utilisons cargo-tracker-worker-ingress.yaml. Vous pouvez utiliser un éditeur tel que vi pour créer un fichier puis coller le code suivant :

Après cela, procédez comme suit :

7. Lorsque vous créez cet ingress, Certificate Manager émettra automatiquement un certificat SSL Let’s Encrypt pour votre nouveau nom de domaine. Laissez une minute ou deux au système avant de vérifier si votre application est disponible sur le nouveau nom de domaine personnalisé, qui est https://cargo-tracker-worker.cloudsigma.website dans notre cas.

Et voilà ! En suivant ces étapes, vous avez exposé votre application en utilisant deux approches différentes. Par conséquent, vous verrez deux ingresses. Pour nous, ce sont :

  • cargo-tracker

Cet ingress dessert le trafic de l'application qui passe par l'IP publique de votre équilibreur de charge dédié.

  • cargo-tracker-worker

Cet ingress est configuré pour desservir le trafic de l'application qui provient directement de l'IP associée au nœud worker K8s.

Voici comment ils apparaîtront :

12-Public IP for Access in Jelastic PaaS

Selon le type d'implémentation pour lequel vous optez, vous n'aurez besoin que d'un seul ingress en production. CloudSigma PaaS donne à ses utilisateurs l'accès à un certain nombre d'outils pour effectuer l'équilibrage de charge selon les besoins de leurs applications. N'hésitez pas à lire et à en savoir plus sur l'équilibrage de charge sur la plateforme. Nous disposons également de guides détaillés sur les bases de l'équilibrage de charge avec des outils tels que NGINX et HAProxy parmi d'autres outils disponibles.

Vous pouvez essayer le PaaS de CloudSigma avec notre essai gratuit de 7 jours ou nous contacter si vous souhaitez que nous vous fournissions plus de détails et une démonstration de la plateforme. 

Essayer gratuitement pendant 7 jours

author

Zhenya Mocheva

Auteur · CloudSigma

Preslav Dobrev est un designer créatif chez CloudSigma, axé sur une identité commerciale cohérente à travers des canaux marketing traditionnels et innovants. Il excelle à fusionner la vision artistique avec le marketing stratégique pour créer des récits de marque percutants.

Commentaires

Aucun commentaire pour l'instant. Soyez le premier.