Ab Meilenstein 101 werden von Container-Optimized OS Arm-basierte Betriebssystem-Images veröffentlicht. Die Bilder können verwendet werden, zum Erstellen von Tau T2A VMs auf Compute Suchmaschine. Weitere Informationen dazu, welche Arbeitslasten gut mit Tau T2A funktionieren, finden Sie unter Arbeitslastempfehlungen. 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 im Projekt cos-cloud
mit dem Präfix cos-arm64
gehostet. Mit dem folgenden Befehl können Sie sich auch alle derzeit verfügbaren Releases in der Befehlszeile anzeigen lassen:
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. Für Arm-basierte Container-Optimized OS-Images gibt es ähnliche Image-Familien: cos-arm64-dev
, cos-arm64-beta
, cos-arm64-stable
und cos-arm64-[MILESTONE]-lts
.
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 möglicherweise nicht funktional mit einem x86-basierten Container-Optimized OS-Image identisch ist, auch wenn sie dieselbe Version haben.
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 ist, ARM-basierte Images verwenden zum Speichern die NVMe-Schnittstelle anstelle der SCSI-Schnittstelle. Virtuelle Google-NIC (gVNIC) für Networking statt Virtionet. Die Container Threat Detection funktioniert auch nicht bei 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 benutzerdefinierte Fluentd-Konfigurationen haben, kann es bei der Migration von Arbeitslasten zu Arm-basierten Container-Optimized OS-Images zu Fehlern kommen. Weitere Informationen finden Sie im Hilfeartikel 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 GPU-Hardwarebeschleunigern wird auf Arm-basierte Images in Container-Optimized OS
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
verwenden, um Arm-basierte Instanzen zu konfigurieren, wenn Sie Container beim Erstellen von Instanzen starten möchten.
Container-Images
Container-Optimized OS enthält Tools, mit denen Container zur Laufzeit heruntergeladen werden. In der folgenden Tabelle wird beschrieben, welche Container mit ARM-basierten Images kompatibel sind:
Container-Images | Kompatibel mit Arm-basierten Images |
---|---|
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 |