As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Configurar IAM permissões para MLflow
Você deve configurar as funções IAM de serviço necessárias para começar a usar MLflow na Amazon SageMaker.
Se você criar um novo SageMaker domínio da Amazon para acessar seus experimentos no Studio, poderá configurar as IAM permissões necessárias durante a configuração do domínio. Para obter mais informações, consulte Configure MLflow IAM permissões ao criar um novo domínio.
Para configurar permissões usando o IAM console, consulteCrie as funções IAM de serviço necessárias no IAM console.
Você deve configurar controles de autorização para sagemaker-mlflow
ações. Opcionalmente, você pode definir controles de autorização mais granulares para controlar as permissões específicas da ação. MLflow Para obter mais informações, consulte Crie controles de autorização específicos para ações.
Configure MLflow IAM permissões ao criar um novo domínio
Ao configurar um novo SageMaker domínio da Amazon para sua organização, você pode configurar IAM permissões para sua função de serviço de domínio por meio das configurações Usuários e Atividades de ML.
Para configurar IAM permissões para uso MLflow com SageMaker ao configurar um novo domínio
-
Configure um novo domínio usando o SageMaker console. Na página Configurar SageMaker domínio, escolha Configurar para organizações. Para obter mais informações, consulte Configuração personalizada usando o console.
-
Ao configurar usuários e atividades de ML, escolha entre as seguintes atividades de ML paraMLflow: Usar MLflow, gerenciar servidores de MLflow rastreamento e acesso necessário aos AWS serviços para MLflow. Para obter mais informações sobre essas atividades, consulte as explicações que seguem esse procedimento.
-
Conclua a configuração e a criação do seu novo domínio.
As seguintes atividades MLflow de ML estão disponíveis no Amazon SageMaker Role Manager:
Uso MLflow: essa atividade de ML concede à função de serviço do domínio permissão para chamar a MLflow REST APIs fim de gerenciar experimentos, execuções e modelos emMLflow.
Gerenciar servidores de MLflow rastreamento: essa atividade de ML concede à função de serviço do domínio permissão para criar, atualizar, iniciar, interromper e excluir servidores de rastreamento.
Acesso necessário aos AWS serviços para MLflow: Essa atividade de ML fornece as permissões de função de serviço de domínio necessárias para acessar o Amazon S3 e o SageMaker Model Registry. Isso permite que você use a função de serviço de domínio como a função de serviço do servidor de rastreamento.
Para obter mais informações sobre atividades de ML no Role Manager, consulteReferência da atividade de ML.
Crie as funções IAM de serviço necessárias no IAM console
Se você não criou ou atualizou sua função de serviço de domínio, você deve criar as seguintes funções de serviço no IAM console para criar e usar um Servidor de MLflow Rastreamento:
Uma função de IAM serviço do servidor de rastreamento que o servidor de rastreamento pode usar para acessar SageMaker recursos
Uma função SageMaker IAM de serviço que SageMaker pode ser usada para criar e gerenciar MLflow recursos
IAMpolíticas para a função de IAM serviço do servidor de rastreamento
A função de IAM serviço do servidor de rastreamento é usada pelo servidor de rastreamento para acessar os recursos necessários, como o Amazon S3 e o SageMaker Model Registry.
Ao criar a função de IAM serviço do servidor de rastreamento, use a seguinte política de IAM confiança:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "sagemaker.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }
No IAM console, adicione a seguinte política de permissões à sua função de serviço do servidor de rastreamento:
{ "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": "
*
" } ] }
IAMpolítica para a função SageMaker IAM de serviço
A função SageMaker de serviço é usada pelo cliente que acessa o Servidor MLflow de Rastreamento e precisa de permissões para ligar MLflow RESTAPIs. A função SageMaker de serviço também precisa de SageMaker API permissões para criar, atualizar, iniciar, interromper e excluir servidores de rastreamento.
Você pode criar uma nova função ou atualizar uma função existente. A função SageMaker de serviço precisa da seguinte 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": "*" } ] }
Crie controles de autorização específicos para ações
Você deve configurar controles de autorização esagemaker-mlflow
, opcionalmente, pode configurar controles de autorização específicos da ação para controlar as MLflow permissões mais granulares que seus usuários têm em um Servidor de Rastreamento. MLflow
nota
As etapas a seguir pressupõem que você já tenha um ARN para um Servidor MLflow de Rastreamento disponível. Para saber como criar um servidor de rastreamento, consulte Crie um servidor de rastreamento usando o Studio ouCrie um servidor de rastreamento usando o AWS CLI.
O comando a seguir cria um arquivo chamado mlflow-policy.json
que fornece ao servidor de rastreamento IAM permissões para todas as SageMaker MLflow ações disponíveis. Opcionalmente, você pode limitar as permissões que um usuário tem escolhendo as ações específicas que você deseja que esse usuário execute. Para obter uma lista das ações disponíveis, consulte IAMações apoiadas para 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
Use o mlflow-policy.json
arquivo para criar uma IAM política usando AWS CLI o.
aws iam create-policy \ --policy-name
MLflowPolicy
\ --policy-documentfile://mlflow-policy.json
Recupere o ID da sua conta e anexe a política à sua IAM função.
# 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
IAMações apoiadas para MLflow
As seguintes SageMaker MLflow ações são suportadas para controle de acesso por autorização:
-
SageMaker-MLFlow: interface de usuário de acesso
-
sagemaker-mlflow: CreateExperiment
-
sagemaker-mlflow: SearchExperiments
-
sagemaker-mlflow: GetExperiment
-
sagemaker-mlflow: GetExperimentByName
-
sagemaker-mlflow: DeleteExperiment
-
sagemaker-mlflow: RestoreExperiment
-
sagemaker-mlflow: UpdateExperiment
-
sagemaker-mlflow: CreateRun
-
sagemaker-mlflow: DeleteRun
-
sagemaker-mlflow: RestoreRun
-
sagemaker-mlflow: GetRun
-
sagemaker-mlflow: LogMetric
-
sagemaker-mlflow: LogBatch
-
sagemaker-mlflow: LogModel
-
sagemaker-mlflow: LogInputs
-
sagemaker-mlflow: SetExperimentTag
-
sagemaker-mlflow: SetTag
-
sagemaker-mlflow: DeleteTag
-
sagemaker-mlflow: LogParam
-
sagemaker-mlflow: GetMetricHistory
-
sagemaker-mlflow: SearchRuns
-
sagemaker-mlflow: ListArtifacts
-
sagemaker-mlflow: UpdateRun
-
sagemaker-mlflow: CreateRegisteredModel
-
sagemaker-mlflow: GetRegisteredModel
-
sagemaker-mlflow: RenameRegisteredModel
-
sagemaker-mlflow: UpdateRegisteredModel
-
sagemaker-mlflow: DeleteRegisteredModel
-
sagemaker-mlflow: GetLatestModelVersions
-
sagemaker-mlflow: CreateModelVersion
-
sagemaker-mlflow: GetModelVersion
-
sagemaker-mlflow: UpdateModelVersion
-
sagemaker-mlflow: DeleteModelVersion
-
sagemaker-mlflow: SearchModelVersions
-
sagemaker-mlflow: GetDownload URIForModelVersionArtifacts
-
sagemaker-mlflow: TransitionModelVersionStage
-
sagemaker-mlflow: SearchRegisteredModels
-
sagemaker-mlflow: SetRegisteredModelTag
-
sagemaker-mlflow: DeleteRegisteredModelTag
-
sagemaker-mlflow: DeleteModelVersionTag
-
sagemaker-mlflow: DeleteRegisteredModelAlias
-
sagemaker-mlflow: SetRegisteredModelAlias
-
sagemaker-mlflow: GetModelVersionByAlias