Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Tutorial: creación de un clúster de Kubernetes basado en GPU en Amazon EKS
Antes de crear un clúster de Kubernetes basado en GPU en Amazon EKS, debe haber completado los pasos que se indican en Cómo empezar con AWS Batch Amazon EKS. Además, tenga en cuenta lo siguiente:
-
AWS Batch admite tipos de instancias con NVIDIA GPUs.
-
De forma predeterminada, AWS Batch selecciona la AMI acelerada de Amazon EKS con la Kubernetes versión que coincide con la versión del plano de control del clúster de Amazon EKS.
$
cat <<EOF > ./batch-eks-gpu-ce.json { "computeEnvironmentName": "My-Eks-GPU-CE1", "type": "MANAGED", "state": "ENABLED", "eksConfiguration": { "eksClusterArn": "arn:aws:eks:
<region>
:<account>
:cluster/<cluster-name>
", "kubernetesNamespace": "my-aws-batch-namespace" }, "computeResources": { "type": "EC2", "allocationStrategy": "BEST_FIT_PROGRESSIVE", "minvCpus": 0, "maxvCpus": 1024, "instanceTypes": [ "p3dn.24xlarge", "p4d.24xlarge" ], "subnets": [ "<eks-cluster-subnets-with-access-to-internet-for-image-pull>
" ], "securityGroupIds": [ "<eks-cluster-sg>
" ], "instanceRole": "<eks-instance-profile>
" } } EOF$
aws batch create-compute-environment --cli-input-json file://./batch-eks-gpu-ce.json
AWS Batch no administra el complemento del dispositivo NVIDIA GPU en su nombre. Debe instalar este complemento en su clúster de Amazon EKS y permitir que se dirija a los AWS Batch nodos. Para obtener más información, consulte Habilitar GPU Support en Kubernetes
Para configurar el complemento del NVIDIA dispositivo (DaemonSet
) para que se dirija a los AWS Batch nodos, ejecute los siguientes comandos.
# pull nvidia daemonset spec
$
curl -O https://raw.githubusercontent.com/NVIDIA/k8s-device-plugin/v0.12.2/nvidia-device-plugin.yml
# using your favorite editor, add Batch node toleration # this will allow the DaemonSet to run on Batch nodes - key: "batch.amazonaws.com/batch-node" operator: "Exists"
$
kubectl apply -f nvidia-device-plugin.yml
No se recomienda mezclar cargas de trabajo informáticas (CPU y memoria) con cargas de trabajo basadas en GPU en las mismas combinaciones de entorno de computación y cola de tareas. Esto se debe a que las tareas informáticas pueden consumir la capacidad de la GPU.
Para adjuntar colas de trabajos, ejecute los siguientes comandos.
$
cat <<EOF > ./batch-eks-gpu-jq.json { "jobQueueName": "My-Eks-GPU-JQ1", "priority": 10, "computeEnvironmentOrder": [ { "order": 1, "computeEnvironment": "My-Eks-GPU-CE1" } ] } EOF
$
aws batch create-job-queue --cli-input-json file://./batch-eks-gpu-jq.json