En esta página se ofrece una descripción general del operador de Ray y de los recursos personalizados relevantes para desplegar y gestionar clústeres y aplicaciones de Ray en Google Kubernetes Engine (GKE).
Ray es un framework de computación unificado y de código abierto para escalar aplicaciones de IA, aprendizaje automático y Python. Ray proporciona un conjunto de bibliotecas para distribuir el tiempo de ejecución de computación de la IA y el aprendizaje automático en varios nodos de computación.
Para saber cómo habilitar el operador de Ray en GKE, consulta Habilitar el operador de Ray en GKE.
Por qué usar el operador de Ray en GKE
Ray Operator es la forma recomendada de desplegar y gestionar clústeres de Ray en GKE. Cuando ejecutas Ray Operator en GKE, te beneficias de la compatibilidad de Ray con Python y de la fiabilidad, la portabilidad y la escalabilidad de nivel empresarial de GKE.
El operador de Ray en GKE se basa en KubeRay, que proporciona APIs de Kubernetes declarativas diseñadas específicamente para gestionar clústeres de Ray. Esto significa que puedes aprovisionar, escalar y gestionar tus despliegues de Ray con otras cargas de trabajo en contenedores en GKE.
Cómo funciona el operador de Ray en GKE
Cuando habilitas Ray Operator en tus clústeres de GKE, GKE instala y aloja automáticamente el operador KubeRay.
KubeRay proporciona recursos personalizados de Kubernetes para gestionar los despliegues de Ray en Kubernetes, entre los que se incluyen los siguientes:
Recurso personalizado RayCluster
El recurso personalizado RayCluster te permite especificar un clúster de Ray que GKE despliega como pods de Kubernetes. Un clúster de Ray suele constar de un solo pod principal y varios pods de trabajador.
Recurso personalizado RayJob
El recurso personalizado RayJob te permite ejecutar un solo trabajo de Ray. KubeRay crea un RayCluster para proporcionar recursos de computación al trabajo y, a continuación, crea un trabajo de Kubernetes que envía el trabajo de Ray al pod principal de RayCluster.
Para gestionar los recursos de forma eficiente, puedes configurar KubeRay para que limpie automáticamente el RayCluster una vez que se haya completado correctamente el trabajo.
Recurso personalizado RayService
El recurso personalizado RayService te permite configurar aplicaciones de Ray Serve, como aplicaciones para el servicio y la inferencia de modelos. KubeRay crea un RayCluster para proporcionar los recursos de computación y, a continuación, implementa la aplicación Ray Serve tal como se especifica en la configuración de Ray Serve.
Responsabilidad compartida de Ray en GKE
Si decides ejecutar cargas de trabajo de Ray en GKE con el operador de Ray, es importante que sepas cómo se dividen las responsabilidades entre Google Cloud y tú, el cliente:
Responsabilidades de Google
- Mantener la fiabilidad y el tiempo de actividad del operador de KubeRay.
- Gestionar las actualizaciones de versiones del operador de KubeRay.
- Funciones específicas de KubeRay para gestionar los recursos personalizados RayCluster, RayJob y RayService.
Responsabilidades del cliente
- Mantener las imágenes de contenedor que se usan en los pods de Ray Head y Ray Worker.
- Mantener el control de versiones y las actualizaciones de los pods de Ray head y Ray worker.
- Configurar los requisitos de recursos (CPU, GPU, memoria, etc.) de tus clústeres de Ray.
- Sigue las prácticas recomendadas para proteger los clústeres de Ray.
- Fiabilidad y monitorización de tus aplicaciones Ray.
Para obtener más información, consulta Responsabilidad compartida de GKE.
Siguientes pasos
- Consulta cómo habilitar el operador de Ray en GKE.
- Consulta la documentación de Ray en Kubernetes.