Les instances Google Cloud Managed Lustre sont provisionnées dans un réseau géré par Google qui se connecte à votre cloud privé virtuel (VPC) à l'aide de l'accès aux services privés.
Vous pouvez connecter votre instance Managed Lustre à des VM Compute Engine clientes ou à des clusters Google Kubernetes Engine à l'aide de l'une des configurations réseau suivantes :
Même réseau VPC : connectez vos ressources clientes et votre instance Managed Lustre au même réseau VPC.
Réseaux VPC distincts : déployez vos ressources clientes dans un réseau VPC distinct et connectez les deux réseaux à l'aide de Network Connectivity Center. Pour savoir comment configurer NCC, consultez la documentation de Network Connectivity Center.
Pour les deux configurations, suivez les instructions de cette page pour configurer le réseau VPC dans lequel l'instance Managed Lustre sera provisionnée. Si vous utilisez des réseaux VPC distincts, les instructions incluent un encadré contenant les étapes requises pour votre réseau VPC client.
Autorisations requises
Vous devez disposer des autorisations IAM suivantes :
serviceusage.services.enablecompute.networks.createcompute.addresses.createcompute.addresses.getcompute.firewalls.createservicenetworking.services.addPeering
Vous pouvez accorder ces autorisations en ajoutant tous les rôles prédéfinis suivants :
- Administrateur Service Usage (
roles/serviceusage.serviceUsageAdmin) - Administrateur de réseaux Compute (
roles/compute.networkAdmin) - Administrateur de sécurité de Compute (
roles/compute.securityAdmin)
Vous pouvez également créer un rôle personnalisé contenant les autorisations spécifiques.
Pour attribuer un rôle à un utilisateur :
Google Cloud Console
Dans la Google Cloud console, accédez à la page IAM.
Cliquez sur Accorder l'accès.
Dans le champ New principals (Nouveaux comptes principaux), saisissez l'adresse e-mail de l'utilisateur.
Dans le menu déroulant Select a role (Sélectionner un rôle), sélectionnez le rôle à accorder.
Pour accorder plusieurs rôles, cliquez sur Add another role (Ajouter un autre rôle) et sélectionnez le rôle suivant.
Cliquez sur Enregistrer.
gcloud
gcloud projects add-iam-policy-binding PROJECT_ID \
--member="user:EMAIL_ADDRESS" \
--role=ROLE
Créer et appairer le VPC
Pour créer un réseau VPC et configurer une connexion d'accès aux services privés pour Managed Lustre, procédez comme suit :
Google Cloud Console
Activez l'API Service Networking.
Créez un réseau VPC en mode personnalisé :
Dans la Google Cloud console, accédez à la page Réseaux VPC.
Cliquez sur Créer un réseau VPC.
Saisissez un Nom pour le réseau.
Désélectionnez Set MTU automatically (Définir automatiquement la MTU) et saisissez
8896dans le champ Maximum transmission unit (MTU) (Unité de transmission maximale (MTU)).Dans Mode de création du sous-réseau, sélectionnez Personnalisé.
Créez un sous-réseau principal pour vos ressources GKE ou Compute Engine :
- Dans la section Nouveau sous-réseau, saisissez un Nom pour le sous-réseau.
- Sélectionnez une Région.
- Dans le champ Plage IPv4, saisissez la plage IPv4 principale (par exemple,
10.128.0.0/20). - Cliquez sur OK.
- Cliquez sur Créer pour créer le réseau VPC.
Allouez une plage d'adresses IP pour l'accès aux services privés.
Cette plage d'adresses IP internes est utilisée pour la connexion d'accès aux services privés, qui appaire votre réseau VPC au réseau géré par Google où les ressources Managed Lustre sont provisionnées. Cette plage allouée est utilisée pour fournir des adresses IP aux instances Managed Lustre et ne doit pas chevaucher de sous-réseaux dans votre réseau VPC.
Chaque instance Managed Lustre nécessite un bloc CIDR contigu avec une longueur de préfixe d'au moins 23.
Nous vous recommandons de créer une plage d'adresses IP plus grande (/20) pour permettre la création de plusieurs instances Managed Lustre ou l'utilisation d'autres autres Google Cloud services.
- Sur la page Réseaux VPC, cliquez sur le nom de votre réseau VPC.
- Sélectionnez l'onglet Accès aux services privés.
- Sélectionnez l'onglet Plages d'adresses IP allouées pour les services.
- Cliquez sur Allouer une plage d'adresses IP.
- Saisissez un Nom et une Description pour la plage allouée (par exemple,
Managed Lustre VPC Peering). - Spécifiez la plage d'adresses IP :
- Pour laisser Google sélectionner une plage disponible, sélectionnez Automatique et saisissez une longueur de préfixe de
20. - Pour spécifier une plage spécifique, sélectionnez Personnalisée et saisissez un bloc CIDR avec une longueur de préfixe d'au moins
/23(par exemple,10.128.0.0/20). - Cliquez sur Allouer.
Notez le bloc CIDR associé à la plage allouée.
Dans le tableau Plages d'adresses IP allouées pour les services, recherchez la plage que vous avez créée et notez la valeur dans la colonne Plage d'adresses IP internes (par exemple,
10.128.0.0/20). Vous spécifierez cette plage comme source à l'étape suivante.-
- Dans la Google Cloud console, accédez à la page Règles de pare-feu.
Accéder aux stratégies de pare-feu
- Cliquez sur Créer une règle de pare-feu.
- Entrez un nom pour la règle de pare-feu.
- Dans le champ Réseau, sélectionnez votre réseau VPC.
- Pour le Sens du trafic, sélectionnez Entrée.
- Pour l'option Action en cas de correspondance, sélectionnez Autoriser.
- Pour les Cibles, sélectionnez Toutes les instances du réseau.
- Dans la section Filtre source, sélectionnez Plages IPv4.
- Dans le champ Plages IPv4 sources, saisissez le bloc CIDR de la plage allouée notée à l'étape précédente.
- Dans Protocoles et ports, sélectionnez Protocoles et ports spécifiés.
- Cochez la case TCP et saisissez
988, 6988dans le champ Ports. - Cliquez sur Créer.
Pour les réseaux VPC distincts : si vos VM clientes ou vos clusters GKE résident dans un réseau VPC distinct connecté via Network Connectivity Center, les règles de pare-feu des deux réseaux VPC doivent autoriser le trafic provenant de la plage d'adresses IP allouée. Répétez l'étape Créer une règle de pare-feu ... pour créer une règle de pare-feu dans le réseau VPC client autorisant le trafic TCP entrant sur les ports
988et6988à partir du bloc CIDR alloué. Établissez la connexion d'accès aux services privés.
Cette connexion n'est requise que dans le réseau VPC où l'instance Managed Lustre est provisionnée.
- Sur la page Réseaux VPC, cliquez sur le nom de votre réseau VPC.
- Sélectionnez l'onglet Accès aux services privés.
- Sélectionnez l'onglet Connexions privées aux services.
- Cliquez sur Créer une connexion.
- Dans la liste Allocation attribuée, sélectionnez la plage d'adresses IP allouée que vous avez créée.
- Cliquez sur Se connecter.
gcloud
Activez la mise en réseau de services.
gcloud services enable servicenetworking.googleapis.comCréez un réseau VPC en mode personnalisé.
gcloud compute networks create NETWORK_NAME \ --subnet-mode=custom \ --mtu=8896Créez un sous-réseau principal pour vos ressources GKE ou Compute Engine.
gcloud compute networks subnets create SUBNET_NAME \ --network=NETWORK_NAME \ --range=10.128.0.0/20 \ --region=REGIONAllouez une plage d'adresses IP pour l'accès aux services privés.
Cette plage d'adresses IP internes est utilisée pour la connexion d'accès aux services privés, qui appaire votre réseau VPC au réseau géré par Google où les ressources Managed Lustre sont provisionnées. Cette plage allouée est utilisée pour fournir des adresses IP aux instances Managed Lustre et ne doit pas chevaucher de sous-réseaux dans votre réseau VPC.
Chaque instance Managed Lustre nécessite un bloc CIDR contigu avec une longueur de préfixe d'au moins 23.
Nous vous recommandons de créer une plage d'adresses IP plus grande (/20) pour permettre la création de plusieurs instances Managed Lustre ou l'utilisation d'autres autres Google Cloud services.
gcloud compute addresses create IP_RANGE_NAME \ --global \ --purpose=VPC_PEERING \ --prefix-length=20 \ --description="Managed Lustre VPC Peering" \ --network=NETWORK_NAMEObtenez le bloc CIDR associé à la plage que vous avez créée à l'étape précédente.
CIDR_BLOCK=$( gcloud compute addresses describe IP_RANGE_NAME \ --global \ --format="value[separator=/](address, prefixLength)" )-
gcloud compute firewall-rules create FIREWALL_NAME \ --allow=tcp:988,tcp:6988 \ --network=NETWORK_NAME \ --source-ranges=$CIDR_BLOCKPour les réseaux VPC distincts : si vos VM clientes ou vos clusters GKE résident dans un réseau VPC distinct connecté via Network Connectivity Center, les règles de pare-feu des deux réseaux VPC doivent autoriser le trafic provenant de la plage d'adresses IP allouée (
$CIDR_BLOCK). Exécutez la commandefirewall-rules createune deuxième fois pour créer la règle de pare-feu dans le réseau VPC client :gcloud compute firewall-rules create CLIENT_FIREWALL_NAME \ --allow=tcp:988,tcp:6988 \ --network=CLIENT_NETWORK_NAME \ --source-ranges=$CIDR_BLOCK
Établissez la connexion d'accès aux services privés.
gcloud services vpc-peerings connect \ --network=NETWORK_NAME \ --ranges=IP_RANGE_NAME \ --service=servicenetworking.googleapis.comCette connexion n'est requise que dans le réseau VPC où l'instance Managed Lustre est provisionnée.
Créer des sous-réseaux supplémentaires pour plusieurs cartes d'interface réseau
Si vous prévoyez d'utiliser plusieurs cartes d'interface réseau pour agréger la bande passante, vous devez créer un sous-réseau distinct dans votre réseau VPC pour chaque carte d'interface réseau.
Pour bénéficier de plusieurs cartes d'interface réseau, vous devez utiliser des types de machines Compute Engine avec plusieurs cartes d'interface réseau physiques connectées à des VPC standards. Les cartes d'interface réseau qui se connectent à des VPC avec des profils réseau RDMA ne peuvent pas être utilisées pour augmenter la bande passante réseau générale. Pour en savoir plus, consultez la section Mise en réseau et machines GPU.
Pour créer un sous-réseau pour une carte d'interface réseau physique supplémentaire :
Google Cloud Console
Dans la Google Cloud console, accédez à la page Réseaux VPC.
Cliquez sur le nom de votre réseau VPC.
Cliquez sur Ajouter un sous-réseau.
Dans la section Nouveau sous-réseau :
- Saisissez un Nom pour le sous-réseau.
- Sélectionnez une Région.
- Saisissez une plage d'adresses IP (par exemple,
10.130.0.0/20). - Cliquez sur Ajouter.
gcloud
gcloud compute networks subnets create SUBNET_NAME_2 \
--network=NETWORK_NAME \
--range=10.130.0.0/20 \
--region=REGION
Répétez cette étape pour chaque carte d'interface réseau supplémentaire. Assurez-vous que les plages d'adresses IP de chaque sous-réseau ne se chevauchent pas.
VPC Service Controls
Managed Lustre est compatible avec VPC Service Controls (VPC-SC). Pour en savoir plus, consultez la section Sécuriser des instances avec un périmètre de service.
Résoudre les problèmes de configuration du VPC
Autorisation refusée pour ajouter l'appairage pour le service servicenetworking.googleapis.com
ERROR: (gcloud.services.vpc-peerings.connect) User [$(USER)] does not have
permission to access services instance [servicenetworking.googleapis.com]
(or it may not exist): Permission denied to add peering for service
'servicenetworking.googleapis.com'.
Cette erreur signifie que vous ne disposez pas de l'autorisation IAM servicenetworking.services.addPeering sur votre compte utilisateur.
Pour savoir comment ajouter l'un des rôles suivants à votre compte, consultez la section Contrôle des accès avec IAM pour obtenir des instructions :
roles/compute.networkAdminouroles/servicenetworking.networksAdmin
Impossible de modifier les plages allouées dans CreateConnection
ERROR: (gcloud.services.vpc-peerings.connect) The operation
"operations/[operation_id]" resulted in a failure "Cannot modify allocated
ranges in CreateConnection. Please use UpdateConnection."
Cette erreur est renvoyée lorsque vous avez déjà créé un appairage VPC sur ce réseau avec des plages d'adresses IP différentes. Il existe deux solutions :
Remplacez les plages d'adresses IP existantes :
Google Cloud Console
Dans la Google Cloud console, accédez à la page Réseaux VPC.
Cliquez sur le nom de votre réseau VPC.
Sélectionnez l'onglet Accès aux services privés.
Dans l'onglet Accès aux services privés, sélectionnez l'onglet Connexions privées aux services.
Cliquez sur le nom de la connexion (par exemple,
servicenetworking-googleapis-com).Dans la liste Allocation attribuée, sélectionnez la nouvelle plage allouée et décochez les cases de toutes les plages allouées que vous souhaitez remplacer.
Cliquez sur Enregistrer.
gcloud
gcloud services vpc-peerings update \
--network=NETWORK_NAME \
--ranges=IP_RANGE_NAME \
--service=servicenetworking.googleapis.com \
--force
Vous pouvez également ajouter la nouvelle plage d'adresses IP à la connexion existante :
Google Cloud Console
Dans la Google Cloud console, accédez à la page Réseaux VPC.
Cliquez sur le nom de votre réseau VPC.
Sélectionnez l'onglet Accès aux services privés.
Dans l'onglet Accès aux services privés, sélectionnez l'onglet Connexions privées aux services.
Cliquez sur le nom de la connexion.
Dans la liste Allocation attribuée, conservez les plages allouées existantes sélectionnées et sélectionnez la nouvelle plage allouée.
Cliquez sur Enregistrer.
gcloud
Récupérez la liste des plages d'adresses IP existantes pour l'appairage :
EXISTING_RANGES="$( gcloud services vpc-peerings list \ --network=NETWORK_NAME \ --service=servicenetworking.googleapis.com \ --format="value(reservedPeeringRanges.list())" \ --flatten=reservedPeeringRanges )Ajoutez ensuite la nouvelle plage à l'appairage :
gcloud services vpc-peerings update \ --network=NETWORK_NAME \ --ranges="${EXISTING_RANGES}",IP_RANGE_NAME \ --service=servicenetworking.googleapis.com