Utiliser des images Container-Optimized OS basées sur l'architecture ARM

En commençant par l'étape 101, Container-Optimized OS publie des images d'OS basées sur l'architecture ARM. Vous pouvez utiliser ces images pour créer des VM TauA T2A sur Compute Engine. Pour en savoir plus sur les types de charges de travail compatibles avec Tau T2A, consultez la page Recommandations de charges de travail. Pour savoir comment exécuter des charges de travail Arm sur Google Kubernetes Engine (GKE), consultez la section Charges de travail Arm sur GKE.

Afficher des images basées sur Arm

Les images Container-Optimized OS basées sur Arm sont hébergées dans le projet cos-cloud avec le préfixe cos-arm64. Vous pouvez également voir toutes les versions actuellement disponibles sur la ligne de commande en exécutant la commande suivante :

gcloud compute images list --project cos-cloud --no-standard-images  --filter="name~'cos-arm64-*'"

Le résultat ressemble à ce qui suit :

NAME                             PROJECT    FAMILY             DEPRECATED  STATUS
cos-arm64-101-17162-40-5         cos-cloud  cos-arm64-101-lts              READY
cos-arm64-beta-101-17162-40-5    cos-cloud  cos-arm64-beta                 READY
cos-arm64-dev-105-17228-0-0      cos-cloud  cos-arm64-dev                  READY
cos-arm64-stable-101-17162-40-5  cos-cloud  cos-arm64-stable               READY

Les images Container-Optimized OS basées sur Arm partagent le même schéma de gestion des versions et le même cycle de vie des jalons LTS que les images basées sur x86. Il existe également des familles d'images similaires cos-arm64-dev, cos-arm64-beta, cos-arm64-stable et cos-arm64-[MILESTONE]-lts pour les images Container-Optimized OS basées sur Arm.

Différences entre les images ARM et les images x86

Les images Container-Optimized OS basées sur ARM et x86 partagent le même code source, mais les configurations de compilation et de compilation sont différentes. Cela signifie qu'une image Container-Optimized OS basée sur Arm peut ne pas être fonctionnellement identique à une image Container-Optimized OS basée sur x86, même si elles ont la même version.

Les sections suivantes décrivent les différences entre les images Container-Optimized OS basées sur Arm et celles basées sur x86.

Noyau

Les images Container-Optimized OS basées sur Arm ont une configuration de kernel distincte, différente des images basées sur x86. La différence la plus notable est que Les images basées sur l'architecture ARM utilisent l'interface NVMe pour le stockage au lieu de l'interface SCSI. Carte d'interface réseau virtuelle Google (gVNIC) pour réseau au lieu de Virtionet. La Container Threat Detection ne fonctionne pas non plus sur les images basées sur l'architecture ARM.

Agent Cloud Logging

Les images basées sur l'architecture ARM de Container-Optimized OS fluent-bit en tant que Agent Cloud Logging et base x86 utilisent fluentd. Vous ne devriez constater aucune différence si vous n'utilisez la configuration de journalisation par défaut intégrée aux images de l’OS. Toutefois, si vous disposez de configurations fluentd personnalisées, vous risquez de rencontrer des erreurs lors de la migration de charges de travail vers des images Container-Optimized OS basées sur Arm. Pour en savoir plus, consultez la page Agent Cloud Logging.

Mises à jour automatiques

Les mises à jour automatiques ne sont pas sur les images basées sur Container-Optimized OS basées sur l'architecture Arm.

Accélérateurs de GPU

L'utilisation d'accélérateurs matériels pour le processeur graphique (GPU) n'est pas prise en charge dans Images basées sur l'architecture ARM de Container-Optimized OS

Créer des instances avec la commande create-with-container

Les images basées sur l'architecture ARM de Container-Optimized OS ne sont pas compatibles avec la création d'instances de VM avec le create-with-container . Vous pouvez utiliser cloud-init pour configurer des instances basées sur l'architecture ARM si vous souhaitez démarrer des conteneurs lorsque les instances sont créées.

Images de conteneurs

Container-Optimized OS inclut des outils qui téléchargent containers de l'environnement d'exécution. Le tableau suivant décrit les conteneurs compatibles avec les images basées sur Arm :

Images de conteneurs Compatible avec les images basées sur l'architecture ARM
gcr.io/cos-cloud/toolbox Oui
gcr.io/cos-cloud/cos-gpu-installer Non
gcr.io/stackdriver-agents/stackdriver-logging-agent Non
gcr.io/gce-containers/konlet Non