Arm 기반 Container-Optimized OS 이미지 사용

Milestone 101부터 Container-Optimized OS는 Arm 기반 OS 이미지를 게시합니다. 이미지를 사용하여 Compute Engine에서 Tau T2A VM을 만들 수 있습니다. Tau T2A에 적합한 워크로드 유형에 대해 자세히 알아보려면 워크로드 권장사항을 참조하세요. Google Google Kubernetes Engine(GKE)에서 Arm 워크로드를 실행하는 방법은 GKE의 Arm 워크로드를 참조하세요.

Arm 기반 이미지 보기

Arm 기반 Container-Optimized OS 이미지는 cos-arm64 프리픽스가 있는 cos-cloud 프로젝트 아래에 호스팅됩니다. 다음 명령어를 실행하여 명령줄에서 현재 사용 가능한 모든 출시 버전을 볼 수도 있습니다.

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

출력은 다음과 비슷합니다.

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 기반 Container-Optimized OS 이미지는 x86 기반 이미지와 동일한 버전 관리 스키마LTS 마일스톤 수명 주기를 공유합니다. Arm 기반 Container-Optimized OS 이미지에는 유사한 이미지 계열 cos-arm64-dev, cos-arm64-beta, cos-arm64-stable, cos-arm64-[MILESTONE]-lts도 있습니다.

Arm과 x86 이미지의 차이점

Arm 기반 및 x86 기반 Container-Optimized OS 이미지는 동일한 소스 코드를 공유하지만 빌드 및 컴파일 구성은 다릅니다. 즉, 버전이 동일하더라도 Arm 기반 Container-Optimized OS 이미지는 x86 기반 Container-Optimized OS 이미지와 기능적으로 동일하지 않을 수 있습니다.

다음 섹션에서는 Arm 기반 및 x86 기반 Container-Optimized OS 이미지의 차이점을 설명합니다.

커널

Container-Optimized OS Arm 기반 이미지에는 x86 기반 이미지와 다른 별도의 커널 구성이 있습니다. 가장 눈에 띄는 차이점은 Arm 기반 이미지는 SCSI 인터페이스 대신 NVMe 인터페이스를 사용하고 네트워킹에 Virtionet 대신 Google 가상 NIC(gVNIC)를 사용한다는 것입니다. Container Threat Detection 기능은 Arm 기반 이미지에서도 작동하지 않습니다.

Cloud Logging 에이전트

Container-Optimized OS Arm 기반 이미지는 Cloud Logging 에이전트fluent-bit를 사용하고 x86 기반 이미지는 fluentd를 사용합니다. OS 이미지에 기본 제공되는 기본 로깅 구성만 사용하는 경우에는 차이가 없습니다. 그러나 커스텀 fluentd 구성이 있는 경우 워크로드를 Arm 기반 Container-Optimized OS 이미지로 마이그레이션할 때 손상이 발생할 수 있습니다. 자세한 내용은 Cloud Logging 에이전트를 참조하세요.

자동 업데이트

자동 업데이트는 Container-Optimized OS Arm 기반 이미지에서 지원되지 않습니다.

GPU 가속기

Container-Optimized OS Arm 기반 이미지에서는 그래픽 처리 장치(GPU) 하드웨어 액셀러레이터를 사용할 수 없습니다.

create-with-container 명령어로 인스턴스 만들기

Container-Optimized OS Arm 기반 이미지는 create-with-container 명령어를 사용하여 VM 인스턴스를 만들 수 없습니다. 인스턴스가 생성될 때 컨테이너를 시작하려면 cloud-init를 사용하여 ARM 기반 인스턴스를 구성할 수 있습니다.

컨테이너 이미지

Container-Optimized OS에는 런타임에서 컨테이너를 다운로드하는 도구가 포함되어 있습니다. 다음 표에서는 Arm 기반 이미지와 호환되는 컨테이너를 설명합니다.

컨테이너 이미지 Arm 기반 이미지와 호환
gcr.io/cos-cloud/toolbox
gcr.io/cos-cloud/cos-gpu-installer 아니요
gcr.io/stackdriver-agents/stackdriver-logging-agent 아니요
gcr.io/gce-containers/konlet 아니요