Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Lavorare con immagini multi-architettura
Amazon EMR on EKS supporta immagini di container multiarchitettura per Amazon Elastic Container Registry (AmazonECR). Per ulteriori informazioni, consulta Introduzione alle immagini di container multiarchitettura per Amazon ECR
Amazon EMR su immagini EKS personalizzate supporta sia istanze AWS basate su Graviton che EC2 istanze. non-Graviton-based EC2 Le immagini basate su Graviton sono archiviate negli stessi archivi di immagini in Amazon ECR delle immagini. non-Graviton-based
Ad esempio, per ispezionare l'elenco manifest Docker per le immagini 6.6.0, esegui il comando seguente.
docker manifest inspect 895885662937.dkr.ecr.us-west-2.amazonaws.com/spark/emr-6.6.0:latest
Ecco l'output. L'architettura arm64
è per un'istanza Graviton. Quella amd64
è per un'istanza non Graviton.
{ "schemaVersion": 2, "mediaType": "application/vnd.docker.distribution.manifest.list.v2+json", "manifests": [ { "mediaType": "application/vnd.docker.distribution.manifest.v2+json", "size": 1805, "digest": "xxx123:6b971cb47d11011ab3d45fff925e9442914b4977ae0f9fbcdcf5cfa99a7593f0", "platform": { "architecture": "arm64", "os": "linux" } }, { "mediaType": "application/vnd.docker.distribution.manifest.v2+json", "size": 1805, "digest": "xxx123:6f2375582c9c57fa9838c1d3a626f1b4fc281e287d2963a72dfe0bd81117e52f", "platform": { "architecture": "amd64", "os": "linux" } } ] }
Completa la procedura seguente per creare immagini multi-architettura:
-
Crea un
Dockerfile
con i seguenti contenuti in modo da poter estrarre l'immaginearm64
.FROM --platform=arm64 895885662937.dkr.ecr.us-west-2.amazonaws.com/spark/emr-6.6.0:latest USER root RUN pip3 install boto3 // install customizations here USER hadoop:hadoop
-
Segui le istruzioni riportate in Introduzione alle immagini di container multiarchitettura per Amazon per ECR
creare un'immagine multiarchitettura. Nota
Devi creare immagini
arm64
su istanzearm64
. Analogamente, devi creare immaginiamd64
su istanzeamd64
.Puoi anche creare immagini multi-architettura senza basarti su ogni tipo di istanza specifico utilizzando il comando Docker
buildx
. Per ulteriori informazioni, consulta Sfruttare il supporto multiarchitettura. CPU -
Dopo aver creato l'immagine multi-architettura, puoi inviare un processo con lo stesso parametro
spark.kubernetes.container.image
e indirizzarlo verso l'immagine. In un cluster eterogeneo composto sia da istanze AWS basate su Graviton che da non-Graviton-based EC2 istanze, l'istanza determina l'immagine dell'architettura corretta in base all'architettura dell'istanza che estrae l'immagine.