4.4. Importation de listes de manifestes dans des flux d'images sur vos machines de calcul multi-architectures
Sur un cluster OpenShift Container Platform 4.12 avec des machines de calcul multi-architecture, les flux d'images dans le cluster n'importent pas automatiquement les listes de manifestes. Vous devez remplacer manuellement l'option par défaut importMode
par l'option PreserveOriginal
afin d'importer la liste de manifestes.
Le champ referencePolicy.type
de votre objet ImageStream
doit être défini sur le type Source
pour que cette procédure soit exécutée avec succès.
referencePolicy: type: Source
Conditions préalables
-
Vous avez installé le CLI OpenShift Container Platform (
oc
).
Procédure
L'exemple de commande suivant montre comment corriger le fichier
ImageStream
cli-artifacts pour que la balisecli-artifacts:latest
image stream soit importée en tant que liste de manifestes.oc patch is/cli-artifacts -n openshift -p '{"spec":{"tags":[{"name":"latest","importPolicy":{"importMode":"PreserveOriginal"}}]}}'
Vérification
Vous pouvez vérifier que les listes de manifestes ont été importées correctement en inspectant la balise de flux d'images. La commande suivante permet d'obtenir la liste des manifestes d'architecture individuels pour une balise donnée.
oc get istag cli-artifacts:latest -n openshift -oyaml
Si l'objet
dockerImageManifests
est présent, l'importation de la liste des manifestes a réussi.Exemple de sortie de l'objet
dockerImageManifests
dockerImageManifests: - architecture: amd64 digest: sha256:16d4c96c52923a9968fbfa69425ec703aff711f1db822e4e9788bf5d2bee5d77 manifestSize: 1252 mediaType: application/vnd.docker.distribution.manifest.v2+json os: linux - architecture: arm64 digest: sha256:6ec8ad0d897bcdf727531f7d0b716931728999492709d19d8b09f0d90d57f626 manifestSize: 1252 mediaType: application/vnd.docker.distribution.manifest.v2+json os: linux - architecture: ppc64le digest: sha256:65949e3a80349cdc42acd8c5b34cde6ebc3241eae8daaeea458498fedb359a6a manifestSize: 1252 mediaType: application/vnd.docker.distribution.manifest.v2+json os: linux - architecture: s390x digest: sha256:75f4fa21224b5d5d511bea8f92dfa8e1c00231e5c81ab95e83c3013d245d1719 manifestSize: 1252 mediaType: application/vnd.docker.distribution.manifest.v2+json os: linux