Membuat SageMaker HyperPod cluster - Amazon SageMaker AI

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

Membuat SageMaker HyperPod cluster

Pelajari cara membuat SageMaker HyperPod cluster yang diatur oleh Amazon EKS menggunakan. AWS CLI

  1. Sebelum membuat SageMaker HyperPod cluster:

    1. Pastikan Anda memiliki kluster Amazon EKS yang sudah ada dan berjalan. Untuk petunjuk mendetail tentang cara menyiapkan kluster Amazon EKS, lihat Membuat klaster Amazon EKS di Panduan Pengguna Amazon EKS.

    2. Instal bagan Helm seperti yang diinstruksikan dalam. Menginstal paket di cluster Amazon EKS menggunakan Helm Jika Anda membuatMembuat cluster HyperPod EKS dengan grup instans terbatas (RIG), Anda akan memerlukan bagan Helm terpisah.

  2. Siapkan skrip konfigurasi siklus hidup dan unggah ke bucket Amazon S3, seperti. s3://amzn-s3-demo-bucket/Lifecycle-scripts/base-config/

    Untuk memulai dengan cepat, unduh skrip sampel on_create.shdari GitHub repositori Pelatihan Terdistribusi AWS ome, dan unggah ke bucket S3. Anda juga dapat menyertakan instruksi penyiapan tambahan, serangkaian skrip penyiapan, atau perintah yang akan dijalankan selama tahap penyediaan HyperPod klaster.

    penting

    Jika Anda membuat Peran IAM untuk SageMaker HyperPod lampiran hanya terkelola AmazonSageMakerClusterInstanceRolePolicy, klaster Anda memiliki akses ke bucket Amazon S3 dengan awalan tertentu. sagemaker-

    Jika Anda membuat grup instans terbatas, Anda tidak perlu mengunduh dan menjalankan skrip siklus hidup. Sebaliknya, Anda harus berlariinstall_rig_dependencies.sh.

    Prasyarat untuk menjalankan skrip meliputi: install_rig_dependencies.sh

    • AWS Node (CNI) dan CoreDNS keduanya harus diaktifkan. Ini adalah add-on EKS standar yang tidak dikelola oleh SageMaker HyperPod Helm standar, tetapi dapat dengan mudah diaktifkan di konsol EKS di bawah Add-on.

    • Bagan SageMaker HyperPod Helm standar harus diinstal sebelum menjalankan skrip ini.

    install_rig_dependencies.shSkrip melakukan tindakan berikut.

    • aws-node(CNI): rig-aws-node Daemonset baru dibuat; sudah aws-node ditambal untuk menghindari node RIG.

    • coredns: Dikonversi ke Daemonset RIGs untuk mendukung penggunaan Multi-rig dan mencegah kelebihan beban.

    • operator pelatihan: Diperbarui dengan toleransi noda Pekerja RIG dan NodeAffinity yang mendukung instans non-RIG.

    • Elastic Fabric Adapter (EFA): Diperbarui untuk mentolerir noda pekerja RIG dan menggunakan gambar wadah yang benar untuk setiap Wilayah.

  3. Siapkan file permintaan CreateClusterAPI dalam format JSON. UntukExecutionRole, berikan ARN dari peran IAM yang Anda buat dengan yang dikelola AmazonSageMakerClusterInstanceRolePolicy dari bagian. Peran IAM untuk SageMaker HyperPod

    catatan

    Pastikan SageMaker HyperPod klaster Anda di-deploy dalam Virtual Private Cloud (VPC) yang sama dengan cluster Amazon EKS Anda. Subnet dan grup keamanan yang ditentukan dalam konfigurasi SageMaker HyperPod cluster harus memungkinkan konektivitas jaringan dan komunikasi dengan titik akhir server API klaster Amazon EKS.

    // create_cluster.json { "ClusterName": "string", "InstanceGroups": [{ "InstanceGroupName": "string", "InstanceType": "string", "InstanceCount": number, "LifeCycleConfig": { "SourceS3Uri": "s3://amzn-s3-demo-bucket-sagemaker>/<lifecycle-script-directory>/src/", "OnCreate": "on_create.sh" }, "ExecutionRole": "string", "ThreadsPerCore": number, "OnStartDeepHealthChecks": [ "InstanceStress", "InstanceConnectivity" ] }], "RestrictedInstanceGroups": [ { "EnvironmentConfig": { "FSxLustreConfig": { "PerUnitStorageThroughput": number, "SizeInGiB": number } }, "ExecutionRole": "string", "InstanceCount": number, "InstanceGroupName": "string", "InstanceStorageConfigs": [ { ... } ], "InstanceType": "string", "OnStartDeepHealthChecks": [ "string" ], "OverrideVpcConfig": { "SecurityGroupIds": [ "string" ], "Subnets": [ "string" ] }, "ScheduledUpdateConfig": { "DeploymentConfig": { "AutoRollbackConfiguration": [ { "AlarmName": "string" } ], "RollingUpdatePolicy": { "MaximumBatchSize": { "Type": "string", "Value": number }, "RollbackMaximumBatchSize": { "Type": "string", "Value": number } }, "WaitIntervalInSeconds": number }, "ScheduleExpression": "string" }, "ThreadsPerCore": number, "TrainingPlanArn": "string" } ], "VpcConfig": { "SecurityGroupIds": ["string"], "Subnets": ["string"] }, "Tags": [{ "Key": "string", "Value": "string" }], "Orchestrator": { "Eks": { "ClusterArn": "string", } }, "NodeRecovery": "Automatic" }

    Perhatikan hal berikut saat mengonfigurasi untuk membuat SageMaker HyperPod cluster baru yang terkait dengan kluster EKS.

    • Anda dapat mengonfigurasi hingga 20 grup instans di bawah InstanceGroups parameter.

    • UntukOrchestator.Eks.ClusterArn, tentukan ARN cluster EKS yang ingin Anda gunakan sebagai orkestrator.

    • UntukOnStartDeepHealthChecks, tambahkan InstanceStress dan InstanceConnectivity aktifkanPemeriksaan kesehatan yang mendalam.

    • UntukNodeRecovery, tentukan Automatic untuk mengaktifkan pemulihan simpul otomatis. SageMaker HyperPod menggantikan atau me-reboot instance (node) ketika masalah ditemukan oleh agen pemantauan kesehatan.

    • Untuk Tags parameter, Anda dapat menambahkan tag khusus untuk mengelola SageMaker HyperPod cluster sebagai AWS sumber daya. Anda dapat menambahkan tag ke klaster Anda dengan cara yang sama seperti Anda menambahkannya di AWS layanan lain yang mendukung penandaan. Untuk mempelajari selengkapnya tentang menandai AWS sumber daya secara umum, lihat Panduan Pengguna AWS Sumber Daya Tag.

    • Untuk VpcConfig parameter, tentukan informasi VPC yang digunakan dalam cluster EKS. Subnet harus bersifat pribadi.

  4. Jalankan perintah create-cluster sebagai berikut.

    penting

    Saat menjalankan create-cluster perintah dengan --cli-input-json parameter, Anda harus menyertakan file:// awalan sebelum jalur lengkap ke file JSON. Awalan ini diperlukan untuk memastikan bahwa AWS CLI mengenali input sebagai jalur file. Menghilangkan file:// awalan menghasilkan kesalahan parameter parsing.

    aws sagemaker create-cluster \ --cli-input-json file://complete/path/to/create_cluster.json

    Ini harus mengembalikan ARN dari cluster baru.

    penting

    Anda dapat menggunakan operasi update-cluster untuk menghapus grup instans terbatas (RIG). Ketika RIG diperkecil menjadi 0, sistem file FSx for Lustre tidak akan dihapus. Untuk benar-benar menghapus sistem file FSx for Lustre, Anda harus menghapus RIG sepenuhnya.

    Menghapus RIG tidak akan menghapus artefak apa pun yang disimpan di bucket Amazon S3 yang dikelola layanan. Namun, Anda harus memastikan semua artefak dalam sistem file FSx for Lustre sepenuhnya disinkronkan ke Amazon S3 sebelum dihapus. Sebaiknya tunggu setidaknya 30 menit setelah pekerjaan selesai untuk memastikan sinkronisasi lengkap semua artefak dari sistem file FSx for Lustre ke bucket Amazon S3 yang dikelola layanan.