Créez un cluster et une charge de travail Google Kubernetes Engine (GKE) rentables et optimisés pour la gestion des ressources dans un seul emplacement. Ce guide décrit les modèles suivants, que vous pouvez utiliser pour déployer une application Web de base :
Modèle de cluster GKE à région unique : créez l'infrastructure de base requise pour une application à région unique. Ce modèle configure un cluster GKE privé et sécurisé, optimisé pour la gestion des ressources.
Charge de travail GKE à région unique (aperçu) : déployez un graphique Helm qui inclut la configuration d'une application Web de base. La charge de travail est configurée pour effectuer un scaling en fonction de la charge du processeur et garantir la disponibilité de l'application lors d'interruptions volontaires.
Par exemple, vous pouvez déployer les modèles de cluster et de charge de travail pour répondre aux besoins suivants :
| Exemple | Besoin | Implémentation |
|---|---|---|
| Application métier interne | Une application interne nécessite une résidence stricte des données dans une région spécifique, une rentabilité pour une utilisation interne prévisible et une haute fiabilité. | Utilisez le déploiement à région unique pour garantir la localité des données. Utilisez l'autoscaling pour gérer efficacement les ressources en fonction de la demande des utilisateurs internes. |
| Backend d'e-commerce régional | Une plate-forme d'e-commerce a besoin d'une haute disponibilité dans une région spécifique pour assurer un service continu, d'une évolutivité pour gérer les pics de trafic lors d'événements commerciaux et d'une sécurité robuste pour les transactions et les données des clients. | Créez une configuration de cluster multizonal pour assurer une haute disponibilité régionale. Utilisez la configuration de démarrage sécurisé pour renforcer la sécurité des données client sensibles. |
| Plate-forme régionale de traitement et d'analyse des données | Une plate-forme de traitement et d'analyse de grands ensembles de données nécessite la localité des données pour la conformité et les performances, un calcul optimisé en termes de coûts pour les tâches par lot intermittentes et un accès sécurisé aux données. | Le déploiement à région unique garantit que les données restent dans les limites géographiques. Faites évoluer les ressources pour les tâches de traitement volumineuses et les périodes d'inactivité. |
Architecture
L'image suivante montre les composants et les connexions du modèle :
Les configurations des composants de ce modèle sont décrites ci-dessous :
Cluster GKE Standard: cluster à région unique rentable dans lequel votre charge de travail s'exécute.
Le tableau suivant décrit la configuration du cluster dans ce modèle :
Configuration Objectif locationest défini surus-central1.Limite les ressources du cluster à une seule zone géographique, ce qui garantit la localité des données et minimise les coûts et la latence liés au transfert de données interrégional. initial_node_countest défini sur1.Définit un nœud initial à créer dans le pool de nœuds par défaut du cluster lors de son premier provisionnement. Dans les clusters régionaux, il s'agit du nombre de nœuds par zone. release_channelest défini sur{"channel":"REGULAR"}.Garantit que votre cluster GKE reçoit des mises à jour stables et prévisibles, offrant un équilibre entre les nouvelles fonctionnalités et la fiabilité. enable_intranode_visibilityest défini surtrue.Active la visibilité du trafic intranœud dans les journaux de flux VPC, ce qui est nécessaire pour la surveillance du réseau, le dépannage et l'analyse de la sécurité. control_plane_endpoints_configest défini sur{"dns_endpoint_config":{"allow_external_traffic":true}}.Le plan de contrôle GKE est configuré pour être accessible publiquement afin de vous permettre de gérer le cluster en dehors de votre réseau de cloud privé virtuel (VPC). Pool de nœuds GKE : groupe de nœuds de calcul qui exécutent les conteneurs de l'application.
Le tableau suivant décrit les configurations du pool de nœuds dans ce modèle :
Configuration Objectif locationest défini surus-central1.Spécifie la région dans laquelle ce pool de nœuds est créé. Comme pour l'emplacement du cluster, cela garantit que les ressources du pool de nœuds se trouvent dans une seule zone géographique. autoscalingest défini sur{"max_node_count":3, "min_node_count":1}.Configure l'autoscaler de cluster pour ce pool de nœuds. Garantit que le pool de nœuds conserve toujours au moins un nœud et définit la limite supérieure à trois nœuds pour contrôler les coûts et la consommation de ressources. node_configest défini sur{"machine_type":"e2-medium", "oauth_scopes":["https://www.googleapis.com/auth/cloud-platform"], "shielded_instance_config":{"enable_secure_boot":true}}.Regroupe les configurations des nœuds de ce pool. Le type de machine est un équilibre entre le processeur et la mémoire, adapté aux charges de travail à usage général. Définit l'accès accordé au compte de service. Active le démarrage sécurisé pour les instances de VM protégées, ce qui permet de se protéger contre les logiciels malveillants au niveau du démarrage.
Configuration du graphique Helm
Le tableau suivant répertorie les configurations du graphique Helm, qui ont été personnalisées pour déployer et faire évoluer une application Web de base sur GKE.
| Configuration | Objectif |
|---|---|
replicaCount: 2 |
Crée deux instances répliquées initiales pour établir un niveau initial de redondance. |
image.repository: gcr.io/google-samples/hello-app |
Utilise une image Docker de serveur Web de base. |
resources.requests: {"cpu": "100m", "memory": "128Mi"} |
Spécifie la quantité minimale de processeur et de mémoire réservée à chaque pod, ce qui garantit la disponibilité des ressources et une planification efficace. |
hpa: {"enabled": true, "minReplicas": 2, "maxReplicas": 10, "targetCPUUtilizationPercentage": 60} |
Active l'Autoscaler horizontal de pods pour ajuster automatiquement le nombre de pods entre 2 et 10 en fonction de l'utilisation du processeur, ce qui garantit les performances et la rentabilité. |
service: {"type": "ClusterIP", "port": 80} |
Configure le service pour l'accès interne au cluster sur le port HTTP standard. |
pdb: {"enabled": true, "minAvailable": 1} |
Active un budget d'interruption de pod pour s'assurer qu'au moins une instance répliquée reste disponible lors d'interruptions volontaires, ce qui maintient une haute disponibilité. |
Créer votre application Web
Utilisez les modèles Cluster et charge de travail GKE à région unique pour déployer votre application Web.
Déployer votre infrastructure Web
Configurez et déployez le modèle Cluster GKE à région unique pour créer l'infrastructure de base sur laquelle votre charge de travail Web s'exécute.
Dupliquez et déployez le modèle Cluster GKE à région unique en tant qu'application.
Un cluster GKE est créé dans le projet de déploiement que vous choisissez.
Configurez les composants. Pour en savoir plus, consultez les ressources suivantes :
Cliquez sur Déployer. L'application se déploie après plusieurs minutes.
Dans le panneau Détails de l'application, cliquez sur l'onglet Sorties.
Identifiez le cluster_id de votre application. Vous utiliserez ces informations lorsque vous déploierez votre graphique Helm.
Déployer votre charge de travail Web
Utilisez le modèle Charge de travail GKE à région unique pour déployer votre charge de travail Web dans le cluster que vous avez créé. Vous déploierez un graphique Helm qui inclut la configuration de votre charge de travail Web.
Sur la page Catalogue Google, dans le modèle Charge de travail GKE à région unique, cliquez sur Créer une application.
Dans le champ Nom, saisissez un nom unique pour votre application.
Dans la zone Cible de déploiement GKE, procédez comme suit :
Dans la liste des projets, sélectionnez le projet dans lequel vous avez déployé le cluster GKE à partir de votre application Cluster GKE à région unique.
Dans la liste Région, sélectionnez la région dans laquelle vous avez déployé le cluster GKE.
Dans la liste Clusters, sélectionnez le cluster GKE déployé.
Dans la liste Espace de noms, saisissez l'espace de noms dans lequel vous avez déployé votre cluster GKE. Si vous n'avez pas modifié le nom, saisissez
default.Cliquez sur Créer une application.
L'application est créée et les fichiers de configuration s'affichent.
Dans le panneau Graphique Helm, procédez comme suit :
Vérifiez les détails de la configuration.
Facultatif : personnalisez la configuration en fonction de vos besoins spécifiques.
Pour déployer le graphique Helm dans votre cluster, cliquez sur Déployer.
Pour connaître la procédure détaillée, consultez Déployer des applications.
Après plusieurs minutes, la configuration du graphique Helm est déployée dans votre cluster GKE.
Étape suivante
- Découvrez comment déployer ou dupliquer ce modèle.
- Découvrez comment personnaliser les modèles en fonction de vos besoins spécifiques.
- Identifiez les bonnes pratiques architecturales générales dans le Google Cloud framework d'architecture.