Para otorgar acceso a las operaciones de Google Cloud Managed Lustre, asigna roles de Identity and Access Management (IAM) a los usuarios.
Los permisos de IAM solo controlan el acceso a las operaciones de Google Cloud Managed Lustre, como crear una instancia de Google Cloud Managed Lustre. Para controlar el acceso a las operaciones del sistema de archivos en la instancia, como leer o escribir en un archivo, usa los permisos de archivo POSIX.
Permisos y roles
Managed Lustre usa los siguientes permisos:
| Permiso | Descripción |
|---|---|
lustre.instances.create |
Crea instancias nuevas |
lustre.instances.delete |
Borra las instancias |
lustre.instances.update |
Actualizar instancias No permite la eliminación |
lustre.instances.get |
Describe instancias |
lustre.instances.list |
Crea una lista de todas las instancias |
lustre.instances.exportData
|
Exporta datos de Managed Lustre a Cloud Storage |
lustre.instances.importData
|
Importa datos de Cloud Storage a Managed Lustre |
lustre.locations.get |
Obtén una ubicación |
lustre.locations.list |
Enumera todas las ubicaciones compatibles |
lustre.mirrors.create |
Crea duplicaciones nuevas |
lustre.mirrors.delete |
Borra duplicaciones |
lustre.mirrors.update |
Actualiza los espejos |
lustre.mirrors.get |
Describir los espejos |
lustre.mirrors.list |
Enumera espejos |
lustre.operations.list |
Mostrar lista de operaciones |
lustre.operations.get |
Obtener una operación |
lustre.operations.cancel |
Cancela una operación |
lustre.operations.delete |
Borra una operación |
Google Cloud no admite el otorgamiento de permisos individuales de forma directa, sino que debes otorgar un rol que contenga permisos. Los roles predefinidos de Managed Lustre son los siguientes:
- Administrador de Managed Lustre (
roles/lustre.admin) - Visualizador de Managed Lustre (
roles/lustre.viewer)
En la siguiente tabla, se enumeran los permisos que otorgan los roles predefinidos para Managed Lustre, así como el rol básico de editor:
| Función | Editor (roles/editor) |
Managed Lustre (roles/lustre.*)
|
|
|---|---|---|---|
Administrador (roles/lustre.admin) |
Visualizador (roles/lustre.viewer) |
||
| Crea instancias | |||
| Borra las instancias | |||
| Actualizar instancias | |||
| Obtener instancias | |||
| Mostrar lista de instancias | |||
| Importar o exportar datos desde o hacia Cloud Storage | |||
| Configura una duplicación de Cloud Storage | |||
| Obtén una ubicación | |||
| Enumera las ubicaciones compatibles | |||
| Enumerar las operaciones de larga duración | |||
| Obtener una operación | |||
| Cancela una operación | |||
| Borra una operación | |||
Funciones personalizadas
Si los roles predefinidos disponibles no cumplen con los requisitos de acceso de tu organización, puedes crear y aplicar roles de IAM personalizados.
Cuando crees roles personalizados, te recomendamos usar una combinación de roles predefinidos para garantizar que los permisos correctos se incluyan juntos.
Agente de servicio de Managed Lustre
Managed Lustre usa un agente de servicio para acceder a otros recursos de Google Cloud y realizar acciones en tu nombre. Un agente de servicio es una cuenta de servicio administrada por Google que se crea automáticamente la primera vez que creas una instancia de Managed Lustre en un proyecto. También se puede crear de forma manual.
Solo es necesario otorgar permisos al agente de servicio si usas ciertas funciones opcionales. Para la creación de instancias estándar y las operaciones del sistema de archivos sin estas funciones, no se necesita ninguna configuración del agente de servicio.
Funciones que requieren permisos de agente de servicio
Las siguientes funciones requieren que se otorguen roles de IAM al agente de servicio:
| Función | Rol requerido | Recurso objetivo | Descripción |
|---|---|---|---|
| Claves de encriptación administradas por el cliente (CMEK) | roles/cloudkms.cryptoKeyEncrypterDecrypter |
Clave de Cloud KMS | Permite que el agente de servicio encripte y desencripte datos en reposo con tu clave. |
| Duplicación de Cloud Storage | Rol personalizado que otorga storage.buckets.get, storage.buckets.update, storage.objects.get y storage.objects.list |
Bucket de Cloud Storage | Permite que el agente de servicio cree notificaciones de Pub/Sub y duplique objetos del bucket en la instancia. |
| Transfiere datos desde Cloud Storage | roles/storage.objectViewer |
Bucket de Cloud Storage | Permite que el agente de servicio lea e importe objetos de tu bucket a la instancia. |
| Transfiere datos hacia y desde Cloud Storage | roles/storage.objectUser |
Bucket de Cloud Storage | Permite que el agente de servicio lea y escriba objetos durante las operaciones de importación y exportación. |
Si no usas ninguna de estas funciones, puedes omitir los pasos restantes de esta sección.
Crea o recupera la identidad del agente de servicio
Para otorgar permisos al agente de servicio, debes obtener su identidad. El agente de servicio usa el siguiente formato:
service-PROJECT_NUMBER@gcp-sa-lustre.
Usa una de las siguientes opciones para crear o determinar la identidad del agente de servicio:
Si no creaste una instancia de Managed Lustre, crea el agente de servicio de forma manual ejecutando el comando
services identity create:gcloud beta services identity create \ --service=lustre.googleapis.com \ --project=PROJECT_NUMBER_OR_IDReemplaza PROJECT_NUMBER_OR_ID por el número o ID del proyecto en el que deseas crear la instancia de Managed Lustre. El comando muestra un resultado similar al siguiente:
Service identity created: service-1234567890@gcp-sa-lustre.Si ya creaste una instancia de Managed Lustre, para construir la identidad del agente de servicio, recupera el número de proyecto con el comando
gcloud projects describe:gcloud projects describe PROJECT_ID --format="value(projectNumber)"Reemplaza PROJECT_ID con el ID del proyecto. Luego, sustituye PROJECT_NUMBER en la dirección de correo electrónico del agente de servicio:
service-PROJECT_NUMBER@gcp-sa-lustre.
Otorga permisos al agente de servicio
Después de obtener la identidad de tu agente de servicio, consulta la siguiente documentación para otorgar el rol requerido para tu función:
- Claves de encriptación administradas por el cliente (CMEK)
- Transfiere datos hacia y desde Cloud Storage
- Duplicación de Cloud Storage
Permisos adicionales Google Cloud requeridos
Además de los permisos de lustre, es posible que necesites permisos en otros
servicios deGoogle Cloud para realizar tareas específicas:
| Tarea | Permiso |
|---|---|
| Crear red de VPC | Consulta la sección Permisos necesarios de Configura una red de VPC. |
| Crea VMs de Compute Engine | Administrador de instancias de Compute (v1)
(roles/compute.instanceAdmin.v1)
Para obtener más información, consulta la
documentación de Compute Engine. |
| Crea y administra clústeres de Google Kubernetes Engine | Administrador de contenedores
(roles/container.admin)
Para obtener más información, consulta la documentación de Google Kubernetes Engine. |