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à.
Gestione dei cluster con funzionalità personalizzate AMIs
Dopo aver creato l'AMI personalizzata, puoi utilizzarla per creare o aggiornare un SageMaker HyperPod cluster Amazon. Puoi anche scalare o aggiungere gruppi di istanze che utilizzano la nuova AMI.
Autorizzazioni necessarie per le operazioni del cluster
Aggiungi le seguenti autorizzazioni all'utente amministratore del cluster che gestisce e configura SageMaker HyperPod i cluster. Il seguente esempio di policy include il set minimo di autorizzazioni per gli amministratori dei cluster per eseguire il SageMaker HyperPod core APIs e gestire SageMaker HyperPod i cluster con AMI personalizzate.
Tieni presente che le autorizzazioni di condivisione delle istantanee AMI e AMI EBS sono incluse tramite ModifyImageAttribute
le autorizzazioni ModifySnapshotAttribute
API come parte della seguente politica. Per definire l'ambito delle autorizzazioni di condivisione, puoi seguire i seguenti passaggi:
-
Aggiungi tag per controllare le autorizzazioni di condivisione AMI su AMI e AMI snapshot. Ad esempio, puoi etichettare l'AMI con
AllowSharing
astrue
. -
Aggiungi la chiave di contesto nella policy per consentire la condivisione AMI solo per i AMIs tag con determinati tag.
La seguente politica è una politica ristretta per garantire che true
siano consentiti solo i AMIs tag con AllowSharing
as.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "
arn:aws:iam::111122223333:role/your-execution-role-name
" }, { "Effect": "Allow", "Action": [ "sagemaker:CreateCluster", "sagemaker:DeleteCluster", "sagemaker:DescribeCluster", "sagemaker:DescribeCluterNode", "sagemaker:ListClusterNodes", "sagemaker:ListClusters", "sagemaker:UpdateCluster", "sagemaker:UpdateClusterSoftware", "sagemaker:BatchDeleteClusterNodes", "eks:DescribeCluster", "eks:CreateAccessEntry", "eks:DescribeAccessEntry", "eks:DeleteAccessEntry", "eks:AssociateAccessPolicy", "iam:CreateServiceLinkedRole", "ec2:DescribeImages", "ec2:DescribeSnapshots" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:ModifyImageAttribute", "ec2:ModifySnapshotAttribute" ], "Resource": "*", "Condition": { "StringEquals": { "ec2:ResourceTag/AllowSharing": "true" } } } ] }
Creazione di un cluster
È possibile specificare l'AMI personalizzata nel ImageId
campo relativo all'CreateCluster
operazione.
L'esempio seguente mostra come creare un cluster con un'AMI personalizzata:
aws sagemaker create-cluster \ --cluster-name
<exampleClusterName>
\ --orchestrator 'Eks={ClusterArn='<eks_cluster_arn>
'}' \ --node-provisioning-mode Continuous \ --instance-groups '{ "InstanceGroupName": "<exampleGroupName>
", "InstanceType": "ml.c5.2xlarge", "InstanceCount": 2, "LifeCycleConfig": { "SourceS3Uri": "<s3://amzn-s3-demo-bucket>
", "OnCreate": "on_create_noop.sh" }, "ImageId": "<your_custom_ami>
", "ExecutionRole": "<arn:aws:iam::444455556666:role/Admin>
", "ThreadsPerCore": 1, "InstanceStorageConfigs": [ { "EbsVolumeConfig": { "VolumeSizeInGB": 200 } } ] }' --vpc-config '{ "SecurityGroupIds": ["<security_group>
"], "Subnets": ["<subnet>
"] }'
Aggiornare il software del cluster
Se desideri aggiornare un gruppo di istanze esistente sul tuo cluster con la tua AMI personalizzata, puoi utilizzare l'UpdateClusterSoftware
operazione e specificare l'AMI personalizzata nel ImageId
campo. Tieni presente che, a meno che non specifichi il nome di un gruppo di istanze specifico nella richiesta, la nuova immagine viene applicata a tutti i gruppi di istanze del cluster.
L'esempio seguente mostra come aggiornare il software della piattaforma di un cluster con un'AMI personalizzata:
aws sagemaker update-cluster-software \ --cluster-name
<exampleClusterName>
\ --instance-groups<instanceGroupToUpdate>
\ --image-id<customAmiId>
Scalare un gruppo di istanze
L'esempio seguente mostra come scalare un gruppo di istanze per un cluster utilizzando un'AMI personalizzata:
aws sagemaker update-cluster \ --cluster-name
<exampleClusterName>
--instance-groups '[{ "InstanceGroupName": "<exampleGroupName>
", "InstanceType": "ml.c5.2xlarge", "InstanceCount": 2, "LifeCycleConfig": { "SourceS3Uri": "<s3://amzn-s3-demo-bucket>
", "OnCreate": "on_create_noop.sh" }, "ExecutionRole": "<arn:aws:iam::444455556666:role/Admin>
", "ThreadsPerCore": 1, "ImageId": "<your_custom_ami>
" }]'
Aggiungere un gruppo di istanze
L'esempio seguente mostra come aggiungere un gruppo di istanze a un cluster utilizzando un'AMI personalizzata:
aws sagemaker update-cluster \ --cluster-name "
<exampleClusterName>
" \ --instance-groups '{ "InstanceGroupName": "<exampleGroupName>
", "InstanceType": "ml.c5.2xlarge", "InstanceCount": 2, "LifeCycleConfig": { "SourceS3Uri": "<s3://amzn-s3-demo-bucket>
", "OnCreate": "on_create_noop.sh" }, "ExecutionRole": "<arn:aws:iam::444455556666:role/Admin>
", "ThreadsPerCore": 1, "ImageId": "<your_custom_ami>
" }' '{ "InstanceGroupName": "<exampleGroupName2>
", "InstanceType": "ml.c5.2xlarge", "InstanceCount": 1, "LifeCycleConfig": { "SourceS3Uri": "<s3://amzn-s3-demo-bucket>
", "OnCreate": "on_create_noop.sh" }, "ExecutionRole": "<arn:aws:iam::444455556666:role/Admin>
", "ThreadsPerCore": 1, "ImageId": "<your_custom_ami>
" }'