arrow_back

Configurer Jenkins sur Kubernetes Engine

Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

Configurer Jenkins sur Kubernetes Engine

Lab 1 heure universal_currency_alt 5 crédits show_chart Intermédiaire
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP117

Google Cloud – Ateliers adaptés au rythme de chacun

Dans cet atelier pratique, vous apprendrez comment configurer Jenkins sur Google Kubernetes Engine pour vous aider à gérer votre pipeline de livraison de logiciels.

Objectifs

  • Créer un cluster Kubernetes avec Kubernetes Engine
  • Créer un déploiement et des services Jenkins
  • Se connecter à Jenkins

Préparation

Avant de cliquer sur le bouton "Démarrer l'atelier"

Lisez ces instructions. Les ateliers sont minutés, et vous ne pouvez pas les mettre en pause. Le minuteur, qui démarre lorsque vous cliquez sur Démarrer l'atelier, indique combien de temps les ressources Google Cloud resteront accessibles.

Cet atelier pratique vous permet de suivre vous-même les activités dans un véritable environnement cloud, et non dans un environnement de simulation ou de démonstration. Nous vous fournissons des identifiants temporaires pour vous connecter à Google Cloud le temps de l'atelier.

Pour réaliser cet atelier :

  • vous devez avoir accès à un navigateur Internet standard (nous vous recommandons d'utiliser Chrome) ;
Remarque : Ouvrez une fenêtre de navigateur en mode incognito/navigation privée pour effectuer cet atelier. Vous éviterez ainsi les conflits entre votre compte personnel et le temporaire étudiant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.
  • vous disposez d'un temps limité ; une fois l'atelier commencé, vous ne pouvez pas le mettre en pause.
Remarque : Si vous possédez déjà votre propre compte ou projet Google Cloud, veillez à ne pas l'utiliser pour réaliser cet atelier afin d'éviter que des frais supplémentaires ne vous soient facturés.

Démarrer l'atelier et se connecter à la console Google Cloud

  1. Cliquez sur le bouton Démarrer l'atelier. Si l'atelier est payant, un pop-up s'affiche pour vous permettre de sélectionner un mode de paiement. Sur la gauche, vous trouverez le panneau Détails concernant l'atelier, qui contient les éléments suivants :

    • Le bouton Ouvrir la console Google
    • Le temps restant
    • Les identifiants temporaires que vous devez utiliser pour cet atelier
    • Des informations complémentaires vous permettant d'effectuer l'atelier
  2. Cliquez sur Ouvrir la console Google. L'atelier lance les ressources, puis ouvre la page Se connecter dans un nouvel onglet.

    Conseil : Réorganisez les onglets dans des fenêtres distinctes, placées côte à côte.

    Remarque : Si la boîte de dialogue Sélectionner un compte s'affiche, cliquez sur Utiliser un autre compte.
  3. Si nécessaire, copiez le nom d'utilisateur inclus dans le panneau Détails concernant l'atelier et collez-le dans la boîte de dialogue Se connecter. Cliquez sur Suivant.

  4. Copiez le mot de passe inclus dans le panneau Détails concernant l'atelier et collez-le dans la boîte de dialogue de bienvenue. Cliquez sur Suivant.

    Important : Vous devez utiliser les identifiants fournis dans le panneau de gauche. Ne saisissez pas vos identifiants Google Cloud Skills Boost. Remarque : Si vous utilisez votre propre compte Google Cloud pour cet atelier, des frais supplémentaires peuvent vous être facturés.
  5. Accédez aux pages suivantes :

    • Acceptez les conditions d'utilisation.
    • N'ajoutez pas d'options de récupération ni d'authentification à deux facteurs (ce compte est temporaire).
    • Ne vous inscrivez pas aux essais offerts.

Après quelques instants, la console Cloud s'ouvre dans cet onglet.

Remarque : Vous pouvez afficher le menu qui contient la liste des produits et services Google Cloud en cliquant sur le menu de navigation en haut à gauche. Icône du menu de navigation

Activer Cloud Shell

Cloud Shell est une machine virtuelle qui contient de nombreux outils pour les développeurs. Elle comprend un répertoire d'accueil persistant de 5 Go et s'exécute sur Google Cloud. Cloud Shell vous permet d'accéder via une ligne de commande à vos ressources Google Cloud.

  1. Cliquez sur Activer Cloud Shell Icône Activer Cloud Shell en haut de la console Google Cloud.

Une fois connecté, vous êtes en principe authentifié et le projet est défini sur votre ID_PROJET. Le résultat contient une ligne qui déclare YOUR_PROJECT_ID (VOTRE_ID_PROJET) pour cette session :

Your Cloud Platform project in this session is set to YOUR_PROJECT_ID

gcloud est l'outil de ligne de commande pour Google Cloud. Il est préinstallé sur Cloud Shell et permet la complétion par tabulation.

  1. (Facultatif) Vous pouvez lister les noms des comptes actifs à l'aide de cette commande :
gcloud auth list
  1. Cliquez sur Autoriser.

  2. Vous devez à présent obtenir le résultat suivant :

Résultat :

ACTIVE: * ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (Facultatif) Vous pouvez lister les ID de projet à l'aide de cette commande :
gcloud config list project

Résultat :

[core] project = <ID_Projet>

Exemple de résultat :

[core] project = qwiklabs-gcp-44776a13dea667a6 Remarque : Pour consulter la documentation complète sur gcloud, dans Google Cloud, accédez au guide de présentation de la gcloud CLI.

Tâche 1 : Préparer l'environnement

Tout d'abord, vous allez préparer votre environnement de déploiement et télécharger un exemple d'application.

  1. Définissez la zone Compute Engine par défaut sur  :
gcloud config set compute/zone {{{project_0.default_zone}}}
  1. Clonez l'exemple de code :
git clone https://github.com/GoogleCloudPlatform/continuous-deployment-on-kubernetes.git
  1. Accédez au répertoire de l'exemple de code :
cd continuous-deployment-on-kubernetes

Créer un cluster Kubernetes

Vous allez maintenant utiliser Kubernetes Engine pour créer et gérer votre cluster Kubernetes.

  1. Provisionnez un cluster Kubernetes à l'aide de Kubernetes Engine. Cette étape peut prendre quelques minutes :
gcloud container clusters create jenkins-cd \ --num-nodes 2 \ --scopes "https://www.googleapis.com/auth/projecthosting,cloud-platform"

Les champs d'application supplémentaires autorisent l'accès de Jenkins à Cloud Source Repositories et à Google Container Registry.

Tester la tâche terminée

Cliquez sur Vérifier ma progression pour valider la tâche exécutée. Si votre tâche a bien été exécutée, vous recevez une note d'évaluation.

Créer un cluster Kubernetes (zone : )
  1. Vérifiez que votre cluster est en cours d'exécution :
gcloud container clusters list

Exemple de résultat :

Vérifiez que RUNNING (En cours d'exécution) s'affiche dans la colonne STATUS (État).

NAME LOCATION MASTER_VERSION MASTER_IP MACHINE_TYPE NODE_VERSION NUM_NODES STATUS jenkins-cd {{{project_0.default_zone}}} 1.9.7-gke.3 35.237.126.84 e2-medium 1.9.7-gke.3 2 RUNNING
  1. Récupérez les identifiants de votre cluster. Ces identifiants permettent à Kubernetes Engine d'accéder au cluster que vous venez de provisionner.
gcloud container clusters get-credentials jenkins-cd
  1. Vérifiez que vous pouvez vous connecter à votre cluster :
kubectl cluster-info

Exemple de résultat : Si le cluster est en cours d'exécution, les URL auxquelles vos composants Kubernetes sont accessibles s'affichent.

Kubernetes master is running at https://130.211.178.38 GLBCDefaultBackend is running at https://130.211.178.38/api/v1/proxy/namespaces/kube-system/services/default-http-backend Heapster is running at https://130.211.178.38/api/v1/proxy/namespaces/kube-system/services/heapster KubeDNS is running at https://130.211.178.38/api/v1/proxy/namespaces/kube-system/services/kube-dns kubernetes-dashboard is running at https://130.211.178.38/api/v1/proxy/namespaces/kube-system/services/kubernetes-dashboard

Tâche 2 : Configurer Helm

Dans cet atelier, vous allez installer Jenkins à partir du dépôt Charts à l'aide de Helm. Helm est un gestionnaire de paquets qui facilite la configuration et le déploiement des applications Kubernetes. Une version stable récente de Helm est déjà pré-installée sur votre Cloud Shell.

Pour savoir quelle version vous utilisez et vous assurer que Helm est bien installé, vous pouvez exécuter la commande helm version dans Cloud Shell.

  1. Ajoutez le dépôt des charts jenkins de Helm :
helm repo add jenkins https://charts.jenkins.io
  1. Mettez à jour le dépôt pour obtenir la liste à jour des charts :
helm repo update

Tâche 3 : Configurer et installer Jenkins

À l'aide d'un fichier de valeurs personnalisées, vous allez ajouter le plug-in Google Cloud permettant la connexion au dépôt Cloud Source Repositories avec des identifiants de compte de service.

  1. Utilisez la CLI Helm pour déployer le chart avec vos paramètres de configuration :
helm upgrade --install -f jenkins/values.yaml myjenkins jenkins/jenkins

Tester la tâche terminée

Cliquez sur Vérifier ma progression pour valider la tâche exécutée. Si votre tâche a bien été exécutée, vous recevez une note d'évaluation.

Configurer et installer Jenkins
  1. Une fois l'exécution de la commande terminée, vérifiez que le pod Jenkins passe à l'état "Running" (En cours d'exécution) et que l'état du conteneur est "READY" (Prêt). Cette opération peut prendre environ deux minutes :
kubectl get pods

Exemple de résultat :

NAME READY STATUS RESTARTS AGE myjenkins-0 2/2 Running 0 1m
  1. Exécutez la commande suivante pour configurer le transfert de port vers l'interface utilisateur Jenkins à partir de Cloud Shell.
echo http://127.0.0.1:8080 kubectl --namespace default port-forward svc/myjenkins 8080:8080 >> /dev/null &
  1. À présent, vérifiez que le service Jenkins a bien été créé :
kubectl get svc

Exemple de résultat :

NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE myjenkins 10.35.249.67 8080/TCP 3h myjenkins-agent 10.35.248.1 50000/TCP 3h kubernetes 10.35.240.1 443/TCP 9h

Nous utilisons le plug-in Kubernetes de sorte que les nœuds de compilation se lancent automatiquement selon les besoins, lorsque le maître Jenkins le demande. Une fois leur travail terminé, ces nœuds sont arrêtés automatiquement et leurs ressources sont restituées au pool de ressources du cluster.

Notez que ce service expose les ports 8080 et 50000 à tous les pods correspondant au sélecteur (selector). Cela expose les ports d'enregistrement de l'interface utilisateur Web et du compilateur/de l'agent Jenkins dans le cluster Kubernetes.

De plus, le service jenkins-ui est exposé via une adresse IP de cluster, et donc inaccessible depuis l'extérieur du cluster.

Tâche 4 : Se connecter à Jenkins

  1. Le chart Jenkins crée automatiquement un mot de passe administrateur à votre intention. Pour le récupérer, exécutez la commande suivante :
kubectl exec --namespace default -it svc/myjenkins -c jenkins -- /bin/cat /run/secrets/additional/chart-admin-password && echo
  1. Pour accéder à l'interface utilisateur Jenkins, cliquez sur le bouton Aperçu sur le Web dans Cloud Shell, puis sur Prévisualiser sur le port 8080.

Menu déroulant &quot;Aperçu sur le Web&quot; développé avec l&#39;option &quot;Prévisualiser sur le port 8080&quot; mise en évidence

  1. Vous devriez maintenant pouvoir vous connecter avec le nom d'utilisateur admin et le mot de passe généré automatiquement.
Il se peut également que vous soyez automatiquement connecté.

Jenkins est maintenant configuré dans votre cluster Kubernetes.

Tester vos connaissances

Voici quelques questions à choix multiples qui vous permettront de mieux maîtriser les concepts abordés lors de cet atelier. Répondez-y du mieux que vous le pouvez.

Félicitations !

Terminer votre quête

Cet atelier d'auto-formation fait partie de la quête Google Cloud Skills Boost intitulée Google Cloud Solutions I: Scaling Your Infrastructure. Une quête est une série d'ateliers associés qui constituent un parcours de formation. Si vous terminez cette quête, vous obtenez un badge attestant de votre réussite. Vous pouvez rendre publics les badges que vous recevez et ajouter leur lien dans votre CV en ligne ou sur vos comptes de réseaux sociaux. Inscrivez-vous à cette quête pour obtenir immédiatement les crédits associés. Découvrez toutes les quêtes disponibles dans le catalogue Google Cloud Skills Boost.

Atelier suivant

Continuez votre quête en suivant l'atelier Pipelines de livraison continue avec Spinnaker et Kubernetes Engine ou consultez ces suggestions :

Étapes suivantes et informations supplémentaires

Pour aller plus loin :

Formations et certifications Google Cloud

Les formations et certifications Google Cloud vous aident à tirer pleinement parti des technologies Google Cloud. Nos cours portent sur les compétences techniques et les bonnes pratiques à suivre pour être rapidement opérationnel et poursuivre votre apprentissage. Nous proposons des formations pour tous les niveaux, à la demande, en salle et à distance, pour nous adapter aux emplois du temps de chacun. Les certifications vous permettent de valider et de démontrer vos compétences et votre expérience en matière de technologies Google Cloud.

Dernière mise à jour du manuel : 15 août 2022

Dernier test de l'atelier : 15 août 2022

Copyright 2024 Google LLC Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms d'entreprises et de produits peuvent être des marques des entreprises auxquelles ils sont associés.