Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3
Cette page décrit les exigences du réseau VPC partagé et du projet hôte pour Cloud Composer.
Le VPC partagé permet aux organisations d'établir des limites en termes de budgétisation et de contrôle des accès au niveau du projet, tout en permettant une communication sécurisée et efficace à l'aide d'adresses IP privées au-delà de ces limites. Dans la configuration du VPC partagé, Cloud Composer peut appeler des services hébergés dans d'autres projets Google Cloud de la même organisation, sans exposer les services à l'Internet public.
Consignes relatives au VPC partagé
Le VPC partagé nécessite que vous spécifiiez un projet hôte auquel appartiennent les réseaux et sous-réseaux et un projet de service, qui est associé au projet hôte. Lorsque Cloud Composer participe à un VPC partagé, l'environnement Cloud Composer se trouve dans le projet de service.
Pour configurer un VPC partagé, sélectionnez les plages d'adresses IP suivantes dans le projet hôte :
- Plage d'adresses IP principale du sous-réseau utilisé par les nœuds GKE comme couche Compute Engine pour Cloud Composer
- Plage d'adresses IP secondaire pour les services GKE.
- Plage d'adresses IP secondaire pour les pods GKE.
Les plages d'adresses IP secondaires ne doivent pas chevaucher d'autres plages secondaires de ce VPC.
Assurez-vous que les plages secondaires sont suffisamment grandes pour s'adapter à la taille du cluster et au scaling de votre environnement.
Consultez la section Créer un cluster de VPC natif pour obtenir des instructions sur la configuration des plages secondaires pour les pods et les services.
La plage d'adresses principale du sous-réseau doit s'adapter à la croissance prévue et prendre en compte les adresses IP inutilisables.
Si vous utilisez l'agent de masquage d'adresses IP et la configuration d'adresses IP privées pour vos environnements, ajoutez les plages d'adresses IP des nœuds et des pods à la section
nonMasqueradeCIDRs
du ConfigMapip-masq-agent
. Pour en savoir plus, consultez la section Configurer un agent de masquage d'adresses IP.
Préparation
Trouvez les identifiants et les numéros des projets suivants :
- Projet hôte : le projet contenant le réseau VPC partagé.
- Projet de service : le projet contenant l'environnement Cloud Composer.
Activez l'API GKE pour vos projets hôte et de service.
Si vous créez un environnement dans le projet de service à l'aide de la console Google Cloud, votre compte doit disposer de l'autorisation
compute.subnetworks.use
dans le projet hôte. Sinon, la liste des sous-réseaux disponibles ne contient pas les sous-réseaux du projet hôte. Si vous créez un environnement à l'aide degcloud
, de l'API ou Terraform, votre compte n'a pas besoin de cette autorisation supplémentaire.
Configurer le projet de service
Si aucun environnement Cloud Composer n'a jamais été créé dans le projet de service, provisionnez le compte de l'agent de service Composer dans le projet de service :
gcloud beta services identity create --service=composer.googleapis.com`
Configurer le projet hôte
Configurez le projet hôte comme décrit ci-après.
(Adresse IP privée) Activer l'accès privé à Google
Si vous prévoyez d'utiliser des environnements d'adresses IP privées, activez l'accès privé à Google pour le sous-réseau du projet hôte. Vous pouvez le faire à l'étape suivante, au moment de configurer les ressources réseau pour un sous-réseau nouveau ou existant.
Si vous prévoyez d'utiliser des environnements d'adresses IP publiques, nous vous recommandons quand même
En activant l'accès privé à Google pour le sous-réseau de l'hôte
projet. Si vous choisissez de ne pas utiliser l'accès privé à Google, assurez-vous d'être
pour ne pas bloquer le trafic.
La règle de pare-feu implicite de sortie autorisée pour IPv4
autoriser. Cela est nécessaire pour atteindre les points de terminaison *.googleapis.com
.
Configurer les ressources réseau
Choisissez l'une des options suivantes pour allouer et configurer la mise en réseau ressources. Pour chaque option, vous devez nommer les plages d'adresses IP secondaires pour les pods et les services.
Option 1. Créez un réseau VPC, un sous-réseau et deux plages d'adresses IP secondaires.
Lors de la création du sous-réseau, utilisez la plage d'adresses IP principale en suivant les instructions.
Lors de la définition du sous-réseau, définissez deux plages d'adresses IP secondaires pour les pods et les services.
Option 2. Créez un sous-réseau et deux plages d'adresses IP secondaires dans un VPC existant.
Lors de la création du sous-réseau, utilisez la plage d'adresses IP principale en suivant les instructions.
Lors de la définition du sous-réseau, définissez deux plages d'adresses IP secondaires pour les pods et les services.
Option 3. Créez deux plages d'adresses IP secondaires dans un sous-réseau et un réseau VPC existants.
- Définissez deux plages d'adresses IP secondaires pour les pods et les services, en suivant les instructions. Évitez les conflits de noms et de plages d'adresses IP avec les plages secondaires existantes.
Configurer un VPC partagé et associer le projet de service
Si ce n'est pas déjà fait, configurez le VPC partagé. Si vous avez déjà configuré un VPC partagé, passez à l'étape suivante.
Associez le projet de service que vous utiliserez pour héberger les environnements Cloud Composer.
Lorsque vous associez un projet, conservez les autorisations du réseau VPC par défaut.
Accorder des autorisations au compte d'agent de service Composer
Dans le projet hôte :
Modifier les autorisations pour le compte d'agent de service Composer
service-SERVICE_PROJECT_NUMBER@cloudcomposer-accounts.iam.gserviceaccount.com
)Pour ce compte, ajoutez un autre rôle au niveau du projet:
Pour les environnements d'adresses IP privées, ajoutez le rôle
Composer Shared VPC Agent
.Pour les environnements d'adresses IP publiques, ajoutez le rôle
Compute Network User
.
Accorder des autorisations au compte d'agent de service des API Google
Dans le projet hôte :
Modifier les autorisations pour le compte d'agent de service des API Google
SERVICE_PROJECT_NUMBER@cloudservices.gserviceaccount.com
Ajoutez un autre rôle, Utilisateur de réseau Compute (
compute.networkUser
) au niveau du projet. Il s'agit d'un exigence applicable aux groupes d'instances gérés utilisés avec un VPC partagé car ce type de compte de service effectue des tâches comme création.
Modifier les autorisations pour les comptes de service GKE
Dans le projet hôte, modifiez les autorisations pour les comptes de service GKE service-SERVICE_PROJECT_NUMBER@container-engine-robot.iam.gserviceaccount.com
.
Pour chaque compte de service,
ajoutez un autre rôle, compute.networkUser
en utilisant l'un des rôles
les options suivantes:
Accordez ce rôle au niveau du sous-réseau pour permettre à un compte de service de configurer les appairages de VPC requis par Cloud Composer. Dans ce cas, explicitement spécifier le sous-réseau que l'environnement doit utiliser, car le le cluster de l'environnement Google ne dispose peut-être pas des autorisations nécessaires pour trouver le sous-réseau le réseau.
Accordez ce rôle au niveau du projet pour l'ensemble du projet hôte. Dans ce le compte de service GKE du projet de service les autorisations requises pour utiliser n'importe quel sous-réseau du projet hôte.
Modifier les autorisations pour le compte de service GKE du projet de service
Dans le projet hôte, modifiez les autorisations pour le compte de service GKE du projet de service.
Pour ce compte, ajoutez un autre rôle au niveau du projet,
Utilisateur de l'agent de service hôte Kubernetes Engine
(roles/container.hostServiceAgentUser
).
Cela permet au compte de service GKE du projet de service d'utiliser le compte de service GKE du projet hôte pour configurer des ressources réseau partagées.
(Adresse IP privée, facultatif) Configurer des règles de pare-feu et la connectivité aux domaines Google
Dans une configuration VPC partagée avec des environnements d'adresses IP privées, vous pouvez opter pour acheminer tout le trafic vers les API et services Google via plusieurs adresses IP appartenant au domaine private.googleapis.com
, et configurer les règles de pare-feu correspondantes. Dans cette configuration, votre environnement accède aux API et services Google via des adresses IP routables uniquement depuis Google Cloud. Si votre configuration de VPC partagé utilise
VPC Service Controls, puis acheminer le trafic via restricted.googleapis.com
à la place.
Si votre configuration de VPC partagé utilise des environnements IP privés:
- (Facultatif) Configurez la connectivité aux API et services Google.
- (Facultatif) Configurez des règles de pare-feu.
Si votre configuration de VPC partagé utilise VPC Service Controls, utilisez pour les environnements utilisant VPC Service Controls:
Conclusion
Vous avez terminé la configuration du réseau VPC partagé pour les projets de service et d'hôte.
Vous pouvez maintenant créer des environnements dans le projet de service qui utilisent l'hôte le réseau VPC du projet.
Étape suivante
- Créez un environnement Cloud Composer et spécifiez le réseau et le sous-réseau du projet hôte en tant que paramètres de configuration.