Usa una secuencia de comandos posterior al inicio
En esta guía, se describe cómo usar una secuencia de comandos posterior al inicio con Colab Enterprise. En esta guía, también se describe cómo configurar variables de entorno para usarlas con tu secuencia de comandos posterior al inicio.
Descripción general
Puedes usar una secuencia de comandos posterior al inicio para realizar tareas después del proceso de inicio del entorno de ejecución de Colab Enterprise. Por ejemplo, puedes usar una secuencia de comandos posterior al inicio para instalar paquetes específicos o realizar cambios en la VM de tu entorno de ejecución.
Para usar una secuencia de comandos posterior al inicio en Colab Enterprise, especifícala cuando crees una plantilla de entorno de ejecución. Luego, cuando creas un entorno de ejecución basado en esa plantilla de entorno de ejecución, la secuencia de comandos posterior al inicio se ejecuta al final del proceso de inicio.
Ubicación de la secuencia de comandos posterior al inicio
El URI de la secuencia de comandos posterior al inicio puede ser cualquiera de los siguientes:
- Un URI de Cloud Storage: Por ejemplo,
gs://BUCKET_NAME/SCRIPT_FILE_NAME. Si tu secuencia de comandos posterior al inicio está almacenada en Cloud Storage, debes usar un entorno de ejecución con credenciales de usuario final habilitadas. Esto se debe a que Colab Enterprise usa tus credenciales de usuario para acceder al bucket de Cloud Storage. - Una URL HTTPS: Por ejemplo,
https://example.com/FOLDER_NAME/SCRIPT_FILE_NAME. No se admite el uso de una URL HTTPS cuando creas tu plantilla de entorno de ejecución con la consola de Google Cloud .
Comportamiento de secuencia de comandos posterior al inicio
Puedes especificar el comportamiento de la secuencia de comandos posterior al inicio. Consulta la siguiente tabla:
| Comportamiento | Descripción |
|---|---|
Ejecutar una vez (RUN_ONCE) |
Predeterminado. Colab Enterprise ejecuta la secuencia de comandos posterior al inicio solo una vez, durante la creación del entorno de ejecución. |
Ejecutar en cada inicio (RUN_EVERY_START) |
Después de cada inicio, Colab Enterprise ejecuta la secuencia de comandos posterior al inicio. Por ejemplo, si el apagado inactivo detiene el entorno de ejecución, Colab Enterprise vuelve a ejecutar la secuencia de comandos posterior al inicio cuando se reinicia el entorno de ejecución. |
Descargar y ejecutar en cada inicio (DOWNLOAD_AND_RUN_EVERY_START) |
Después de cada inicio, Colab Enterprise vuelve a descargar la secuencia de comandos posterior al inicio desde su fuente y, luego, la ejecuta. |
Variables de entorno
Puedes especificar variables de entorno en tu plantilla de tiempo de ejecución y hacer referencia a esas variables en tu secuencia de comandos posterior al inicio.
Por ejemplo, puedes configurar el proyecto de cuota con una variable de entorno.
Puedes configurar tu proyecto de cuota en un ID del proyecto específico con GOOGLE_CLOUD_QUOTA_PROJECT, una variable común que se usa en las bibliotecas cliente de Google Cloud.
Para usar una secuencia de comandos posterior al inicio con variables de entorno, consulta Crea una plantilla de tiempo de ejecución con una secuencia de comandos posterior al inicio y variables de entorno.
Cómo hacer un seguimiento de los cambios en las secuencias de comandos posteriores al inicio y recuperarlas
Para hacer un seguimiento de los cambios en tu secuencia de comandos posterior al inicio y habilitar la recuperación de una versión específica de la secuencia de comandos posterior al inicio, almacena tu secuencia de comandos posterior al inicio en un bucket de Cloud Storage con el control de versiones de objetos habilitado. El control de versiones de objetos conserva los objetos borrados como objetos no actuales con versiones a los que se puede acceder en el bucket hasta que se quitan de forma explícita.
Para especificar una versión de tu secuencia de comandos posterior al inicio, agrega #GENERATION_NUMBER al URI de la secuencia de comandos posterior al inicio cuando crees tu plantilla de entorno de ejecución, por ejemplo, gs://BUCKET_NAME/FOLDER_NAME/FILE_NAME.py#GENERATION_NUMBER.
Para obtener más información sobre el control de versiones de objetos y los números de generación, consulta Control de versiones de objetos.
Cuando usas la consola de Google Cloud para crear tu plantilla de entorno de ejecución, no se admite especificar un número de generación para tu secuencia de comandos posterior al inicio.
Antes de comenzar
- Accede a tu cuenta de Google Cloud . Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Agent Platform, Dataform, and Compute Engine APIs.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Agent Platform, Dataform, and Compute Engine APIs.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.
Roles obligatorios
Para obtener los permisos que necesitas para crear una plantilla del entorno de ejecución en Colab Enterprise, pídele a tu administrador que te otorgue el rol de IAM de administrador de Colab Enterprise (roles/aiplatform.colabEnterpriseAdmin) en el proyecto.
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
También puedes obtener los permisos necesarios a través de roles personalizados o cualquier otro