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.
Cree un servidor de seguimiento mediante el AWS CLI
Puede crear un servidor de seguimiento utilizando el AWS CLI para una personalización de seguridad más detallada.
Requisitos previos
Para crear un servidor de seguimiento mediante el AWS CLI, debe disponer de lo siguiente:
-
Acceso a un terminal.Esto puede incluir una EC2 instancia local IDEs, de Amazon o AWS CloudShell.
-
Acceso a un entorno de desarrollo. Esto puede incluir un entorno local IDEs o un entorno de Jupyter Notebook en Studio o Studio Classic.
-
Una instalación configurada AWS CLI . Para obtener más información, consulte Configuración de AWS CLI.
-
Un rol de IAM con los permisos adecuados. Los siguientes pasos requieren que el entorno tenga los permisos
iam:CreateRole
,iam:CreatePolicy
,iam:AttachRolePolicy
yiam:ListPolicies
. Estos permisos son necesarios para el rol que se utiliza para ejecutar los pasos de esta guía del usuario. Las instrucciones de esta guía crean una función de IAM que se utiliza como función de ejecución del servidor de MLflow seguimiento para que pueda acceder a los datos de sus buckets de Amazon S3. Además, se ha creado una política para conceder permiso de llamada a la función de IAM al usuario que interactúa con el servidor de seguimiento a través del MLflow SDK. MLflow APIs Para obtener más información, consulte Modifying a role permissions policy (console).Si utilizas un SageMaker Studio Notebook, actualiza el rol de servicio de tu perfil de usuario de Studio con estos permisos de IAM. Para actualizar el rol de servicio, dirígete a la consola de SageMaker AI y selecciona el dominio que estás usando. A continuación, en el dominio, seleccione el perfil de usuario que esté utilizando. Aparecerá el rol de servicio en la lista. Diríjase a la consola de IAM, busque el rol de servicio en Roles y actualice el rol con una política que permita las acciones
iam:CreateRole
,iam:CreatePolicy
,iam:AttachRolePolicy
yiam:ListPolicies
.
Configura el AWS CLI modelo
Sigue estos pasos de la línea de comandos en una terminal AWS CLI para configurar Amazon SageMaker AI con MLflow.
-
Instale una versión actualizada de AWS CLI. Para obtener más información, consulte Install or update to the latest version of the AWS CLI en la Guía del usuario de AWS CLI .
-
Compruebe que AWS CLI está instalado mediante el siguiente comando:
aws sagemaker help
Pulse
q
para salir de la petición.Para obtener ayuda sobre la resolución de problemas, consulte Solución de problemas de configuración comunes.
Configure la MLflow infraestructura
En la siguiente sección, se muestra cómo configurar un servidor de MLflow seguimiento junto con el bucket de Amazon S3 y la función de IAM necesarios para el servidor de seguimiento.
Creación de un bucket de S3
En el terminal, utilice los siguientes comandos para crear un bucket de Amazon S3 de uso general:
nota
El depósito de Amazon S3 utilizado para tu tienda de artefactos debe estar en el mismo lugar Región de AWS que tu servidor de rastreo.
bucket_name=
bucket-name
region=valid-region
aws s3api create-bucket \ --bucket$bucket_name
\ --region$region
\ --create-bucket-configuration LocationConstraint=$region
El resultado debería tener un aspecto similar al siguiente:
{ "Location": "/
bucket-name
" }
Configuración de políticas de confianza de IAM
Siga estos pasos para crear una política de confianza de IAM. Para obtener más información sobre los roles y las políticas de confianza, consulte Términos y conceptos de roles en la Guía del usuario de AWS Identity and Access Management .
-
En el terminal, use el siguiente comando para crear un archivo denominado
mlflow-trust-policy.json
.cat <<EOF > /tmp/
mlflow-trust-policy.json
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "sagemaker.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] } EOF -
En el terminal, use el siguiente comando para crear un archivo denominado
custom-policy.json
.cat <<EOF > /tmp/custom-policy.json { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:Get*", "s3:Put*", "sagemaker:AddTags", "sagemaker:CreateModelPackageGroup", "sagemaker:CreateModelPackage", "sagemaker:DescribeModelPackageGroup", "sagemaker:UpdateModelPackage", "s3:List*" ], "Resource": "*" } ] } EOF
-
Utilice el archivo de política de confianza para crear un rol. A continuación, adjunte políticas de roles de IAM que le permitan acceder MLflow a Amazon S3 y SageMaker Model Registry desde su cuenta. MLflow debe tener acceso a Amazon S3 para el almacén de artefactos de su servidor de rastreo y al Registro de SageMaker modelos para el registro automático de modelos.
nota
Si está actualizando un rol existente, use el siguiente comando:
aws iam update-assume-role-policy --role-name
.$role_name
--policy-documentfile:///tmp/mlflow-trust-policy.json
role_name=
role-name
aws iam create-role \ --role-name$role_name
\ --assume-role-policy-document file:///tmp/mlflow-trust-policy.json
aws iam put-role-policy \ --role-name$role_name
\ --policy-namecustom-policy
\ --policy-document file:///tmp/custom-policy.json
role_arn=$(aws iam get-role --role-name $role_name --query 'Role.Arn' --output text)
Cree un servidor MLflow de seguimiento
En su terminal, utilice la create-mlflow-tracking-server
API para crear un servidor de seguimiento en el Región de AWS que prefiera. Este paso puede tardar hasta 25 minutos en completarse.
Si lo desea, puede especificar el tamaño del servidor de seguimiento con el parámetro --tracking-server-config
. Elija entre "Small"
, "Medium"
y "Large"
. El tamaño de configuración predeterminado del servidor de MLflow seguimiento es"Small"
. Puede elegir un tamaño en función del uso previsto del servidor de seguimiento, como, por ejemplo, el volumen de datos registrados, el número de usuarios y la frecuencia de uso. Para obtener más información, consulte MLflow Seguimiento del tamaño de los servidores.
El siguiente comando crea un nuevo servidor de seguimiento con el registro automático de modelos habilitado. Para desactivar el registro automático de modelos, especifique --no-automatic-model-registration
.
Tras crear el servidor de seguimiento, puede iniciar la MLflow interfaz de usuario. Para obtener más información, consulte Inicie la MLflow interfaz de usuario mediante una URL prefirmada.
nota
La creación del servidor de seguimiento puede tardar hasta 25 minutos en completarse. Si la creación del servidor de seguimiento tarda más de 25 minutos, compruebe que tenga los permisos necesarios de IAM. Para obtener más información sobre los permisos de IAM, consulte Configure los permisos de IAM para MLflow. Al crear correctamente un servidor de seguimiento, este se iniciará automáticamente.
Al crear un servidor de seguimiento, te recomendamos que especifiques la versión más reciente. Para obtener información sobre las versiones disponibles, consulteVersiones del servidor de seguimiento.
De forma predeterminada, el servidor de seguimiento que se crea es la versión más reciente. Sin embargo, recomendamos especificar siempre la última versión de forma explícita, ya que la versión subyacente MLflow APIs puede cambiar.
ts_name=
tracking-server-name
region=valid-region
version=valid-version
aws sagemaker create-mlflow-tracking-server \ --tracking-server-name$ts_name
\ --artifact-store-uri s3://$bucket_name
\ --role-arn$role_arn
\--automatic-model-registration
\ --region$region
\ --mlflow-version$version
El resultado debería ser similar al siguiente:
{ "TrackingServerArn": "arn:aws:sagemaker:
region
:123456789012
:mlflow-tracking-server/tracking-server-name
" }
importante
Tome nota del ARN del servidor de seguimiento para usarlo más adelante. También necesitará el $bucket_name
para llevar a cabo los pasos de limpieza.