Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Configure los permisos de IAM para MLflow
Debe configurar las funciones de servicio de IAM necesarias para empezar a utilizar MLflow en Amazon. SageMaker
Si creas un nuevo SageMaker dominio de Amazon para acceder a tus experimentos en Studio, puedes configurar los permisos de IAM necesarios durante la configuración del dominio. Para obtener más información, consulte Configure los permisos de IAM de MLflow al crear un dominio nuevo.
Para configurar los permisos mediante la consola de IAM, consulte. Cree las funciones de servicio de IAM necesarias en la consola de IAM
Debe configurar los controles de AuthZ para sagemaker-mlflow
las acciones. Si lo desea, puede definir controles de AuthZ más detallados para controlar los permisos de MLflow específicos de cada acción. Para obtener más información, consulte Controles AuthZ específicos para cada acción.
Configure los permisos de IAM de MLflow al crear un dominio nuevo
Al configurar un nuevo SageMaker dominio de Amazon para tu organización, puedes configurar los permisos de IAM para tu rol de servicio de dominio a través de los ajustes de Usuarios y Actividades de aprendizaje automático.
Las siguientes actividades de MLflow ML están disponibles en Amazon SageMaker Role Manager:
Utilice MLFlow: esta actividad de aprendizaje automático otorga al rol de servicio de dominio permiso para llamar a las API REST de MLFlow con el fin de gestionar los experimentos, las ejecuciones y los modelos en MLflow.
Administrar los servidores de seguimiento de MLflow: esta actividad de aprendizaje automático otorga al rol de servicio de dominio permiso para crear, actualizar, iniciar, detener y eliminar servidores de seguimiento.
Acceso obligatorio a AWS los servicios de MLflow: esta actividad de aprendizaje automático proporciona los permisos de rol de servicio de dominio necesarios para acceder a Amazon S3 y al registro de SageMaker modelos. Esto le permite utilizar la función de servicio de dominio como función de servicio de servidor de seguimiento.
Siga los siguientes pasos para agregar las actividades de MLflow ML a su rol de servicio de dominio:
Configure los permisos de IAM para usar MLflow SageMaker cuando configure un nuevo dominio
Configure un nuevo dominio mediante la SageMaker consola. En la página Configurar el SageMaker dominio, selecciona Configurar para organizaciones. Para obtener más información, consulte Configuración personalizada mediante la consola.
Al configurar los usuarios y las actividades de aprendizaje automático, elija las siguientes actividades de aprendizaje automático para MLflow: utilizar MLflow, gestionar los servidores de seguimiento de MLflow y acceder a los AWS servicios necesarios para MLflow.
Complete la configuración y creación de su nuevo dominio.
Para obtener más información sobre las actividades de aprendizaje automático en Role Manager, consulteReferencia de actividad de ML.
Cree las funciones de servicio de IAM necesarias en la consola de IAM
Si no creó ni actualizó su función de servicio de dominio, debe crear las siguientes funciones de servicio en la consola de IAM para crear y utilizar un servidor de seguimiento de MLflow:
Una función de servicio de IAM de servidor de seguimiento que el servidor de seguimiento puede utilizar para acceder a los recursos SageMaker
Un rol de servicio de SageMaker IAM que se SageMaker puede usar para crear y administrar los recursos de MLflow
Cree la función de servicio de IAM del servidor de seguimiento
El servidor de seguimiento utiliza la función de servicio IAM del servidor de seguimiento para acceder a los recursos que necesita, como Amazon S3 y SageMaker Model Registry.
Para crear la función de servicio de IAM del servidor de seguimiento, cree la siguiente política de confianza de IAM:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "sagemaker.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }
En la consola de IAM, añada la siguiente política a su función de servicio de servidor de seguimiento:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:Get*", "s3:Put*", "s3:List*", "sagemaker:AddTags", "sagemaker:CreateModelPackageGroup", "sagemaker:CreateModelPackage", "sagemaker:UpdateModelPackage", "sagemaker:DescribeModelPackageGroup" ], "Resource": "
*
" } ] }
Cree el rol de servicio SageMaker de IAM
El SageMaker cliente que accede al servidor de seguimiento de MLflow utiliza el rol de servicio y necesita permisos para llamar a las API REST de MLflow. El rol SageMaker de servicio también necesita permisos de SageMaker API para crear, actualizar, iniciar, detener y eliminar servidores de rastreo.
Puede crear un rol nuevo o actualizar uno existente. El rol SageMaker de servicio necesita la siguiente política:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sagemaker-mlflow:*", "sagemaker:CreateMlflowTrackingServer", "sagemaker:UpdateMlflowTrackingServer", "sagemaker:DeleteMlflowTrackingServer", "sagemaker:StartMlflowTrackingServer", "sagemaker:StopMlflowTrackingServer", "sagemaker:CreatePresignedMlflowTrackingServerUrl" ], "Resource": "*" } ] }
Controles AuthZ específicos para cada acción
Debe configurar los controles de AuthZ ysagemaker-mlflow
, de forma opcional, puede configurar controles de AuthZ específicos para cada acción a fin de controlar los permisos de MLflow más detallados que sus usuarios tienen en un servidor de seguimiento de MLflow.
nota
En los siguientes pasos se supone que ya tiene disponible un ARN para un servidor de seguimiento de MLflow. Para obtener información sobre cómo crear un servidor de seguimiento, consulte Crea un servidor de seguimiento con Studio o. Cree un servidor de seguimiento mediante el AWS CLI
El siguiente comando crea un archivo denominado mlflow-policy.json
que proporciona a su servidor de seguimiento permisos de IAM para todas las acciones de SageMaker MLflow disponibles. Si lo desea, puede limitar los permisos que tiene un usuario seleccionando las acciones específicas que desea que realice ese usuario. Para obtener una lista de las acciones disponibles, consulte MLflow admite acciones de IAM.
# Replace "Resource":"*" with "Resource":"TrackingServerArn" # Replace "sagemaker-mlflow:*" with specific actions printf '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "
sagemaker-mlflow:*
", "Resource": "*
" } ] }' > mlflow-policy.json
Utilice el mlflow-policy.json
archivo para crear una política de IAM mediante. AWS CLI
aws iam create-policy \ --policy-name
MLflowPolicy
\ --policy-documentfile://mlflow-policy.json
Recupera tu ID de cuenta y adjunta la política a tu función de IAM.
# Get your account ID aws sts get-caller-identity # Attach the IAM policy using your exported role and account ID aws iam attach-role-policy \ --role-name
$role_name
\ --policy-arn arn:aws:iam::123456789012
:policy/MLflowPolicy
MLflow admite acciones de IAM
El control de acceso de AuthZ admite las siguientes acciones de SageMaker MLflow:
SageMaker-MLFlow: interfaz de usuario de acceso
sagemaker-mlflow: CreateExperiment
flujo de sagemaker-ml: SearchExperiments
flujo de sagemaker-ml: GetExperiment
flujo de sagemaker-ml: GetExperimentByName
flujo de sagemaker-ml: DeleteExperiment
flujo de sagemaker-ml: RestoreExperiment
flujo de sagemaker-ml: UpdateExperiment
flujo de sagemaker-ml: CreateRun
flujo de sagemaker-ml: DeleteRun
flujo de sagemaker-ml: RestoreRun
flujo de sagemaker-ml: GetRun
flujo de sagemaker-ml: LogMetric
flujo de sagemaker-ml: LogBatch
flujo de sagemaker-ml: LogModel
flujo de sagemaker-ml: LogInputs
flujo de sagemaker-ml: SetExperimentTag
flujo de sagemaker-ml: SetTag
flujo de sagemaker-ml: DeleteTag
flujo de sagemaker-ml: LogParam
flujo de sagemaker-ml: GetMetricHistory
flujo de sagemaker-ml: SearchRuns
flujo de sagemaker-ml: ListArtifacts
flujo de sagemaker-ml: UpdateRun
flujo de sagemaker-ml: CreateRegisteredModel
flujo de sagemaker-ml: GetRegisteredModel
flujo de sagemaker-ml: RenameRegisteredModel
flujo de sagemaker-ml: UpdateRegisteredModel
flujo de sagemaker-ml: DeleteRegisteredModel
flujo de sagemaker-ml: GetLatestModelVersions
flujo de sagemaker-ml: CreateModelVersion
flujo de sagemaker-ml: GetModelVersion
flujo de sagemaker-ml: UpdateModelVersion
flujo de sagemaker-ml: DeleteModelVersion
flujo de sagemaker-ml: SearchModelVersions
sagemaker-mlflow: URI GetDownload ForModelVersionArtifacts
sagemaker-mlflow: TransitionModelVersionStage
flujo de sagemaker-ml: SearchRegisteredModels
flujo de sagemaker-ml: SetRegisteredModelTag
flujo de sagemaker-ml: DeleteRegisteredModelTag
flujo de sagemaker-ml: DeleteModelVersionTag
flujo de sagemaker-ml: DeleteRegisteredModelAlias
flujo de sagemaker-ml: SetRegisteredModelAlias
flujo de sagemaker-ml: GetModelVersionByAlias