Manajemen cluster dengan kustom AMIs - Amazon SageMaker AI

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Manajemen cluster dengan kustom AMIs

Setelah AMI kustom dibuat, Anda dapat menggunakannya untuk membuat atau memperbarui SageMaker HyperPod cluster Amazon. Anda juga dapat meningkatkan atau menambahkan grup instans yang menggunakan AMI baru.

Izin diperlukan untuk operasi klaster

Tambahkan izin berikut ke pengguna admin cluster yang mengoperasikan dan mengkonfigurasi SageMaker HyperPod cluster. Contoh kebijakan berikut mencakup kumpulan izin minimum bagi administrator klaster untuk menjalankan SageMaker HyperPod inti APIs dan mengelola SageMaker HyperPod klaster dengan AMI kustom.

Perhatikan bahwa izin berbagi snapshot AMI dan AMI EBS disertakan melalui ModifyImageAttribute dan izin ModifySnapshotAttribute API sebagai bagian dari kebijakan berikut. Untuk mencatat izin berbagi, Anda dapat melakukan langkah-langkah berikut:

  • Tambahkan tag untuk mengontrol izin berbagi AMI ke snapshot AMI dan AMI. Misalnya, Anda dapat menandai AMI dengan AllowSharing astrue.

  • Tambahkan kunci konteks dalam kebijakan untuk hanya mengizinkan berbagi AMI AMIs agar diberi tag dengan tag tertentu.

Kebijakan berikut adalah kebijakan bawah cakupan untuk memastikan hanya AMIs ditandai dengan AllowSharing sebagaimana true diizinkan.

{ "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" } } } ] }

Membuat klaster

Anda dapat menentukan AMI kustom Anda di ImageId bidang untuk CreateCluster operasi.

Contoh berikut menunjukkan cara membuat klaster dengan Spark menggunakan Java:

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>"] }'

Memperbarui perangkat lunak klaster

Jika ingin memperbarui grup instans yang ada di klaster dengan AMI kustom, Anda dapat menggunakan UpdateClusterSoftware operasi dan menentukan AMI kustom Anda di ImageId bidang. Perhatikan bahwa kecuali Anda menentukan nama grup instans tertentu dalam permintaan Anda, maka gambar baru diterapkan ke semua grup instans di klaster Anda.

Contoh berikut menunjukkan cara memperbarui perangkat lunak platform klaster dengan AMI kustom:

aws sagemaker update-cluster-software \ --cluster-name <exampleClusterName> \ --instance-groups <instanceGroupToUpdate> \ --image-id <customAmiId>

Skalakan grup instans

Contoh berikut menunjukkan cara meningkatkan grup instans untuk klaster menggunakan AMI kustom:

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>" }]'

Menambahkan grup instans

Contoh berikut menunjukkan cara menambahkan grup instans ke klaster menggunakan AMI kustom:

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>" }'