Aller au contenu
  • Société
    • Qui sommes-nous
    • Nos valeurs
    • Nos partenaires
    • Entreprise citoyenne
    • Régions
  • Services
    • Expertise
    • Formation
    • Développement
    • Migration
    • Infogérance
  • Join the Team
  • Actualités
  • Blog
    • Blog easyteam.fr
    • Blog Cloud Natives
  • Formations
  • Rugb’Easyteam
  • Contact
Menu
  • Société
    • Qui sommes-nous
    • Nos valeurs
    • Nos partenaires
    • Entreprise citoyenne
    • Régions
  • Services
    • Expertise
    • Formation
    • Développement
    • Migration
    • Infogérance
  • Join the Team
  • Actualités
  • Blog
    • Blog easyteam.fr
    • Blog Cloud Natives
  • Formations
  • Rugb’Easyteam
  • Contact
Inscrivez-vous à la newsletter

Inscrivez-vous à la newsletter

Abonnez-vous maintenant et nous vous tiendrons au courant.
Nous respectons votre vie privée. Vous pouvez vous désabonner à tout moment.

Bienvenue sur le Blog d'EASYTEAM (ex ArKZoYd)

  • Accueil
  • Actualités
  • Cloud
  • Infrastructure
  • Données / Sécurité
  • Intégration
  • Dev / DevOps
  • SAM / FinOps
Menu
  • Accueil
  • Actualités
  • Cloud
  • Infrastructure
  • Données / Sécurité
  • Intégration
  • Dev / DevOps
  • SAM / FinOps
  • le 26/08/2019
  • Jean-pierre Carret
  • AWS, Cloud

Utiliser Kubernetes dans le Cloud AWS : Partie 3 – Application micro-services

Partager sur linkedin
LinkedIn
Partager sur twitter
Twitter
Partager sur facebook
Facebook

Le cluster EKS a été créé dans l’article précédent. Le paramétrage de l’application marron-vert va maintenant être appliqué dans le cluster EKS. Elle est disponible sur github.
Pour pouvoir déployer cette application, positionnez-vous sur le serveur dans lequel vous avez paramétré la connexion cliente avec Kubernetes (cf. partie 2 de cet article, commande « aws eks –region us-west-2 update-kubeconfig –name TEST-EKS »).

 

  • Téléchargement des fichiers de configuration pour déployer l’application dans notre cluster EKS :
# git clone https://github.com/jean-pierre-carret/marron-vert

 

  • Lancer la commande d’installation des « deployments » et « services ».
    Ce script shell contient :

    • la création du namespace : c’est un espace d’isolation interne à Kubernetes. Le nom donné au namespace est également un nom de domaine interne.
    • le lancement des deployments : le pod étant une enveloppe de container(s) pour gérer ses ressources, le deployment surcouche la gestion des pods au sein du cluster K8s, par exemple leur répartition au sein des nœuds du cluster. Les images docker sont récupérées via internet sur docker.io.
    • le lancement des services : les services font le lien entre les deployments et l’environnement réseau.

 

Chacune de ces actions correspond à l’exécution de la commande « kubectl » qui permet de communiquer avec K8s.

# ./lance.sh

 

Dans les fichiers *-deploy.yaml, la ligne replica indique le nombre de pods qui vont être déployés sur la totalité des nodes.

spec:
replicas: 5

 

Si l’on interroge le cluster K8s, l’on peut voir le nombre de pods démarrés, et leur répartition sur les nodes du cluster :

# kubectl get pod -n blog -o wide

NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE
apache1-86bf546fb-87xtr 1/1 Running 0 7m16s 192.168.114.182  ip-192-168-102-144.us-west-2.compute.internal
apache1-86bf546fb-lzgvh 1/1 Running 0 7m16s 192.168.163.194  ip-192-168-172-209.us-west-2.compute.internal
apache1-86bf546fb-swqmf 1/1 Running 0 7m16s 192.168.148.68   ip-192-168-154-237.us-west-2.compute.internal
apache2-68bfddd6bc-5psl5 1/1 Running 0 7m15s 192.168.128.82  ip-192-168-154-237.us-west-2.compute.internal
apache2-68bfddd6bc-dc7s4 1/1 Running 0 7m15s 192.168.121.157 ip-192-168-102-144.us-west-2.compute.internal
apache2-68bfddd6bc-f24hz 1/1 Running 0 7m15s 192.168.176.192 ip-192-168-172-209.us-west-2.compute.internal
nginx-6df5848c66-2rstd 1/1 Running 0   7m14s 192.168.176.61  ip-192-168-172-209.us-west-2.compute.internal
nginx-6df5848c66-9mcz2 1/1 Running 0   7m14s 192.168.164.137 ip-192-168-172-209.us-west-2.compute.internal
nginx-6df5848c66-fnxh5 1/1 Running 0   7m14s 192.168.136.50  ip-192-168-154-237.us-west-2.compute.internal
nginx-6df5848c66-wz22b 1/1 Running 0   7m14s 192.168.96.186  ip-192-168-102-144.us-west-2.compute.internal
nginx-6df5848c66-xmg4s 1/1 Running 0   7m14s 192.168.96.235  ip-192-168-102-144.us-west-2.compute.internal

 

Le point clé du déploiement de cette application se situe dans le fichier nginx-svc.yaml, sur le paramètre « type:LoadBalancer ».
En effet, l’intégration de Kubernetes dans AWS permet implicitement de créer un load balancer dans AWS par cette simple ligne.

spec:
selector:
app: marron-vert
type: LoadBalancer
ports:
- name: port1
protocol: TCP
port: 80
targetPort: 80

 

Voici un extrait du paramétrage du load balancer créé avec cette commande :

 

C’est le « Dns name » que nous allons utiliser pour nous connecter à notre application.

Attendez quelques minutes le temps que le load balancer se synchronise avec les nodes. Puis copiez l’URL du « Dns name » dans un navigateur.
Pour ma part :

http://a7239c6459c3a11e9a0a9022feb15940-2139625934.us-west-2.elb.amazonaws.com

Vous obtenez l’accès à l’application, fabuleux !

Pour accéder aux micro services : /vert ou /marron

 
Et si vous souhaitez vous former sur Amazon Web Services, découvrez notre offre de formations AWS.

Jean-pierre Carret
Jean-pierre Carret
Voir tous ses articles
Partager sur linkedin
LinkedIn
Partager sur twitter
Twitter
Partager sur facebook
Facebook

Laisser un commentaire Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Les derniers articles

  • Master Note Middleware 2020 27/01/2021
  • Synchronisation standby avec Dbvisit 25/01/2021
  • La fin d’OVM – L’essor d’OLVM 18/01/2021
  • Azure Netapp Files 11/01/2021
  • AWS – Choisir entre les services de messagerie pour les applications Serverless AWS 04/01/2021

Les derniers commentaires

  • Synchronisation standby avec Dbvisit - EASYTEAM dans DUPLICATE…FROM ACTIVE DATABASE
  • Laurent GALLET dans Chiffrement du flux SQL*NET
  • SylvainF dans Oracle et VMware : risques, enjeux et solutions
  • Développer avec Oracle Functions - EASYTEAM dans Oracle Cloud Infrastructure Container Engine for Kubernetes
  • Younes dans Les bonnes raisons d’utiliser un CDN (réseau de diffusion de contenus / Content Delivery Network)
Espace Membres
Mot de passe perdu ?
EASYTEAM

Tour Nova, 71 Boulevard National,
92250 La Garenne-Colombes
Tél. 0800 40 60 40
contact@easyteam.fr

Facebook
Linkedin
Twitter
Navigation
  • Accueil
  • Qui sommes-nous
  • Entreprise citoyenne
  • Nos valeurs
  • Régions
  • Partenaires
  • Contact
  • Support
Menu
  • Accueil
  • Qui sommes-nous
  • Entreprise citoyenne
  • Nos valeurs
  • Régions
  • Partenaires
  • Contact
  • Support
Services
  • Développement
  • Migration
  • Infogérance
  • Expertise
  • Formation
Menu
  • Développement
  • Migration
  • Infogérance
  • Expertise
  • Formation
Blog
  • Cloud
  • Infrastructures
  • Data
  • Intégration
  • Dev / DevOps
  • SAM / FinOps
  • Applications
Menu
  • Cloud
  • Infrastructures
  • Data
  • Intégration
  • Dev / DevOps
  • SAM / FinOps
  • Applications
Copyright 2018 - EASYTEAM, Tous droits réservés
Mentions légales
Politique de confidentialité​