Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Kustomisasi templat peluncuran Amazon EKS
AWS Batch di Amazon EKS mendukung template peluncuran. Ada kendala pada apa yang dapat dilakukan template peluncuran Anda.
penting
Untuk EKS AL2 AMIs, AWS Batch lari
/etc/eks/bootstrap.sh
. Jangan berjalan/etc/eks/bootstrap.sh
di template peluncuran atau cloud-init user-data skrip Anda. Anda dapat menambahkan parameter tambahan selain--kubelet-extra-args
parameter ke bootstrap.sh. Untuk melakukan ini, atur AWS_BATCH_KUBELET_EXTRA_ARGS
variabel dalam/etc/aws-batch/batch.config
file. Lihat contoh berikut untuk detailnya.-
Untuk EKS AL2 023, AWS Batch gunakan NodeConfigSpec
dari EKS untuk membuat instance bergabung dengan cluster EKS. AWS Batch mengisi ClusterDetailsNodeConfigSpec untuk cluster EKS dan Anda tidak perlu menentukannya.
catatan
Kami menyarankan Anda untuk tidak mengatur NodeConfigSpec
Taints
Cluster Name
apiServerEndpoint
certificatAuthority
CIDR
Jangan membuat label dengan awalan
batch.amazonaws.com/
catatan
Jika template peluncuran diubah setelah CreateComputeEnvironmentdipanggil, UpdateComputeEnvironmentharus dipanggil untuk mengevaluasi versi template peluncuran untuk penggantian.
Topik
Tambahkan argumen kubelet
tambahan
AWS Batch mendukung penambahan argumen tambahan ke kubelet
perintah. Untuk daftar parameter yang didukung, lihat kubelet
ditambahkan ke baris --node-labels
mylabel=helloworld
kubelet
perintah.
MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="==MYBOUNDARY==" --==MYBOUNDARY== Content-Type: text/x-shellscript; charset="us-ascii" #!/bin/bash mkdir -p /etc/aws-batch echo AWS_BATCH_KUBELET_EXTRA_ARGS=\"
--node-labels mylabel=helloworld
\" >> /etc/aws-batch/batch.config --==MYBOUNDARY==--
Untuk EKS AL2 023 AMIs format filenya adalah YAMB. Untuk daftar parameter yang didukung, lihat NodeConfigSpec
ditambahkan ke baris --node-labels
mylabel=helloworld
kubelet
perintah.
MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="==MYBOUNDARY==" --==MYBOUNDARY== Content-Type: application/node.eks.aws apiVersion: node.eks.aws/v1alpha1 kind: NodeConfig spec: kubelet: flags: - --
node-labels=mylabel=helloworld
--==MYBOUNDARY==--
Konfigurasikan runtime kontainer
Anda dapat menggunakan variabel AWS Batch CONTAINER_RUNTIME
lingkungan untuk mengonfigurasi runtime kontainer pada node terkelola. Contoh berikut menetapkan runtime kontainer ke containerd
saat bootstrap.sh
berjalan. Untuk informasi lebih lanjut, lihat containerd
Jika Anda menggunakan EKS_AL2023_NVIDIA
AMI EKS_AL2023
atau yang dioptimalkan, Anda tidak perlu menentukan runtime container karena hanya containerd yang didukung.
catatan
Variabel CONTAINER_RUNTIME
lingkungan setara dengan --container-runtime
opsibootstrap.sh
. Untuk informasi lebih lanjut, lihat Options
MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="==MYBOUNDARY==" --==MYBOUNDARY== Content-Type: text/x-shellscript; charset="us-ascii" #!/bin/bash mkdir -p /etc/aws-batch echo CONTAINER_RUNTIME=containerd >> /etc/aws-batch/batch.config --==MYBOUNDARY==--
Pasang volume Amazon EFS
Anda dapat menggunakan template peluncuran untuk me-mount volume ke node. Dalam contoh berikut, runcmd
pengaturan cloud-config
packages
dan digunakan. Untuk informasi selengkapnya, lihat contoh konfigurasi Cloud
MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="==MYBOUNDARY==" --==MYBOUNDARY== Content-Type: text/cloud-config; charset="us-ascii" packages: - amazon-efs-utils runcmd: - file_system_id_01=fs-abcdef123 - efs_directory=/mnt/efs - mkdir -p ${efs_directory} - echo "${file_system_id_01}:/ ${efs_directory} efs _netdev,noresvport,tls,iam 0 0" >> /etc/fstab - mount -t efs -o tls ${file_system_id_01}:/ ${efs_directory} --==MYBOUNDARY==--
Untuk menggunakan volume ini dalam pekerjaan, itu harus ditambahkan dalam parameter eksProperties ke RegisterJobDefinition. Contoh berikut adalah sebagian besar definisi pekerjaan.
{ "jobDefinitionName": "MyJobOnEks_EFS", "type": "container", "eksProperties": { "podProperties": { "containers": [ { "image": "public.ecr.aws/amazonlinux/amazonlinux:2", "command": ["ls", "-la", "/efs"], "resources": { "limits": { "cpu": "1", "memory": "1024Mi" } }, "volumeMounts": [ { "name": "
efs-volume
", "mountPath": "/efs
" } ] } ], "volumes": [ { "name": "efs-volume
", "hostPath": { "path": "/mnt/efs
" } } ] } } }
Di node, volume Amazon EFS dipasang di /mnt/efs
direktori. Dalam wadah untuk pekerjaan Amazon EKS, volume dipasang di /efs
direktori.
IPv6 dukungan
AWS Batch mendukung kluster Amazon EKS yang memiliki IPv6 alamat. Tidak ada penyesuaian yang diperlukan untuk AWS Batch dukungan. Namun, sebelum memulai, sebaiknya Anda meninjau pertimbangan dan ketentuan yang diuraikan dalam Menetapkan IPv6 alamat ke pod dan layanan di Panduan Pengguna Amazon EKS.