Déployer une application sur un cluster Google Kubernetes Engine

Restez organisé à l'aide des collections Enregistrez et classez les contenus selon vos préférences.

Ce document explique comment déployer vos applications sur des clusters Google Kubernetes Engine.

Google Cloud Deploy vous permet de déployer vos charges de travail basées sur des conteneurs sur n'importe quel cluster Google Kubernetes Engine. Toutes les fonctionnalités Google Cloud Deploy sont compatibles avec les cibles GKE.

Avant de commencer

Dans ce fichier skaffold.yaml, le bloc deploy inclut kubectl, ce qui indique que Skaffold effectue le rendu et le déploiement sur Kubernetes (GKE). Les fichiers manifestes que vous utilisez pour cette application y sont répertoriés.

Créer votre configuration cible

Chaque cible peut être configurée dans le fichier YAML de votre pipeline de livraison ou dans un fichier distinct. Vous pouvez également configurer plusieurs cibles dans le même fichier, mais elles doivent se trouver dans des stanzas kind: Target différents.

Dans la définition de la cible, créez un bloc gke pour pointer vers le cluster GKE:

La syntaxe permettant de spécifier un cluster GKE est la suivante:

gke:
 cluster: projects/[project_name]/locations/[location]/clusters/[cluster_name]

Cet identifiant de ressource GKE utilise les éléments suivants:

  • [project_name] est le nom du projet Google Cloud dans lequel vous exécutez ce cluster.

    Le cluster sur lequel vous effectuez le déploiement n'a pas besoin d'être dans le même projet que votre pipeline de livraison.

  • [location] est la région dans laquelle le cluster a été créé.

  • [cluster_name] est le nom donné au cluster lors de sa création.

    Vous trouverez ce nom dans la liste des clusters de votre projet, dans Google Cloud Console.

    Liste des clusters dans Google Cloud Console

Voici un exemple de configuration cible qui pointe vers un cluster GKE:

      apiVersion: deploy.cloud.google.com/v1
      kind: Target
      metadata:
       name: dev
      description: development cluster
      gke:
       cluster: projects/my-app/locations/us-central1/clusters/my-app-dev-cluster

Créer votre configuration Skaffold

Cette section fournit et explique un exemple de configuration Skaffold simple à utiliser lors du déploiement sur un cluster GKE.

Voici un exemple de fichier skaffold.yaml pour le déploiement sur un cluster GKE:

apiVersion: skaffold/v3alpha1
kind: Config
metadata:
  name: gke-application
deploy:
  kubectl:
    manifests:
      - [MANIFEST]

Utiliser Skaffold avec Google Cloud Deploy explique plus en détail comment utiliser Skaffold avec votre pipeline de livraison.

Préparer vos fichiers manifestes Kubernetes

Pour déployer votre application sur GKE, vous devez fournir à Google Cloud Deploy un ou plusieurs fichiers manifestes Kubernetes, qui sont affichés, puis appliqués au(x) cluster(s) cible(s) pour déployer votre application.

Si vous ne disposez pas de ces fichiers manifestes, créez-les avant d'essayer de les déployer à l'aide d'un pipeline de livraison Google Cloud Deploy.

Vous pouvez utiliser Kustomize ou Helm pour créer des fichiers manifestes. Vous pouvez également utiliser Kustomize ou Helm si vos fichiers manifestes sont modélisés et doivent être affichés.

Synthèse

Maintenant que vous disposez de vos fichiers manifestes Kubernetes, de votre configuration skaffold.yaml et de vos définitions de cibles Google Cloud Deploy, et que vous avez enregistré vos cibles en tant que ressources Google Cloud Deploy, vous pouvez maintenant appeler votre pipeline de livraison pour créer une version et la faire progresser tout au long de la progression des cibles définies dans le pipeline.

Étapes suivantes