Exécuter des artefacts ESB sur Kubernetes - 7.2

Talend Software Development Life Cycle - Guide de bonnes pratiques

Version
7.2
Language
Français (France)
Product
Talend Big Data
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Module
Studio Talend
Talend Administration Center
Talend Artifact Repository
Talend CommandLine
Talend JobServer
Content
Administration et monitoring
Création et développement
Déploiement

Avant de commencer

Assurez-vous d'avoir un cluster Kubernetes configuré et en cours d'exécution.

Procédure

  1. Créez un fichier de configuration demorestroute.yaml comme suit, afin de déployer l'artefact DemoRESTRoute.
    # Kubernetes DemoRESTRoute deployment
    						#
    						apiVersion: v1
    						kind: Service
    						metadata:
    						name: demorestroute
    						labels:
    						app : demorestroute
    						spec:
    						ports:
    						- port: <MACHINE_PORT>
    						targetPort: 8065
    						name: http-demorestroute
    						selector:
    						app : demorestroute
    						---
    						apiVersion: extensions/v1beta1
    						kind: Deployment
    						metadata:
    						name: demorestroute-v1
    						spec:
    						replicas: 1
    						template:
    						metadata:
    						labels:
    						app : demorestroute
    						version: v1
    						spec:
    						containers:
    						- name: demorestroute
    						image: <ARTIFACT_REPOSITORY_DOCKER_REGISTRY>/<STUDIO_PROJECT>/demorestroute:latest
    						imagePullPolicy: IfNotPresent
    						ports:
    						- containerPort: 8065
    						---
    • <MACHINE_PORT> correspond au port utilisé pour lier le port de l'hôte au port du conteneur
    • <ARTIFACT_REPOSITORY_DOCKER_REGISTRY> correspond à l'URL de l'hôte du registre Docker du référentiel d'artefacts (Nexus, Artifactory)
    • <STUDIO_PROJECT> correspond au nom du projet Studio Talend, identique au nom du projet Git. Le nom des projets doit comporter uniquement des majuscules.
  2. Exécutez la commande kubectl apply -f demorestroute.yaml afin de déployer l'artifact dans Kubernetes.

    Exemple

    $ kubectl apply -f demorestroute.yaml
    						service/demorestroute created
    						deployment.extensions/demorestroute-v1 created
  3. Exécutez la commande kubectl get po afin de vérifier que le pod Kubernetes est en cours de fonctionnement.

    Exemple

    $ kubectl get po
    						NAME                                READY   STATUS    RESTARTS   AGE
    						demorestroute-v1-6c4dc67648-z6zh7   1/1     Running   0          8s
  4. Accédez à l'endpoint dans un navigateur, un document XML est retourné.

    Exemple

    http://localhost:<MACHINE_PORT>/services/customers
  5. Exécutez la commande kubectl delete -f demorestroute.yaml afin de nettoyer le pod Kubernetes après déploiement de l'artefact.

    Exemple

    $ kubectl delete -f demorestroute.yaml
    						service "demorestroute" deleted
    						deployment.extensions "demorestroute-v1" deleted