En esta publicación, demostramos Kubeflow en AWS (una distribución específica de AWS de Kubeflow) y el valor que agrega sobre Kubeflow de código abierto a través de la integración de servicios de AWS altamente optimizados, nativos de la nube y listos para la empresa.
Kubeflow es la plataforma de aprendizaje automático (ML) de código abierto dedicada a hacer que las implementaciones de flujos de trabajo de ML en Kubernetes sean simples, portátiles y escalables. Kubeflow proporciona muchos componentes, incluido un tablero central, cuadernos Jupyter para múltiples usuarios, Kubeflow Pipelines, KFServing y Katib, así como operadores de capacitación distribuidos para TensorFlow, PyTorch, MXNet y XGBoost, para crear flujos de trabajo de ML simples, escalables y portátiles. .
AWS lanzó recientemente Kubeflow v1.4 como parte de su propia distribución de Kubeflow (llamada Kubeflow en AWS), que agiliza las tareas de ciencia de datos y ayuda a crear sistemas de aprendizaje automático altamente confiables, seguros, portátiles y escalables con gastos generales operativos reducidos a través de integraciones con servicios administrados de AWS . Puede usar esta distribución de Kubeflow para construir sistemas ML sobre Servicio Amazon Elastic Kubernetes (Amazon EKS) para crear, entrenar, ajustar e implementar modelos ML para una amplia variedad de casos de uso, incluida la visión artificial, el procesamiento del lenguaje natural, la traducción de voz y el modelado financiero.
Desafíos con Kubeflow de código abierto
Cuando utiliza un proyecto Kubeflow de código abierto, implementa todos los componentes del plano de control y del plano de datos de Kubeflow en los nodos de trabajo de Kubernetes. Los servicios de componentes de Kubeflow se implementan como parte del plano de control de Kubeflow, y todas las implementaciones de recursos relacionadas con Jupyter, el entrenamiento de modelos, el ajuste y el hospedaje se implementan en el plano de datos de Kubeflow. El plano de control y el plano de datos de Kubeflow se pueden ejecutar en los mismos o diferentes nodos de trabajo de Kubernetes. Esta publicación se centra en los componentes del plano de control de Kubeflow, como se ilustra en el siguiente diagrama.
Es posible que este modelo de implementación no brinde una experiencia lista para la empresa debido a las siguientes razones:
- Todos los componentes de la infraestructura de trabajo pesado del plano de control de Kubeflow, incluida la base de datos, el almacenamiento y la autenticación, se implementan en el propio nodo de trabajo del clúster de Kubernetes. Esto dificulta la implementación de una arquitectura de diseño de plano de control de Kubeflow de alta disponibilidad con un estado persistente en caso de falla del nodo trabajador.
- Los artefactos generados por el plano de control de Kubeflow (como instancias de MySQL, registros de pod o almacenamiento MinIO) crecen con el tiempo y necesitan volúmenes de almacenamiento redimensionables con capacidades de monitoreo continuo para satisfacer la creciente demanda de almacenamiento. Debido a que el plano de control de Kubeflow comparte recursos con las cargas de trabajo del plano de datos de Kubeflow (por ejemplo, para trabajos de capacitación, canalizaciones e implementaciones), dimensionar y escalar correctamente los volúmenes de almacenamiento y clúster de Kubernetes puede convertirse en un desafío y generar un mayor costo operativo.
- Kubernetes restringe el tamaño del archivo de registro y la mayoría de las instalaciones mantienen el límite más reciente de 10 MB. De forma predeterminada, los registros del pod se vuelven inaccesibles una vez que alcanzan este límite superior. Los registros también podrían volverse inaccesibles si los pods se desalojan, bloquean, eliminan o programan en un nodo diferente, lo que podría afectar la disponibilidad de los registros de la aplicación y las capacidades de monitoreo.
Kubeflow en AWS
Kubeflow en AWS proporciona una ruta clara para usar Kubeflow, con los siguientes servicios de AWS:
- Balanceador de carga de aplicaciones para la gestión segura del tráfico externo a través de HTTPS
- Reloj en la nube de Amazon para la gestión persistente de registros
- Cognito de AWS para la autenticación de usuarios con Transport Layer Security (TLS)
- Contenedores de aprendizaje profundo de AWS para imágenes de servidor de portátiles Jupyter altamente optimizadas
- Sistema de archivos elástico de Amazon (Amazon EFS) o Amazon FSx para Lustre para una solución de almacenamiento de archivos simple, escalable y sin servidor para aumentar el rendimiento de la capacitación
- Amazon EKS para clústeres de Kubernetes administrados
- Servicio de base de datos relacional de Amazon (Amazon RDS) para canalizaciones altamente escalables y un almacén de metadatos
- Director de secretos de AWS para proteger los secretos necesarios para acceder a sus aplicaciones
- Servicio de almacenamiento simple de Amazon (Amazon S3) para una tienda de artefactos de tubería fácil de usar
Estas integraciones de servicios de AWS con Kubeflow (como se muestra en el siguiente diagrama) nos permiten desacoplar partes críticas del plano de control de Kubeflow de Kubernetes, proporcionando un diseño seguro, escalable, resistente y rentable.
Analicemos los beneficios de cada integración de servicios y sus soluciones en torno a la seguridad, la ejecución de canalizaciones de ML y el almacenamiento.
Autenticación segura de usuarios de Kubeflow con Amazon Cognito
La seguridad en la nube en AWS es la máxima prioridad, y estamos invirtiendo en integrar estrechamente la seguridad de Kubeflow directamente en los servicios de seguridad de responsabilidad compartida de AWS, como los siguientes:
- Equilibrador de carga de aplicaciones (ALB) para la gestión del tráfico externo
- Administrador de certificados de AWS (ACM) para admitir TLS
- Roles de IAM para cuentas de servicio (IRSA) para un control de acceso detallado en el nivel de Kubernetes Pod
- Servicio de administración de claves de AWS (AWS KMS) para la administración de claves de cifrado de datos
- Escudo de AWS para protección DDoS
En esta sección, nos centramos en la integración del plano de control de AWS Kubeflow con Amazon Cognito. Amazon Cognito elimina la necesidad de administrar y mantener una solución Dex nativa (proveedor OpenID Connect (OIDC) de código abierto respaldado por LDAP local) para la autenticación de usuarios y facilita la administración de secretos.
También puede utilizar Amazon Cognito para agregar el registro de usuarios, el inicio de sesión y el control de acceso a su interfaz de usuario de Kubeflow de forma rápida y sencilla. Amazon Cognito se adapta a millones de usuarios y admite el inicio de sesión con proveedores de identidad social (IdP), como Facebook, Google y Amazon, e IdP empresariales a través de SAML 2.0. Esto reduce la complejidad en la configuración de Kubeflow, lo que lo hace más eficiente desde el punto de vista operativo y más fácil de operar para lograr el aislamiento de múltiples usuarios.
Veamos un flujo de autenticación multiusuario con integraciones de Amazon Cognito, ALB y ACM con Kubeflow en AWS. Hay una serie de componentes clave como parte de esta integración. Amazon Cognito está configurado como IdP con una devolución de llamada de autenticación configurada para enrutar la solicitud a Kubeflow después de la autenticación del usuario. Como parte de la configuración de Kubeflow, se crea un recurso de entrada de Kubernetes para administrar el tráfico externo al servicio Istio Gateway. El controlador de ingreso ALB de AWS aprovisiona un balanceador de carga para ese ingreso. Usamos Ruta del Amazonas 53 para configurar un DNS público para el dominio registrado y crear certificados mediante ACM para habilitar la autenticación TLS en el balanceador de carga.
El siguiente diagrama muestra el flujo de trabajo de usuario típico de iniciar sesión en Amazon Cognito y ser redirigido a Kubeflow en su espacio de nombres respectivo.
El flujo de trabajo contiene los siguientes pasos:
- El usuario envía una solicitud HTTPS al panel central de Kubeflow alojado detrás de un balanceador de carga. Route 53 resuelve el FQDN en el registro de alias ALB.
- Si la cookie no está presente, el balanceador de carga redirige al usuario al punto de enlace de autorización de Amazon Cognito para que Amazon Cognito pueda autenticar al usuario.
- Una vez que el usuario se autentica, Amazon Cognito lo envía de regreso al balanceador de carga con un código de concesión de autorización.
- El balanceador de carga presenta el código de concesión de autorización al punto de enlace del token de Amazon Cognito.
- Al recibir un código de concesión de autorización válido, Amazon Cognito proporciona el token de ID y el token de acceso al balanceador de carga.
- Una vez que su balanceador de carga autentica a un usuario correctamente, envía el token de acceso al punto de enlace de información del usuario de Amazon Cognito y recibe las reclamaciones del usuario. El balanceador de carga firma y agrega reclamos de usuario al encabezado HTTP
x-amzn-oidc-*
en un formato de solicitud de token web JSON (JWT). - La solicitud del balanceador de carga se envía al pod de Istio Ingress Gateway.
- Con un filtro enviado, Istio Gateway decodifica el
x-amzn-oidc-data
valor, recupera el campo de correo electrónico y agrega el encabezado HTTP personalizadokubeflow-userid
, que utiliza la capa de autorización de Kubeflow. - Las políticas de control de acceso basadas en recursos de Istio se aplican a la solicitud entrante para validar el acceso al panel de Kubeflow. Si alguno de ellos es inaccesible para el usuario, se devuelve una respuesta de error. Si se valida la solicitud, se reenvía al servicio de Kubeflow adecuado y proporciona acceso al Panel de control de Kubeflow.
Almacenamiento persistente de artefactos y metadatos de componentes de Kubeflow con Amazon RDS y Amazon S3
Kubeflow en AWS proporciona integración con Servicio de base de datos relacional de Amazon (Amazon RDS) en Kubeflow Pipelines y AutoML (Secretario) para el almacenamiento persistente de metadatos y Amazon S3 en Kubeflow Pipelines para el almacenamiento persistente de artefactos. Sigamos hablando de Kubeflow Pipelines con más detalle.
Kubeflow Pipelines es una plataforma para crear e implementar flujos de trabajo de aprendizaje automático escalables y portátiles. Estos flujos de trabajo pueden ayudar a automatizar canalizaciones de aprendizaje automático complejas mediante componentes de Kubeflow integrados y personalizados. Kubeflow Pipelines incluye el SDK de Python, un compilador de DSL para convertir el código de Python en una configuración estática, un servicio de Pipelines que ejecuta las canalizaciones desde la configuración estática y un conjunto de controladores para ejecutar los contenedores dentro de los pods de Kubernetes necesarios para completar la canalización.
Los metadatos de Kubeflow Pipelines para experimentos y ejecuciones de canalización se almacenan en MySQL, y los artefactos, incluidos los paquetes de canalización y las métricas, se almacenan en MinIO.
Como se muestra en el siguiente diagrama, Kubeflow en AWS le permite almacenar los siguientes componentes con los servicios administrados de AWS:
- Canalización de metadatos en Amazon RDS – Amazon RDS proporciona una arquitectura de implementación Multi-AZ escalable, confiable y de alta disponibilidad con un mecanismo integrado de conmutación por error automatizado y capacidad redimensionable para una base de datos relacional estándar de la industria como MySQL. Gestiona tareas comunes de administración de bases de datos sin necesidad de aprovisionar infraestructura o mantener software.
- Artefactos de canalización en Amazon S3 – Amazon S3 ofrece escalabilidad, disponibilidad de datos, seguridad y rendimiento líderes en la industria, y podría usarse para satisfacer sus requisitos de conformidad.
Estas integraciones ayudan a descargar la administración y el mantenimiento del almacenamiento de metadatos y artefactos de Kubeflow autoadministrado a los servicios administrados de AWS, que es más fácil de configurar, operar y escalar.
Compatibilidad con sistemas de archivos distribuidos con Amazon EFS y Amazon FSx
Kubeflow se basa en Kubernetes, que proporciona una infraestructura para el procesamiento de datos distribuidos a gran escala, incluida la capacitación y el ajuste de modelos grandes con una red profunda con millones o incluso miles de millones de parámetros. Para admitir tales sistemas de ML de procesamiento de datos distribuidos, Kubeflow en AWS proporciona integración con los siguientes servicios de almacenamiento:
- AmazonEFS – Un sistema de archivos distribuido de alto rendimiento, nativo de la nube, que puede administrar a través de un Controlador CSI de Amazon EFS. Amazon EFS proporciona
ReadWriteMany
modo de acceso, y ahora puede usarlo para montar en pods (Jupyter, entrenamiento de modelos, ajuste de modelos) que se ejecutan en un plano de datos de Kubeflow para proporcionar un espacio de trabajo persistente, escalable y compartible que crece y se reduce automáticamente a medida que agrega y elimina archivos con sin necesidad de gestión. - Amazon FSx para Lustre – Un sistema de archivos optimizado para cargas de trabajo con uso intensivo de cómputo, como computación de alto rendimiento y ML, que puede administrar a través de Controlador CSI de Amazon FSx. FSx for Lustre proporciona
ReadWriteMany
modo de acceso también, y puede usarlo para almacenar en caché datos de entrenamiento con conectividad directa a Amazon S3 como almacén de respaldo, que puede usar para admitir servidores de portátiles Jupyter o entrenamiento distribuido que se ejecuta en un plano de datos de Kubeflow. Con esta configuración, no necesita transferir datos al sistema de archivos antes de usar el volumen. FSx for Lustre proporciona latencias consistentes de submilisegundos y alta simultaneidad, y puede escalar a TB/s de rendimiento y millones de IOPS.
Opciones de implementación de Kubeflow
AWS ofrece varias opciones de implementación de Kubeflow:
- Implementación con Amazon Cognito
- Implementación con Amazon RDS y Amazon S3
- Implementación con Amazon Cognito, Amazon RDS y Amazon S3
- Despliegue de vainilla
Para obtener detalles sobre la integración de servicios y los complementos disponibles para cada una de estas opciones, consulte Opciones de implementación. Puede ajustar la opción que mejor se adapte a su caso de uso.
En la siguiente sección, repasamos los pasos para instalar la distribución de AWS Kubeflow v1.4 en Amazon EKS. Luego, usamos el ejemplo de canalización XGBoost existente disponible en el panel de la interfaz de usuario central de Kubeflow para demostrar la integración y el uso de AWS Kubeflow con Amazon Cognito, Amazon RDS y Amazon S3, con Secrets Manager como complemento.
Requisitos previos
Para este tutorial, debe tener los siguientes requisitos previos:
- An Cuenta de AWS.
- Un clúster de Amazon EKS existente. Debe ser Kubernetes versión 1.19 o superior. Para la creación automatizada de clústeres mediante eksctl, consulte nuestra página, Crear un clúster de Amazon EKS y use la opción eksctl.
Instale las siguientes herramientas en la máquina cliente utilizada para acceder a su clúster de Kubernetes. Puedes usar Nube de AWS9, un entorno de desarrollo integrado (IDE) basado en la nube para la configuración del clúster de Kubernetes.
- Interfaz de línea de comandos de AWS (AWS CLI): una herramienta de línea de comandos para interactuar con los servicios de AWS. Para obtener instrucciones de instalación, consulte Instalación, actualización y desinstalación de la AWS CLI.
- eksctl > 0.56: una herramienta de línea de comandos para trabajar con clústeres de Amazon EKS que automatiza muchas tareas individuales.
- kubectl - Una herramienta de línea de comandos para trabajar con clústeres de Kubernetes.
- git – Un software de control de versiones distribuido.
- Python 3.8 + – El entorno de programación Python.
- pepita – El administrador de paquetes para Python.
- personalizar la versión 3.2.0 – Una herramienta de línea de comandos para personalizar objetos de Kubernetes a través de un archivo de personalización.
Instalar Kubeflow en AWS
Configure kubectl para poder conectarse a un clúster de Amazon EKS:
Uso de varios controladores en la implementación de Kubeflow Roles de IAM para cuentas de servicio (IRSA). Debe existir un proveedor OIDC para que su clúster use IRSA. Cree un proveedor OIDC y asócielo con su clúster de Amazon EKS ejecutando el siguiente comando, si su clúster aún no tiene uno:
Clone el repositorio de manifiestos de AWS y el repositorio de manifiestos de Kubeflow, y verifique las ramas de lanzamiento respectivas:
Para obtener más información acerca de estas versiones, consulte Lanzamientos y versiones.
Configurar Amazon RDS, Amazon S3 y Secrets Manager
Cree recursos de Amazon RDS y Amazon S3 antes de implementar los manifiestos de Kubeflow. Usamos scripts de Python automatizados que se encargan de crear el depósito S3, la base de datos RDS y los secretos necesarios en Secrets Manager. También edita los archivos de configuración necesarios para que la canalización de Kubeflow y AutoML se configuren correctamente para la base de datos de RDS y el depósito de S3 durante la instalación de Kubeflow.
Crea un usuario de IAM con permisos para permitir GetBucketLocation
y acceso de lectura y escritura a objetos en un depósito de S3 donde desea almacenar los artefactos de Kubeflow. Utilizar el AWS_ACCESS_KEY_ID
y AWS_SECRET_ACCESS_KEY
del usuario de IAM en el siguiente código:
Configurar Amazon Cognito como proveedor de autenticación
En esta sección, creamos un dominio personalizado en Route 53 y ALB para enrutar el tráfico externo a Kubeflow Istio Gateway. Usamos ACM para crear un certificado para habilitar la autenticación TLS en ALB y Amazon Cognito para mantener el grupo de usuarios y administrar la autenticación de usuarios.
Sustituye los siguientes valores en
- ruta53.rootDomain.name – El dominio registrado. Supongamos que este dominio es
example.com
. - ruta53.rootDomain.hostedZoneId – Si su dominio se administra en Route53, ingrese el ID de la zona alojada que se encuentra en los detalles de la zona alojada. Omita este paso si su dominio está administrado por otro proveedor de dominio.
- ruta53.subdominio.nombre – El nombre del subdominio donde desea alojar Kubeflow (por ejemplo,
platform.example.com
). Para obtener más información acerca de los subdominios, consulte Implementación de Kubeflow con AWS Cognito como IdP. - clúster.nombre – El nombre del clúster y dónde se implementa Kubeflow.
- clúster.región – La región del clúster donde se implementa Kubeflow (por ejemplo,
us-west-2
). - cognitoUserpool.nombre – El nombre del grupo de usuarios de Amazon Cognito (por ejemplo,
kubeflow-users
).
El archivo de configuración se parece al siguiente código:
Ejecute el script para crear los recursos:
El script actualiza el config.yaml
archivo con los nombres de recursos, ID y ARN que creó. Se ve algo como el siguiente código:
Cree manifiestos e implemente Kubeflow
Implemente Kubeflow con el siguiente comando:
Actualice el dominio con la dirección ALB
La implementación crea un balanceador de carga de aplicaciones de AWS administrado por ingreso. Actualizamos las entradas de DNS para el subdominio en Route 53 con el DNS del balanceador de carga. Ejecute el siguiente comando para verificar si el balanceador de carga está aprovisionado (esto demora entre 3 y 5 minutos):
Si ADDRESS
campo está vacío después de unos minutos, verifique los registros de alb-ingress-controller
. Para obtener instrucciones, consulte ALB no puede aprovisionar.
Cuando se aprovisione el balanceador de carga, copie el nombre DNS del balanceador de carga y sustituya la dirección por kubeflow.alb.dns
in ${kubeflow_manifest_dir}/tests/e2e/utils/cognito_bootstrap/config.yaml
. La sección Kubeflow del archivo de configuración se parece al siguiente código:
Ejecute el siguiente script para actualizar las entradas de DNS para el subdominio en Route 53 con el DNS del balanceador de carga aprovisionado:
Solucionando Problemas
Si tiene algún problema durante la instalación, consulte el guía para resolver problemas o comience de nuevo siguiendo la sección "Limpiar" en este blog.
Tutorial de caso de uso
Ahora que completamos la instalación de los componentes necesarios de Kubeflow, veámoslos en acción usando uno de los ejemplos existentes proporcionados por Kubeflow Pipelines en el tablero.
Acceda al panel de control de Kubeflow con Amazon Cognito
Para comenzar, acceda al panel de control de Kubeflow. Debido a que usamos Amazon Cognito como IdP, use la información provista en el archivo LÉAME oficial. Primero creamos algunos usuarios en la consola de Amazon Cognito. Estos son los usuarios que iniciarán sesión en el tablero central. Próximo, crear un perfil para el usuario que ha creado. Entonces debería poder acceder al tablero a través de la página de inicio de sesión en https://kubeflow.platform.example.com.
La siguiente captura de pantalla muestra nuestro panel de Kubeflow.
Ejecutar la canalización
En el panel de control de Kubeflow, elija Pipelines en el nombre de navegación. Debería ver cuatro ejemplos proporcionados por Kubeflow Pipelines que puede ejecutar directamente para explorar varias funciones de Pipelines.
Para esta publicación, usamos la muestra de XGBoost llamada [Demo] XGBoost: entrenamiento de modelo iterativo. Puede encontrar el código fuente en GitHub. Esta es una canalización simple que utiliza la existente XGBoost/Train
y XGBoost/Predict
Componentes de canalización de Kubeflow para entrenar iterativamente un modelo hasta que las métricas se consideren buenas según las métricas especificadas.
Para ejecutar la canalización, complete los siguientes pasos:
- Seleccione la canalización y elija Crear experimento.
- under Detalles del experimento, ingrese un nombre (para esta publicación,
demo-blog
) y descripción opcional. - Elige Siguiente.
- under Ejecutar detalles¸ elige tu tubería y la versión de tu tubería.
- Ejecutar nombre, ingresa un nombre.
- Experimento, elija el experimento que creó.
- Tipo de ejecución, seleccione De una sola vez.
- Elige Inicio.
Después de que la canalización comience a ejecutarse, debería ver que los componentes se completan (en unos segundos). En esta etapa, puede elegir cualquiera de los componentes completados para ver más detalles.
Acceda a los artefactos en Amazon S3
Al implementar Kubeflow, especificamos que Kubeflow Pipelines debería usar Amazon S3 para almacenar sus artefactos. Esto incluye todos los artefactos de salida de la canalización, las ejecuciones en caché y los gráficos de la canalización, todo lo cual puede usarse para visualizaciones enriquecidas y evaluación del rendimiento.
Cuando se completa la ejecución de la canalización, debería poder ver los artefactos en el depósito de S3 que creó durante la instalación. Para confirmar esto, elija cualquier componente completo de la canalización y verifique la Entrada / Salida sección sobre el valor predeterminado Gráfico pestaña. Las direcciones URL de los artefactos deben apuntar al depósito de S3 que especificó durante la implementación.
Para confirmar que los recursos se agregaron a Amazon S3, también podemos verificar el depósito S3 en nuestra cuenta de AWS a través de la consola de Amazon S3.
La siguiente captura de pantalla muestra nuestros archivos.
Verifique los metadatos de ML en Amazon RDS
También integramos Kubeflow Pipelines con Amazon RDS durante la implementación, lo que significa que todos los metadatos de la canalización deben almacenarse en Amazon RDS. Esto incluye cualquier información de tiempo de ejecución, como el estado de una tarea, la disponibilidad de artefactos, las propiedades personalizadas asociadas con la ejecución o los artefactos, y más.
Para verificar la integración de Amazon RDS, siga los pasos proporcionados en el archivo LÉAME oficial. En concreto, complete los siguientes pasos:
- Obtenga el nombre de usuario y la contraseña de Amazon RDS del secreto que se creó durante la instalación:
- Utilice estas credenciales para conectarse a Amazon RDS desde dentro del clúster:
- Cuando se abre el indicador de MySQL, podemos verificar el
mlpipelines
base de datos de la siguiente manera: - Ahora podemos leer el contenido de tablas específicas, para asegurarnos de que podemos ver información de metadatos sobre los experimentos que ejecutaron las canalizaciones:
Limpiar
Para desinstalar Kubeflow y eliminar los recursos de AWS que creó, complete los siguientes pasos:
- Elimine el ingreso y el balanceador de carga administrado por ingreso ejecutando el siguiente comando:
- Elimine el resto de los componentes de Kubeflow:
- Elimine los recursos de AWS creados por scripts:
- Recursos creados para la integración de Amazon RDS y Amazon S3. Asegúrese de tener el archivo de configuración creado por el script en
${kubeflow_manifest_dir}/tests/e2e/utils/rds-s3/metadata.yaml
: - Recursos creados para la integración de Amazon Cognito. Asegúrese de tener el archivo de configuración creado por el script en
${kubeflow_manifest_dir}/tests/e2e/utils/cognito_bootstrap/config.yaml
:
- Recursos creados para la integración de Amazon RDS y Amazon S3. Asegúrese de tener el archivo de configuración creado por el script en
- Si creó un clúster de Amazon EKS dedicado para Kubeflow mediante eksctl, puede eliminarlo con el siguiente comando:
Resumen
En esta publicación, destacamos el valor que proporciona Kubeflow en AWS a través de integraciones de servicios nativos administrados por AWS para cargas de trabajo de IA y ML seguras, escalables y listas para la empresa. Puede elegir entre varias opciones de implementación para instalar Kubeflow en AWS con varias integraciones de servicios. El caso de uso de esta publicación demostró la integración de Kubeflow con Amazon Cognito, Secrets Manager, Amazon RDS y Amazon S3. Para comenzar con Kubeflow en AWS, consulte las opciones de implementación integradas en AWS disponibles en Kubeflow en AWS.
A partir de v1.3, puede seguir el Repositorio de laboratorios de AWS para realizar un seguimiento de todas las contribuciones de AWS a Kubeflow. También puede encontrarnos en el Kubeflow #AWS Canal flojo; sus comentarios allí nos ayudarán a priorizar las próximas funciones para contribuir al proyecto Kubeflow.
Acerca de los autores
Kanwaljit Khurmi es un arquitecto de soluciones especializado en IA/ML en Amazon Web Services. Trabaja con el producto, la ingeniería y los clientes de AWS para brindar orientación y asistencia técnica, ayudándolos a mejorar el valor de sus soluciones híbridas de aprendizaje automático cuando usan AWS. Kanwaljit se especializa en ayudar a los clientes con aplicaciones de aprendizaje automático y en contenedores.
Meghna Baijal es ingeniero de software con AWS AI, lo que facilita a los usuarios la incorporación de sus cargas de trabajo de aprendizaje automático en AWS mediante la creación de productos y plataformas de aprendizaje automático, como los contenedores de aprendizaje profundo, las AMI de aprendizaje profundo, los controladores de AWS para Kubernetes (ACK) y Kubeflow en AWS . Fuera del trabajo, le gusta leer, viajar e incursionar en la pintura.
Suraj Kota es un ingeniero de software especializado en infraestructura de aprendizaje automático. Desarrolla herramientas para comenzar fácilmente y escalar la carga de trabajo de aprendizaje automático en AWS. Trabajó en AWS Deep Learning Containers, Deep Learning AMI, SageMaker Operators para Kubernetes y otras integraciones de código abierto como Kubeflow.
- Coinsmart. El mejor intercambio de Bitcoin y criptografía de Europa.
- Platoblockchain. Inteligencia del Metaverso Web3. Conocimiento amplificado. ACCESO LIBRE.
- CriptoHawk. Radar de altcoins. Prueba gratis.
- Fuente: https://aws.amazon.com/blogs/machine-learning/build-and-deploy-a-scalable-machine-learning-system-on-kubernetes-with-kubeflow-on-aws/
- "
- 10
- 100
- 420
- 7
- Nuestra Empresa
- de la máquina
- Mi Cuenta
- la columna Acción
- Añadir
- dirección
- Admin
- administración
- Afiliados
- AI
- Todos
- ya haya utilizado
- Amazon
- Amazon Web Services
- Otra
- Aplicación
- aplicaciones
- adecuado
- arquitectura
- en torno a
- Consejos
- autenticado
- autentica
- Autenticación
- autorización
- automatizado
- Confirmación de Viaje
- automatiza
- disponibilidad
- Hoy Disponibles
- AWS
- a las que has recomendado
- beneficios
- MEJOR
- miles de millones
- Blog
- frontera
- build
- Construir la
- construye
- incorporado
- capacidades
- Capacidad
- servicios sociales
- cases
- CD
- certificado
- certificados
- desafiante
- Pagar ahora
- Elige
- reclamaciones
- clase
- código
- Algunos
- completando
- integraciones
- componente
- computadora
- informática
- Configuración
- Contacto
- Conectividad
- Consola
- Contenedores
- contiene
- contenido
- continue
- contribuir
- control
- controlador
- derechos de autor,
- podría
- Para crear
- creado
- crea
- Creamos
- creación
- Referencias
- crítico
- personalizado
- Clientes
- página de información de sus operaciones
- datos
- proceso de datos
- Ciencia de los datos
- Base de datos
- DDoS
- a dedicados
- Demanda
- demostrar
- demostrado
- desplegar
- desplegado
- Desplegando
- despliegue
- Despliegues
- despliega
- Diseño
- detalle
- detalles
- Desarrollo
- Dex
- una experiencia diferente
- de reservas
- directamente
- discutir
- distribuidos
- dns
- No
- dominio
- pasan fácilmente
- fácil de usar
- echo
- habilitar
- cifrado
- Punto final
- ingeniero
- Ingeniería
- Participar
- Empresa
- Entorno
- evaluación
- Evento
- ejemplo
- existente
- experience
- experimento
- explorar
- Fracaso
- Caracteristicas
- realimentación
- financiero
- Nombre
- cómodo
- de tus señales
- Focus
- se centra
- seguir
- siguiendo
- formato
- encontrado
- fresco
- conseguir
- Git
- GitHub
- candidato
- Crecer
- Creciendo
- ayuda
- ayudando
- ayuda
- esta página
- Alta
- más alto
- Destacado
- altamente
- hosting
- HTTPS
- Híbrido
- Identidad
- Impacto
- implementar
- mejorar
- Inc.
- incluye
- Incluye
- aumentado
- INSTRUMENTO individual
- líderes en la industria
- info
- información
- EN LA MINA
- instalar
- COMPLETAMENTE
- integración
- integraciones
- metas de
- solo
- cuestiones
- IT
- sí mismo
- Empleo
- acuerdo
- Clave
- labs
- idioma
- large
- lanzado
- aprendizaje
- cirugía estética
- línea
- carga
- local
- máquina
- máquina de aprendizaje
- mantener
- HACE
- Realizar
- gestionan
- gestionado
- Management
- gerente
- Métrica
- millones
- ML
- modelo
- modelos
- monitoreo
- más,
- MEJOR DE TU
- nombres
- Natural
- Navegación
- red
- del sistema,
- nodos
- cuaderno
- número
- Ofertas
- habiertos
- de código abierto
- abre
- operadores
- optimizado
- Optión
- Opciones
- Otro
- EL DESARROLLADOR
- Contraseña
- actuación
- plataforma
- Plataformas
- punto
- políticas
- alberca
- presente
- lista de prioridades
- tratamiento
- Producto
- Productos
- Programación
- proyecto
- proteger
- proporcionar
- proporciona un
- proporcionando
- público
- con rapidez
- en comunicarse
- Reading
- razones
- grabar
- registrado
- ,
- solicita
- Requisitos
- Requisitos
- Recurso
- Recursos
- respuesta
- RESTO
- Ruta
- Ejecutar
- correr
- Escalabilidad
- escalable
- Escala
- la ampliación
- Ciencia:
- Sdk
- SEG
- segundos
- seguro
- EN LINEA
- Sin servidor
- de coches
- Servicios
- set
- Configure
- Acciones
- Letreros y Pancartas
- sencillos
- Tamaño
- flojo
- sueño
- So
- Social
- Software
- Ingeniero de Software
- sólido
- a medida
- Soluciones
- algo
- algo
- código fuente
- especialista
- especializado
- se especializa
- específicamente
- Etapa
- comienzo
- fundó
- comienza
- Estado
- Estado
- STORAGE
- tienda
- Con éxito
- SOPORTE
- soportes
- te
- Todas las funciones a su disposición
- tareas
- Técnico
- La Fuente
- A través de esta formación, el personal docente y administrativo de escuelas y universidades estará preparado para manejar los recursos disponibles que derivan de la diversidad cultural de sus estudiantes. Además, un mejor y mayor entendimiento sobre estas diferencias y similitudes culturales permitirá alcanzar los objetivos de inclusión previstos.
- equipo
- ficha
- del IRS
- parte superior
- seguir
- tráfico
- Formación
- transferir
- Traducción
- transporte
- Viajar
- ui
- Actualizar
- Actualizaciones
- us
- utilizan el
- usuarios
- validado
- propuesta de
- variedad
- diversos
- verificar
- visión
- volumen
- web
- servicios web
- QUIENES
- dentro de
- sin
- Actividades:
- trabajado
- trabajando
- funciona