Configurazione di Neptune ML senza utilizzare il modello di avvio rapido AWS CloudFormation - Amazon Neptune

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Configurazione di Neptune ML senza utilizzare il modello di avvio rapido AWS CloudFormation

Questa guida fornisce step-by-step istruzioni per configurare Amazon Neptune ML senza utilizzare AWS AWS CloudFormation il modello di avvio rapido. Presuppone che tu abbia già un cluster Neptune DB funzionante e copre la configurazione necessaria, inclusa l'installazione del servizio Neptune-Export, la creazione di ruoli IAM personalizzati e la configurazione del cluster DB per abilitare Neptune ML. La guida spiega anche come creare due SageMaker endpoint in Neptune per consentire VPC al motore Neptune di accedere alla gestione necessaria. SageMaker APIs Seguendo queste istruzioni, puoi configurare Neptune ML sulla tua infrastruttura Neptune esistente senza fare affidamento sul modello. AWS CloudFormation

Inizia con un cluster database Neptune funzionante

Se non utilizzi il modello di AWS CloudFormation avvio rapido per configurare Neptune ML, avrai bisogno di un cluster Neptune DB esistente con cui lavorare. Se lo desideri, puoi usarne uno che hai già o clonarne uno che usi già oppure puoi crearne uno nuovo (consulta Crea un cluster Neptune).

Installazione del servizio Neptune-Export

Se non hai ancora provveduto, installa il servizio Neptune-Export, come spiegato in Utilizzo del servizio Neptune-Export per esportare i dati di Neptune.

Aggiungi una regola in entrata al gruppo di sicurezza NeptuneExportSecurityGroup creato dal programma di installazione, con le seguenti impostazioni:

  • Tipo: Custom TCP

  • Protocol (Protocollo): TCP

  • Intervallo porte: 80 - 443

  • Fonte: (Neptune DB cluster security group ID)

Crea un ruolo NeptuneLoadFrom S3 IAM personalizzato

Se non l'hai già fatto, crea un NeptuneLoadFromS3 IAM ruolo personalizzato, come spiegato inCreazione di un IAM ruolo per accedere ad Amazon S3.

Crea un NeptuneSageMaker IAMRole ruolo personalizzato

Utilizza la IAMconsole per crearne uno personalizzatoNeptuneSageMakerIAMRole, utilizzando la seguente politica:

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "ec2:CreateNetworkInterface", "ec2:CreateNetworkInterfacePermission", "ec2:CreateVpcEndpoint", "ec2:DeleteNetworkInterface", "ec2:DeleteNetworkInterfacePermission", "ec2:DescribeDhcpOptions", "ec2:DescribeNetworkInterfaces", "ec2:DescribeRouteTables", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcEndpoints", "ec2:DescribeVpcs" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "ecr:GetAuthorizationToken", "ecr:GetDownloadUrlForLayer", "ecr:BatchGetImage", "ecr:BatchCheckLayerAvailability" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::*:role/*" ], "Condition": { "StringEquals": { "iam:PassedToService": [ "sagemaker.amazonaws.com" ] } }, "Effect": "Allow" }, { "Action": [ "kms:CreateGrant", "kms:Decrypt", "kms:GenerateDataKey*" ], "Resource": "arn:aws:kms:*:*:key/*", "Effect": "Allow" }, { "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogGroups", "logs:DescribeLogStreams", "logs:GetLogEvents" ], "Resource": [ "arn:aws:logs:*:*:log-group:/aws/sagemaker/*" ], "Effect": "Allow" }, { "Action": [ "sagemaker:AddTags", "sagemaker:CreateEndpoint", "sagemaker:CreateEndpointConfig", "sagemaker:CreateHyperParameterTuningJob", "sagemaker:CreateModel", "sagemaker:CreateProcessingJob", "sagemaker:CreateTrainingJob", "sagemaker:CreateTransformJob", "sagemaker:DeleteEndpoint", "sagemaker:DeleteEndpointConfig", "sagemaker:DeleteModel", "sagemaker:DescribeEndpoint", "sagemaker:DescribeEndpointConfig", "sagemaker:DescribeHyperParameterTuningJob", "sagemaker:DescribeModel", "sagemaker:DescribeProcessingJob", "sagemaker:DescribeTrainingJob", "sagemaker:DescribeTransformJob", "sagemaker:InvokeEndpoint", "sagemaker:ListTags", "sagemaker:ListTrainingJobsForHyperParameterTuningJob", "sagemaker:StopHyperParameterTuningJob", "sagemaker:StopProcessingJob", "sagemaker:StopTrainingJob", "sagemaker:StopTransformJob", "sagemaker:UpdateEndpoint", "sagemaker:UpdateEndpointWeightsAndCapacities" ], "Resource": [ "arn:aws:sagemaker:*:*:*" ], "Effect": "Allow" }, { "Action": [ "sagemaker:ListEndpointConfigs", "sagemaker:ListEndpoints", "sagemaker:ListHyperParameterTuningJobs", "sagemaker:ListModels", "sagemaker:ListProcessingJobs", "sagemaker:ListTrainingJobs", "sagemaker:ListTransformJobs" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "s3:GetObject", "s3:PutObject", "s3:DeleteObject", "s3:AbortMultipartUpload", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::*" ], "Effect": "Allow" } ] }

Durante la creazione di questo ruolo, modifica la relazione di trust affinché corrisponda a quella seguente:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "ec2.amazonaws.com", "rds.amazonaws.com", "sagemaker.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }

Infine, copia quello ARN assegnato a questo nuovo NeptuneSageMakerIAMRole ruolo.

Importante
  • Assicurati che le autorizzazioni Amazon S3 indicate in NeptuneSageMakerIAMRole corrispondano a quelle precedenti.

  • L'universaleARN, arn:aws:s3:::* viene utilizzato per la risorsa Amazon S3 nella politica sopra riportata. Se per qualche motivo l'universale ARN non può essere utilizzato, allora arn:aws:s3:::graphlytics* e ARN per qualsiasi altro cliente la risorsa Amazon S3 che i comandi NeptunEML utilizzeranno deve essere aggiunta alla sezione delle risorse.

Configurazione del cluster database per abilitare Neptune ML

Per configurare il cluster database per Neptune ML
  1. Nella console Neptune passa a Gruppi di parametri e quindi al gruppo di parametri del cluster database associato al cluster database che intendi usare. Imposta il neptune_ml_iam_role parametro su quello ARN assegnato al NeptuneSageMakerIAMRole ruolo che hai appena creato.

  2. Passa a Database, quindi seleziona il cluster database che utilizzerai per Neptune ML. Seleziona Azioni, quindi Gestisci IAM ruoli.

  3. Nella pagina Gestisci IAM ruoli, seleziona Aggiungi ruolo e aggiungi ilNeptuneSageMakerIAMRole. Aggiungi quindi il ruolo NeptuneLoadFromS3.

  4. Riavvia l'istanza di scrittura del cluster database.

Crea due SageMaker endpoint nel tuo Neptune VPC

Infine, per consentire al motore Neptune di accedere alla APIs gestione SageMaker necessaria, è necessario creare SageMaker due endpoint in VPC Neptune, come spiegato in. Crea due endpoint per SageMaker nel tuo Neptune VPC