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.
Debe configurar las funciones de servicio de IAM necesarias para empezar a utilizar MLflow Amazon SageMaker AI.
Si creas un nuevo dominio de Amazon SageMaker AI 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 MLflow de IAM al crear un dominio nuevo.
Para configurar los permisos mediante la consola de IAM, consulte Creación de los roles de servicio de IAM necesarios en la consola de IAM.
Debe configurar los controles de autorización para las acciones de sagemaker-mlflow
. Si lo desea, puede definir controles de autorización más detallados para regular los permisos específicos de cada acción MLflow. Para obtener más información, consulte Creación de controles de autorización específicos de cada acción.
Configure los permisos MLflow de IAM al crear un dominio nuevo
Al configurar un nuevo dominio de Amazon SageMaker AI para su organización, puede configurar los permisos de IAM para su función de servicio de dominio a través de los ajustes Usuarios y Actividades de aprendizaje automático.
Para configurar los permisos de IAM para usarlos MLflow con SageMaker AI al configurar un nuevo dominio
-
Configure un dominio nuevo mediante la consola de SageMaker IA. En la página Configurar un dominio de SageMaker IA, 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 entre las siguientes actividades de aprendizaje automático para MLflow: usar MLflow, administrar los servidores de MLflow seguimiento y acceder a AWS los servicios necesarios para ello MLflow. Para obtener más información sobre estas actividades, consulte las explicaciones que se incluyen a continuación de este procedimiento.
-
Complete la configuración y la creación del nuevo dominio.
Las siguientes actividades de aprendizaje MLflow automático están disponibles en Amazon SageMaker Role Manager:
Uso MLflow: Esta actividad de aprendizaje automático otorga al rol de servicio de dominio permiso para llamar a MLflow REST APIs con el fin de gestionar los experimentos, las ejecuciones y los modelos MLflow.
Administrar servidores MLflow de seguimiento: 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 necesario a AWS los servicios para 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 modelos de SageMaker IA. Esto le permite utilizar el rol de servicio de dominio como rol de servicio de servidor de seguimiento.
Para obtener más información sobre las actividades de ML en el Administrador de roles, consulte Referencia de actividad de ML.
Creación de los roles de servicio de IAM necesarios 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 MLflow de seguimiento:
Un rol de servicio de IAM de servidor de rastreo que el servidor de rastreo puede usar para acceder a los recursos de IA SageMaker
Una SageMaker función de servicio de IAM de SageMaker IA que la IA puede utilizar para crear y gestionar recursos MLflow
Políticas de IAM para el rol 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.
Al crear el rol de servicio de IAM del servidor de seguimiento, utilice 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 de permisos al rol de servicio del 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": "*
"
}
]
}
Política de IAM para la función de servicio de SageMaker IA IAM
El cliente que accede al servidor de MLflow seguimiento utiliza el rol de servicio de SageMaker IA y necesita permisos para llamar MLflow a REST. APIs El rol de servicio de SageMaker IA también necesita permisos de SageMaker API para crear, ver, actualizar, iniciar, detener y eliminar servidores de rastreo.
Puede crear un nuevo rol o actualizar uno existente. El rol de servicio de SageMaker IA necesita la siguiente política:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"sagemaker-mlflow:*",
"sagemaker:CreateMlflowTrackingServer",
"sagemaker:ListMlflowTrackingServers",
"sagemaker:UpdateMlflowTrackingServer",
"sagemaker:DeleteMlflowTrackingServer",
"sagemaker:StartMlflowTrackingServer",
"sagemaker:StopMlflowTrackingServer",
"sagemaker:CreatePresignedMlflowTrackingServerUrl"
],
"Resource": "*"
}
]
}
Creación de controles de autorización específicos de cada acción
Debe configurar controles de autorización ysagemaker-mlflow
, si lo desea, puede configurar controles de autorización específicos para cada acción a fin de regular MLflow los permisos más detallados que sus usuarios tienen en un servidor MLflow de seguimiento.
nota
En los siguientes pasos se supone que ya tiene disponible un ARN para un servidor MLflow de seguimiento. Para obtener más información sobre cómo crear un servidor de seguimiento, consulte Creación de 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 IA MLflow disponibles. También puede limitar los permisos que tiene un usuario. Para ello, seleccione las acciones específicas que desea que realice ese usuario. Para obtener una lista de las acciones disponibles, consulte Las acciones de IAM son compatibles con MLflow.
# 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 archivo mlflow-policy.json
para crear una política de IAM mediante la AWS CLI.
aws iam create-policy \ --policy-name
MLflowPolicy
\ --policy-documentfile://mlflow-policy.json
Recupere el ID de la cuenta y asocie la política al rol 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
Las acciones de IAM son compatibles con MLflow
Se admiten las siguientes MLflow acciones de SageMaker IA para el control del acceso a la autorización:
-
sagemaker-mlflow:AccessUI
-
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
-
flujo de sagemaker-ml: GetDownload URIFor ModelVersionArtifacts
-
flujo de sagemaker-ml: 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