Comment utiliser le nouveau référentiel Helm Chart de GitLab - CloudSavvy IT
Agence web » Actualités du digital » Comment utiliser le nouveau référentiel Helm Chart de GitLab –

Comment utiliser le nouveau référentiel Helm Chart de GitLab –

GitLab 14.1 a ajouté les graphiques Helm à la liste croissante du logiciel des formats de référentiel de packages pris en charge. Vous pouvez désormais stocker et partager vos graphiques à l’aide de vos projets GitLab, sans registre Helm séparé.

Les graphiques Helm sont une collection de manifestes Kubernetes YAML distribués sous forme de package unique. Ils accélèrent et facilitent le déploiement d’applications complexes dans votre cluster. L’utilisation de GitLab comme registre permet à votre équipe de stocker des graphiques avec votre code dans un référentiel géré par l’organisation.

Utilisation du référentiel Helm GitLab

Assurez-vous que votre instance GitLab a été mise à jour vers la version 14.1. Si vous utilisez le déploiement hébergé GitLab.com, vous aurez déjà tout ce dont vous avez besoin.

Préparez une charte Helm simple à envoyer vers votre référentiel. En cours helm create example produira un nouveau graphique passe-partout appelé example si vous n’en avez pas de disponible. Le graphique généré sera prêt à être transmis directement à GitLab, sans aucune modification.

Basculez vers votre instance GitLab. Créez un nouveau projet ou trouvez-en un existant. À l’aide de la barre latérale gauche, accédez à Packages & Registres > Package Registry dans votre projet. Si vous ne voyez pas ces menus, accédez à Paramètres> Général, développez l’en-tête « Visibilité, fonctionnalités du projet, autorisations » et activez la bascule « Packages ».

Ajout du référentiel à Helm

Vous êtes maintenant prêt à commencer à utiliser votre référentiel de packages. Vous devez l’enregistrer avec votre client Helm pour commencer.

helm repo add 
    --username <username> 
    --password <token> 
    example-repo 
    https://gitlab.example.com/api/v4/projects/<project>/packages/helm/stable

Le dépôt local sera nommé example-repo. Remplacer <username> avec votre nom d’utilisateur GitLab. La valeur de <token> devrait être un jeton d’accès personnel autorisé à envoyer des packages.

Vous pouvez générer un nouveau jeton en cliquant sur l’icône de votre profil en haut à droite de l’interface de GitLab. Sélectionnez « Préférences » dans le menu, puis « Jetons d’accès » dans la barre latérale gauche. Ajoutez un nouveau jeton d’accès avec le api portée. Le write_repository la portée peut sembler correcte mais ne fonctionnera pas réellement ; il ne facilite que l’accès à l’aide de Git sur HTTP, alors que Helm nécessite l’intégration d’API.

Remplacez le <project> dans l’URL de votre référentiel avec l’ID du projet GitLab vers lequel vous souhaitez pousser. Vous pouvez le trouver sur sa page d’accueil, sous son nom.

Pousser vers le référentiel

Une fois le référentiel ajouté, vous pouvez pousser n’importe quel répertoire avec un graphique Helm valide jusqu’à votre instance GitLab. Il est généralement plus simple d’installer le helm-push plugin qui ajoute un natif helm push commander.

Emballez votre graphique si vous ne l’avez pas déjà :

helm package example-chart

Cela créera une archive tar gzippée, example-chart.tgz, contenant votre graphique.

Ajouter le helm-push brancher:

helm plugin install https://github.com/chartmuseum/helm-push.git

Enfin, utilisez le plugin pour pousser votre graphique vers votre référentiel GitLab :

helm push example-chart.tgz example-repo

De retour dans l’interface Web GitLab, accédez à l’écran Packages & Registries > Package Registry de votre projet. Vous devriez voir votre graphique s’afficher.

Cliquez sur le nom du graphique pour afficher ses détails. Cet écran vous permet de suivre l’historique du graphique, de télécharger des fichiers de package et d’afficher les anciennes versions. Vous pouvez supprimer le graphique avec le bouton « Supprimer » situé en haut à droite.

Utilisation de graphiques dans le référentiel

Avec le graphique dans votre référentiel, vous pouvez le déployer dans votre cluster Kubernetes. helm install les commandes devraient fonctionner immédiatement :

# load the contents of repositories
helm repo update

# install the chart
helm install example-repo/example-chart

Cela démarrera un nouveau déploiement de graphique dans votre cluster actif. Utilisez le --kubeconfig et --namespace Helm signale si nécessaire de sélectionner un fichier de configuration Kubernetes approprié et de spécifier l’espace de noms dans lequel déployer.

Accéder au référentiel de GitLab dans un pipeline CI

Comme pour ses autres formats de package, le référentiel Helm de GitLab bénéficie d’une intégration intégrée avec le système CI/CD du logiciel. Vos pipelines recevront des variables d’environnement prédéfinies qui simplifient le processus de publication des graphiques. Vous n’avez pas besoin de définir de variables CI personnalisées pour configurer l’authentification.

Voici un exemple de pipeline qui crée un graphique et le publie dans votre référentiel :

stages:
  - helm-publish

helm-publish:
  stage: helm-publish
  image:
    name: alpine/helm:latest
    entrypoint: [""]
  script:
    - helm repo add --username $CI_REGISTRY_USER --password $CI_REGISTRY_PASSWORD my-repo $CI_REGISTRY
    - helm package my-chart
    - helm push my-chart.tgz my-repo

Le $CI_REGISTRY Les variables sont configurées pour vous permettre de pousser de nouveaux packages dans le registre. Vous pouvez les réutiliser lors de l’authentification dans les autres référentiels de GitLab, tels que npm, Composer, NuGet et Maven.

Résumé

GitLab dispose désormais d’un référentiel de chartes Helm intégré qui vous permet de stocker vos manifestes Kubernetes avec votre code. Toute personne disposant d’un accès en lecture au référentiel du projet pourra l’ajouter à son client Helm et déployer des graphiques dans des clusters Kubernetes.

Lorsqu’une nouvelle version de graphique est publiée, exécutez helm repo update puis utiliser helm upgrade pour déplacer les installations déployées vers la nouvelle version. Vous pouvez gérer les versions des graphiques depuis GitLab et supprimer les anciennes versions qui gaspillent de l’espace disque.

★★★★★