Vous accordez l'accès aux opérations Google Cloud Managed Lustre en attribuant des rôles Identity and Access Management (IAM) aux utilisateurs.
Les autorisations IAM ne contrôlent que l'accès aux opérations Google Cloud Managed Lustre, comme la création d'une instance Google Cloud Managed Lustre. Pour contrôler l'accès aux opérations du système de fichiers sur l'instance, telles que la lecture ou l'écriture dans un fichier, utilisez les autorisations de fichier POSIX.
Autorisations et rôles
Managed Lustre utilise les autorisations suivantes :
| Autorisation | Description |
|---|---|
lustre.instances.create |
Créer des instances |
lustre.instances.delete |
Supprimer des instances |
lustre.instances.update |
Mettre à jour des instances. N'autorise pas la suppression |
lustre.instances.get |
Décrire les instances |
lustre.instances.list |
Répertorier toutes les instances |
lustre.instances.exportData
|
Exporter des données de Managed Lustre vers Cloud Storage |
lustre.instances.importData
|
Importer des données depuis Cloud Storage vers Managed Lustre |
lustre.locations.get |
Obtenir un emplacement |
lustre.locations.list |
Lister tous les emplacements compatibles |
lustre.mirrors.create |
Créer des miroirs |
lustre.mirrors.delete |
Supprimer des miroirs |
lustre.mirrors.update |
Mettre à jour les miroirs |
lustre.mirrors.get |
Décrire les miroirs |
lustre.mirrors.list |
Lister les miroirs |
lustre.operations.list |
Répertorier les opérations |
lustre.operations.get |
Obtenir une opération |
lustre.operations.cancel |
Annuler une opération |
lustre.operations.delete |
Supprimer une opération |
Google Cloud ne permet pas d'accorder des autorisations individuelles directement. Vous devez accorder un rôle contenant des autorisations. Les rôles prédéfinis de Managed Lustre sont les suivants :
- Administrateur Managed Lustre (
roles/lustre.admin) - Lecteur Managed Lustre (
roles/lustre.viewer)
Le tableau suivant répertorie les autorisations accordées par les rôles prédéfinis pour Managed Lustre, ainsi que le rôle Éditeur de base :
| Capacité | Éditeur (roles/editor) |
Managed Lustre (roles/lustre.*)
|
|
|---|---|---|---|
Administrateur (roles/lustre.admin) |
Lecteur (roles/lustre.viewer) |
||
| Créer des instances | |||
| Supprimer des instances | |||
| Mettre à jour les instances | |||
| Obtenir des instances | |||
| Répertorier les instances | |||
| Importer/Exporter des données depuis/vers Cloud Storage | |||
| Configurer un miroir Cloud Storage | |||
| Obtenir un emplacement | |||
| Répertorier les emplacements acceptés | |||
| Répertorier les opérations de longue durée | |||
| Obtenir une opération | |||
| Annuler une opération | |||
| Supprimer une opération | |||
Rôles personnalisés
Si les rôles prédéfinis disponibles ne répondent pas aux exigences d'accès de votre organisation, vous pouvez créer et appliquer des rôles IAM personnalisés.
Lorsque vous créez des rôles personnalisés, nous vous recommandons d'utiliser une combinaison de rôles prédéfinis pour vous assurer que les autorisations appropriées sont incluses.
Agent de service Managed Lustre
Managed Lustre utilise un agent de service pour accéder à d'autres ressources Google Cloud et effectuer des actions en votre nom. Un agent de service est un compte de service géré par Google qui est créé automatiquement la première fois que vous créez une instance Managed Lustre dans un projet. Il peut également être créé manuellement.
Vous ne devez accorder des autorisations à l'agent de service que si vous utilisez certaines fonctionnalités facultatives. Pour la création d'instances standards et les opérations de système de fichiers sans ces fonctionnalités, aucune configuration d'agent de service n'est requise.
Fonctionnalités nécessitant des autorisations d'agent de service
Les fonctionnalités suivantes nécessitent l'attribution de rôles IAM à l'agent de service :
| Fonctionnalité | Rôle requis | Ressource cible | Description |
|---|---|---|---|
| Clés de chiffrement gérées par le client (CMEK) | roles/cloudkms.cryptoKeyEncrypterDecrypter |
Clé Cloud KMS | Permet à l'agent de service de chiffrer et de déchiffrer les données au repos à l'aide de votre clé. |
| Miroir Cloud Storage | Rôle personnalisé accordant storage.buckets.get, storage.buckets.update, storage.objects.get et storage.objects.list |
Bucket Cloud Storage | Permet à l'agent de service de créer des notifications Pub/Sub et de dupliquer des objets du bucket dans l'instance. |
| Transférer des données depuis Cloud Storage | roles/storage.objectViewer |
Bucket Cloud Storage | Permet à l'agent de service de lire et d'importer des objets de votre bucket dans l'instance. |
| Transférer des données vers et depuis Cloud Storage | roles/storage.objectUser |
Bucket Cloud Storage | Permet à l'agent de service de lire et d'écrire des objets lors des opérations d'importation et d'exportation. |
Si vous n'utilisez aucune de ces fonctionnalités, vous pouvez ignorer les étapes restantes de cette section.
Créer ou récupérer l'identité de l'agent de service
Pour accorder des autorisations à l'agent de service, vous devez obtenir son identité. L'agent de service utilise le format suivant :
service-PROJECT_NUMBER@gcp-sa-lustre.
Utilisez l'une des options suivantes pour créer ou déterminer l'identité de l'agent de service :
Si vous n'avez pas créé d'instance Managed Lustre : créez l'agent de service manuellement en exécutant la commande
services identity create:gcloud beta services identity create \ --service=lustre.googleapis.com \ --project=PROJECT_NUMBER_OR_IDRemplacez PROJECT_NUMBER_OR_ID par le numéro ou l'ID du projet dans lequel vous souhaitez créer l'instance Managed Lustre. La commande renvoie un résultat semblable à celui-ci :
Service identity created: service-1234567890@gcp-sa-lustre.Si vous avez déjà créé une instance Managed Lustre : Pour créer l'identité de l'agent de service, récupérez votre numéro de projet à l'aide de la commande
gcloud projects describe:gcloud projects describe PROJECT_ID --format="value(projectNumber)"Remplacez PROJECT_ID par l'ID du projet. Ensuite, remplacez PROJECT_NUMBER dans l'adresse e-mail de l'agent de service :
service-PROJECT_NUMBER@gcp-sa-lustre.
Accorder des autorisations à l'agent de service
Après avoir obtenu l'identité de votre agent de service, consultez la documentation suivante pour accorder le rôle requis pour votre fonctionnalité :
- Clés de chiffrement gérées par le client (CMEK)
- Transférer des données vers et depuis Cloud Storage
- Miroir Cloud Storage
Google Cloud autorisations supplémentaires requises
En plus des autorisations lustre, vous pouvez avoir besoin d'autorisations dans d'autres servicesGoogle Cloud pour effectuer des tâches spécifiques :
| Tâche | Autorisation |
|---|---|
| Créer un réseau VPC | Consultez la section Autorisations requises de la page Configurer un réseau VPC. |
| Créer des VM Compute Engine | Administrateur d'instances Compute (v1).
(roles/compute.instanceAdmin.v1)
Pour en savoir plus, consultez la documentation Compute Engine. |
| Créer et gérer des clusters Google Kubernetes Engine | Administrateur de conteneurs.
(roles/container.admin)
Pour en savoir plus, consultez la documentation de Google Kubernetes Engine. |