Maison >développement back-end >Golang >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!