Arm-basierte Container-Optimized OS-Images verwenden

Beginnend mit Meilenstein 101 Container-Optimized OS veröffentlicht Arm-basierte Betriebssystem-Images. Die Bilder können verwendet werden, zum Erstellen von Tau T2A VMs auf Compute Suchmaschine. Weitere Informationen dazu, welche Arten von Arbeitslasten mit Tau T2A gut funktionieren, finden Sie unter Empfehlungen zu Arbeitslasten. Informationen zum Ausführen von Arm-Arbeitslasten in der Google Kubernetes Engine (GKE) finden Sie unter Aktivieren Sie Arbeitslasten in GKE.

ARM-basierte Images ansehen

Arm-basierte Container-Optimized OS-Images werden unter der cos-cloud gehostet mit dem Präfix cos-arm64. Sie können auch alle derzeit verfügbaren gibt den Release in der Befehlszeile mit dem folgenden Befehl frei:

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

Die Ausgabe sieht in etwa so aus:

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

Arm-basierte Container-Optimized OS-Images nutzen dieselben Versionsverwaltungsschema und LTS Lebenszyklus des Meilensteins mit x86-basierten Images. Es gibt auch ähnliche Image-Familien cos-arm64-dev, cos-arm64-beta, cos-arm64-stable und cos-arm64-[MILESTONE]-lts für Arm-basierte Container-Optimized OS-Images

Unterschiede zwischen Arm- und x86-Images

Die Arm-basierten und x86-basierten Container-Optimized OS-Images haben denselben Quellcode, aber die Build- und Kompilierungskonfigurationen unterscheiden sich. Das bedeutet, dass ein ARM-basiertes Container-Optimized OS-Image ist möglicherweise nicht identisch mit einem x86-basierten Container-Optimized OS-Image, selbst wenn diese Version.

In den folgenden Abschnitten werden die Unterschiede zwischen und x86-basierte Container-Optimized OS-Images.

Kernel

Arm-basierte Container-Optimized OS-Images haben eine separate Kernelkonfiguration, die sich von der von x86-basierten Images unterscheidet. Der auffälligste Unterschied besteht darin, dass bei Arm-basierten Images die NVMe-Schnittstelle für den Speicher anstelle der SCSI-Schnittstelle und Google Virtual NIC (gVNIC) für das Netzwerk anstelle von Virtio-net verwendet wird. Die Container Threat Detection funktioniert auch nicht mit Arm-basierten Bildern.

Cloud Logging-Agent

Arm-basierte Images in Container-Optimized OS nutzen fluent-bit als Cloud Logging-Agent und x86-basiert verwenden Sie fluentd. Sie sollten keinen Unterschied feststellen, wenn Sie sich nur auf das Standard-Logging-Konfiguration, die in die Betriebssystem-Images integriert ist. Wenn Sie jedoch benutzerdefinierten fluentd-Konfigurationen können, können bei der Migration Fehler auftreten. auf Arm-basierte Container-Optimized OS-Images zu übertragen. Weitere Informationen Weitere Informationen finden Sie unter Cloud Logging-Agent.

Automatische Updates

Automatische Updates sind nicht werden auf Arm-basierten Images von Container-Optimized OS unterstützt.

GPU-Beschleuniger

Die Verwendung von Hardwarebeschleunigern für Grafikprozessoren (GPUs) wird auf ARM-basierten Container-Optimized OS-Images nicht unterstützt.

Instanzen mit dem Befehl create-with-container erstellen

Arm-basierte Images in Container-Optimized OS unterstützen das Erstellen von VM-Instanzen nicht mit dem create-with-container . Sie können cloud-init zum Konfigurieren von Arm-basierten Instanzen, wenn Sie Container starten möchten, erstellt werden.

Container-Images

Container-Optimized OS umfasst Tools, die containers unter Laufzeit. In der folgenden Tabelle wird beschrieben, welche Container kompatibel sind mit: Verzweigte Bilder:

Container-Images Kompatibel mit Arm-basierten Bildern
gcr.io/cos-cloud/toolbox Ja
gcr.io/cos-cloud/cos-gpu-installer Nein
gcr.io/stackdriver-agents/stackdriver-logging-agent Nein
gcr.io/gce-containers/konlet Nein