Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Passen Sie die Amazon EKS-Startvorlagen an
AWS Batch auf Amazon EKS unterstützt Startvorlagen. Es gibt Einschränkungen in Bezug auf die Funktionen Ihrer Startvorlage.
Wichtig
AWS Batch Läuft
/etc/eks/bootstrap.shfür EKS AL2-AMIs. Führen Sie es nicht/etc/eks/bootstrap.shin Ihrer Startvorlage oder Ihren cloud-init user-data Startskripten aus. Sie können neben dem Parameter weitere--kubelet-extra-argsParameter zu bootstrap.sh hinzufügen. Stellen Sie dazu die AWS_BATCH_KUBELET_EXTRA_ARGSVariable in der/etc/aws-batch/batch.configDatei ein. Einzelheiten finden Sie im folgenden Beispiel.-
Für EKS AL2023 wird das NodeConfigSpec
von EKS AWS Batch verwendet, um Instanzen dazu zu bringen, dem EKS-Cluster beizutreten. AWS Batch wird NodeConfigSpec für ClusterDetails den EKS-Cluster eingegeben und Sie müssen sie nicht angeben.
Anmerkung
Wir empfehlen, keine der folgenden NodeConfigSpec
TaintsCluster NameapiServerEndpointcertificatAuthorityCIDRErstellen Sie keine Beschriftungen mit dem Präfix
batch.amazonaws.com/
Anmerkung
Wenn die Startvorlage nach dem Aufruf geändert CreateComputeEnvironment wird, UpdateComputeEnvironment muss sie aufgerufen werden, um die Version der Startvorlage zu überprüfen, ob sie ersetzt werden kann.
Themen
Fügen Sie zusätzliche Kubelet-Argumente hinzu
AWS Batch unterstützt das Hinzufügen zusätzlicher Argumente zum Befehlkubelet. Eine Liste der unterstützten Parameter finden Sie kubelet wird für EKS-AL2-AMIs der --node-labels
mylabel=helloworldkubelet Befehlszeile hinzugefügt.
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==--
Für EKS AL2023 AMIs ist das Dateiformat YAML. Eine Liste der unterstützten Parameter finden Sie NodeConfigSpec wird für EKS AL2023 AMIs zur --node-labels
mylabel=helloworldkubelet Befehlszeile hinzugefügt.
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==--
Konfigurieren Sie die Container-Laufzeit
Sie können die AWS Batch CONTAINER_RUNTIME Umgebungsvariable verwenden, um die Container-Laufzeit auf einem verwalteten Knoten zu konfigurieren. Im folgenden Beispiel wird die Container-Laufzeit auf containerd when bootstrap.sh runs festgelegt. Weitere Informationen finden Sie containerd
Wenn Sie ein optimiertes EKS_AL2023_NVIDIA AMI EKS_AL2023 oder ein AMI verwenden, müssen Sie die Container-Laufzeit nicht angeben, da nur containerd unterstützt wird.
Anmerkung
Die CONTAINER_RUNTIME Umgebungsvariable entspricht der --container-runtime Option vonbootstrap.sh. Weitere Informationen finden Sie 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==--
Mounten Sie ein Amazon EFS-Volume
Sie können Startvorlagen verwenden, um Volumes auf dem Knoten zu mounten. Im folgenden Beispiel werden die runcmd Einstellungen cloud-config packages und verwendet. Weitere Informationen finden Sie in der cloud-init Dokumentation unter
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==--
Um dieses Volume im Job verwenden zu können, muss es im Parameter eksProperties zu hinzugefügt werden. RegisterJobDefinition Das folgende Beispiel ist ein großer Teil der Auftragsdefinition.
{ "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" } } ] } } }
Im Knoten ist das Amazon EFS-Volume im /mnt/efs Verzeichnis gemountet. Im Container für den Amazon EKS-Job wird das Volume im /efs Verzeichnis gemountet.
IPv6-Support
AWS Batch unterstützt Amazon EKS-Cluster mit IPv6-Adressen. Für den Support sind keine Anpassungen erforderlich. AWS Batch Bevor Sie beginnen, empfehlen wir Ihnen jedoch, die Überlegungen und Bedingungen zu lesen, die unter Zuweisen von IPv6-Adressen zu Pods und Services im Amazon EKS-Benutzerhandbuch beschrieben sind.