


Utiliser Google Kubernetes Engine (GKE) dans Go : un guide complet
Ces dernières années, Kubernetes est devenu le standard de facto pour les plates-formes d'orchestration de conteneurs, et Google Kubernetes Engine (GKE) est un moteur Kubernetes entièrement géré fourni sur Google Cloud Platform. Il fournit non seulement une orchestration automatisée des conteneurs, une évolutivité et une haute disponibilité, mais permet également un démarrage et un ajustement rapides, facilitant ainsi le déploiement du code. Cet article vous expliquera comment utiliser GKE dans le langage Go. J'espère que cet article pourra devenir un guide complet d'utilisation de GKE.
Étape 1 : Créer un projet et activer l'API GKE
Tout d'abord, nous devons créer un projet Google Cloud Platform. Avant d'accéder à GKE, nous devons activer l'API GKE. Il existe de nombreuses façons d'activer l'API GKE, nous en présentons ici deux :
1 Sur la page "API et services" > "API" de Google Cloud Console, filtrez "API Kubernetes Engine" et activez-la.
2. Dans le cloud Shell ou le terminal local, entrez la commande suivante :
gcloud services enable container.googleapis.com
Étape 2 : Créer un cluster Kubernetes
Après avoir activé l'API GKE, nous devons créer un cluster Kubernetes. La taille et les spécifications du cluster peuvent être ajustées en fonction des besoins spécifiques. Voici un exemple contenant 3 nœuds de taille n1-standard-1 :
gcloud container clusters create example-cluster --zone=us-central1-a --num-nodes=3 --machine-type=n1-standard-1
Lors de l'exécution de la commande ci-dessus, nous devons remplacer "example-cluster" par le nom du cluster que nous devons créer. De plus, nous devons également sélectionner une région pour créer notre cluster, ici nous avons sélectionné us-central1-a. Le nombre et les spécifications des nœuds du cluster Kubernetes doivent également être ajustés en fonction de la situation réelle.
Étape 3 : Installer les outils client Kubernetes
Après avoir créé le cluster Kubernetes, nous devons installer et configurer les outils client Kubernetes pour gérer notre cluster. Les outils clients Kubernetes incluent généralement Kubectl et Helm. kubectl est un outil de ligne de commande pour Kubernetes qui peut être utilisé pour gérer des clusters, des pods et des conteneurs Kubernetes, et effectuer des opérations telles que la création, la mise à jour, la suppression et le développement. Helm est un gestionnaire de packages qui peut être utilisé pour installer et gérer des bibliothèques tierces.
La méthode pour installer et configurer kubectl est la suivante :
1. Installez kubectl dans le terminal local :
gcloud components install kubectl
2. Configurez kubectl avec le cluster actuel :
gcloud container clusters get-credentials example-cluster --zone=us-central1-a
3. pour gérer le cluster, par exemple, exécutez la commande suivante pour obtenir tous les nœuds du cluster Kubernetes :
kubectl get nodes
La méthode pour installer et configurer Helm est la suivante :
1. Téléchargez le fichier binaire Helm dans le terminal local et installez-le. it :
curl https://raw.githubusercontent.com/kubernetes/helm/master/scripts/get-helm-3 | bash
2. Connectez Helm au cluster Kubernetes actuel Configuration :
kubectl create serviceaccount --namespace kube-system tiller kubectl create clusterrolebinding tiller-cluster-rule --clusterrole=cluster-admin --serviceaccount=kube-system:tiller helm init --service-account tiller --upgrade
Étape 4 : Déployer l'application Go sur GKE
Enfin, nous pouvons déployer notre application Go dans le cluster Kubernetes. Voici un exemple de déploiement d'une application Go à l'aide des ressources de déploiement et de service :
1. Créez un fichier YAML contenant les ressources de déploiement et de service, par exemple :
apiVersion: apps/v1 kind: Deployment metadata: name: go-app-deployment labels: app: go-app spec: replicas: 3 selector: matchLabels: app: go-app template: metadata: labels: app: go-app spec: containers: - name: go-app image: gcr.io/example-project/go-app:latest ports: - containerPort: 8080 protocol: TCP --- apiVersion: v1 kind: Service metadata: name: go-app-service labels: app: go-app spec: selector: app: go-app ports: - port: 80 targetPort: 8080 protocol: TCP type: LoadBalancer
où "go-app-deployment" est le déploiement que nous avons créé. nom de la ressource, "go-app" est l'espace de noms que nous utilisons et "go-app-service" est le nom de la ressource de service que nous avons créée. Nous devons spécifier une image de conteneur pour la ressource de déploiement, telle que "gcr.io/example-project/go-app:latest".
2. Utilisez la commande kubectl pour appliquer ce fichier YAML au cluster Kubernetes :
kubectl apply -f go-app.yaml
3. Exécutez la commande suivante pour obtenir l'adresse IP externe créée sur GKE :
kubectl get service go-app-service
Dans les résultats renvoyés, vous pouvez trouver "EXTERNE". - Champ "IP", cette adresse est l'adresse de l'application Go que nous avons déployée.
Résumé
Cet article fournit un guide complet sur l'utilisation de GKE en langage Go. GKE est un moteur Kubernetes entièrement géré qui nous fournit une orchestration de conteneurs pour l'automatisation des données, une haute disponibilité, une évolutivité et une interface facile à utiliser. À l'aide des méthodes mentionnées dans cet article, nous pouvons facilement déployer des applications Go sur GKE et ajouter des processus de déploiement automatisés pour rendre le déploiement d'applications plus pratique.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

La bibliothèque utilisée pour le fonctionnement du numéro de point flottante dans le langage go présente comment s'assurer que la précision est ...

Problème de threading de file d'attente dans Go Crawler Colly explore le problème de l'utilisation de la bibliothèque Crawler Crawler dans le langage Go, les développeurs rencontrent souvent des problèmes avec les threads et les files d'attente de demande. � ...

Le problème de l'utilisation de Redessstream pour implémenter les files d'attente de messages dans le langage GO consiste à utiliser le langage GO et redis ...

La différence entre l'impression de chaîne dans le langage go: la différence dans l'effet de l'utilisation de fonctions println et string () est en Go ...

Que dois-je faire si les étiquettes de structure personnalisées à Goland ne sont pas affichées? Lorsque vous utilisez Goland pour le développement du langage GO, de nombreux développeurs rencontreront des balises de structure personnalisées ...

Deux façons de définir les structures dans le langage GO: la différence entre les mots clés VAR et le type. Lorsque vous définissez des structures, GO Language voit souvent deux façons d'écrire différentes: d'abord ...

Quelles bibliothèques de GO sont développées par de grandes entreprises ou des projets open source bien connus? Lors de la programmation en Go, les développeurs rencontrent souvent des besoins communs, ...

Lorsque vous utilisez SQL.Open, pourquoi le DSN ne signale-t-il pas une erreur? En langue go, sql.open ...
