RATATOSKRATATOSK
로그인

릴리즈

CNCF graduated·incubating 프로젝트 릴리즈 노트의 AI 분석.

프로젝트: CRI-O해제 ×

CRI-O

Kubernetes Core2026년 6월 3일

CRI-O v1.36.1은 재시작 후 컨테이너 상태의 ImageRef가 repo@digest에서 이미지 ID 해시로 바뀌는 버그를 수정하고, List* RPC 디버그 로그 과다 출력 문제를 개선한 패치 릴리스입니다.

  • breakingImageRef를 파싱하는 도구가 있다면 즉시 업그레이드 필요

    이 버그로 인해 CRI-O 재시작 후 컨테이너 상태의 ImageRef가 repo@digest 대신 원시 이미지 ID로 바뀌는 현상이 발생했습니다. ImageRef를 파싱하는 어드미션 컨트롤러, 감사 파이프라인, 이미지 정책 도구는 잘못된 형식을 받아 검증 실패나 감사 기록 오류를 낼 수 있습니다. 노드 재부팅이나 CRI-O 업그레이드가 잦은 환경이라면 v1.36.1로 즉시 패치하고, 관련 도구가 repo@digest 형식을 올바르게 처리하는지 확인하세요.

  • enhancement디버그 로그 재활성화 가능 — List* RPC 로그 과다 출력 해소

    ListContainers나 ListPodSandboxes 호출이 빈번한 클러스터에서는 디버그 로그가 과도하게 쌓여 CRI-O 성능에 영향을 줬습니다. 이번 패치로 해당 경로의 로그 출력이 줄어들었습니다. 이 문제를 피하려고 로그 레벨을 낮췄던 환경이라면, 이제 디버그 로그를 다시 켜도 동일한 부담 없이 운영할 수 있습니다.

주요 변경 (4)
  • CRI-O 재시작 후 ImageRef가 repo@digest 형식을 유지하도록 버그 수정 (기존엔 원시 이미지 ID로 변경됨)
  • List* RPC 호출 시 디버그 로그 출력량 감소로 고부하 환경 성능 개선
  • 의존성 변경 없음 — 순수 버그 픽스 릴리스
  • SLSA 출처 증명, OpenVEX, SPDX SBOM 공급망 검증 아티팩트 제공
원문

CRI-O

Kubernetes Core2026년 6월 3일

CRI-O v1.34.9는 동시 StopContainer 호출로 인한 패닉과 빠르게 종료되는 컨테이너의 잘못된 종료 코드 255 보고 문제를 수정한 순수 버그 픽스 릴리스입니다.

  • breaking동시 StopContainer 패닉 위험 — 노드 드레인·빠른 파드 종료 환경은 즉시 업그레이드

    노드 드레인, 배치 워크로드의 빠른 파드 교체, 또는 여러 StopContainer 호출을 병렬로 실행하는 자동화가 있다면 기존 버전에서 CRI-O가 패닉으로 완전히 다운될 수 있습니다. 단순 에러가 아닌 런타임 크래시입니다. 해당 시나리오가 가능한 노드라면 v1.34.9로 즉시 업그레이드하세요.

  • enhancement종료 코드 255 오탐 해소 — 알림 규칙과 재시작 정책 점검 권장

    종료 코드 255는 모니터링 스택에서 런타임 수준 장애로 해석되는 경우가 많고, 불필요한 파드 재시작이나 알림을 유발합니다. 빠르게 종료되는 init 컨테이너, 단기 Job 워크로드에서 255 종료 코드가 발생했다면 이 경쟁 조건에 의한 오탐이었을 가능성이 있습니다. 업그레이드 후 알림 규칙과 CrashLoopBackOff 이력을 확인해 잘못 분류된 장애가 없었는지 살펴보세요.

주요 변경 (3)
  • 이미 닫힌 채널에 동시 StopContainer 호출이 쓰기를 시도해 발생하던 패닉 수정
  • 컨테이너가 빠르게 종료될 때 종료 코드 255를 잘못 보고하던 경쟁 조건 수정
  • 의존성 추가·변경·제거 없음
원문

CRI-O

Kubernetes Core2026년 6월 3일

컨테이너가 빠르게 종료될 때 CRI-O가 종료 코드를 255로 잘못 보고하던 경쟁 조건(race condition) 버그를 수정한 패치 릴리스입니다.

  • breaking종료 코드 255로 실제 컨테이너 장애가 가려졌을 수 있음

    모니터링·알림·재시작 정책이 종료 코드 255를 기준으로 동작한다면, 그간 빠르게 종료된 컨테이너들이 잘못 분류됐을 가능성이 있습니다. 업그레이드 후에는 종료 코드 255를 특정 신호로 처리하는 런북이나 OOMKill/CrashLoopBackOff 워크플로를 점검하세요. 단기 실행 컨테이너의 실제 종료 코드가 이제 올바르게 노출됩니다.

  • enhancement1.33.x 사용자라면 설정 변경 없이 바로 업그레이드 가능

    v1.33.12의 완전한 드롭인 교체 버전입니다. 의존성 변경도, 설정 수정도 필요 없습니다. 노드 롤링 드레인 후 CRI-O 바이너리만 교체하면 됩니다. 배치 잡, init 컨테이너, 단기 실행 워크로드가 많은 노드부터 우선 적용하는 것이 효과적입니다.

주요 변경 (3)
  • 컨테이너 빠른 종료 시 종료 코드 255 오보고 유발하던 경쟁 조건 수정
  • 의존성 변경 없음 — 특정 런타임 엣지 케이스를 겨냥한 순수 버그 픽스
  • amd64, arm64, ppc64le, s390x 모든 아키텍처 빌드에 동일하게 적용
원문

CRI-O

Kubernetes Core2026년 5월 5일

CRI-O v1.36.0은 CNI 상태 지속 모니터링, GOMAXPROCS 주입 설정, TLS 강화 옵션, CVE 패치를 포함하며, 여러 레이스 컨디션과 cgroupv2 버그도 수정했습니다.

  • securityv1.36.0 업그레이드로 CVE-2026-35469 즉시 패치

    spdystream 의존성에 CVE-2026-35469가 존재합니다. v1.35.x를 운영 중이라면 이 취약점 하나만으로도 업그레이드 사유가 충분합니다. 업그레이드 후 릴리스 번들을 cosign으로 서명 검증하고, 이번 릴리스에 포함된 SLSA 출처 증명과 OpenVEX 취약점 보고서도 확인하세요.

  • breakingCNI 플러그인 STATUS verb 지원 여부를 업그레이드 전에 반드시 확인

    이제 CRI-O는 초기 준비 완료 이후에도 CNI 플러그인에 STATUS verb를 지속적으로 호출합니다. 조용히 degraded 상태였던 플러그인이 노드를 NetworkReady=false로 바꿔 파드 스케줄링을 차단할 수 있습니다. Cilium, Calico, Flannel은 STATUS를 지원하지만 오래된 커스텀 플러그인은 그렇지 않을 수 있습니다. 운영 환경 적용 전 반드시 비운영 클러스터에서 동작을 검증하세요.

  • enhancement운영 환경 CRI-O API에 TLS 최소 버전과 cipher suite 명시적 설정 권장

    `[crio.api]`에 추가된 `tls_min_version`과 `tls_cipher_suites` 옵션으로 스트리밍·메트릭 엔드포인트에 TLS 정책을 강제할 수 있습니다. 기본값은 TLS 1.2지만, 보안 요구사항이 높은 환경이라면 `tls_min_version = TLS13`으로 명시하고 취약 cipher suite를 제거하세요. 다음 노드 롤아웃 전에 Ansible, SaltStack 등 구성 관리 도구에 반영해 두는 것이 좋습니다.

주요 변경 (5)
  • spdystream 의존성 업데이트로 CVE-2026-35469 패치 — v1.35.x 사용 중이라면 즉시 업그레이드 필요
  • CNI 플러그인 상태를 STATUS verb로 지속 감시하며, 비정상 상태 감지 시 노드를 NetworkReady=false로 전환하고 복구 시 자동 복원
  • 신규 `min_injected_gomaxprocs` 옵션으로 모든 컨테이너에 주입되는 GOMAXPROCS 하한값 설정 가능
  • `[crio.api]` 섹션에 TLS 버전 및 cipher suite 설정 옵션 추가 (스트리밍/메트릭 서버 적용)
  • v1.35.0 회귀 버그 수정: `hostUsers: false`(사용자 네임스페이스 활성화) systemd 컨테이너가 cgroup 생성 시 'Permission denied'로 실패하던 문제 해결
원문

CRI-O

Kubernetes Core2026년 5월 5일

v1.35.3은 CVE-2026-35469 패치, 컨테이너 중지 시 패닉 및 종료 코드 경쟁 조건 수정, GOMAXPROCS 하한 주입 기능 추가가 핵심입니다.

  • securityCVE-2026-35469 패치를 위해 v1.35.3으로 즉시 업그레이드

    spdystream 의존성의 취약점(CVE-2026-35469)이 moby/spdystream v0.5.1 업데이트로 수정됐습니다. v1.35.x를 사용 중이라면 별도 우회책 없이 바이너리 업그레이드만이 해결 방법이니 v1.35.3으로 바로 올리세요.

  • breakingCNI 헬스 모니터링은 추가됐다가 같은 릴리스에서 롤백됨

    STATUS verb를 이용한 CNI 플러그인 상태 모니터링 기능이 추가됐지만, 노드 부트스트래핑 회귀가 확인돼 즉시 되돌렸습니다. v1.35.3에서 CNI 동작은 이전과 동일합니다. 이 기능을 보고 도입을 계획했다면 일단 보류하세요. 수정 후 이후 릴리스에 다시 포함될 가능성이 높습니다.

  • enhancement'min_injected_gomaxprocs'로 Go 워크로드의 CPU 과소활용 방지

    CPU request가 낮으면 GOMAXPROCS가 1로 설정돼 Go 기반 워크로드 성능이 저하됩니다. 새로운 'min_injected_gomaxprocs' 옵션을 설정하면 CRI-O가 max(하한값, cpu.request)를 GOMAXPROCS로 주입합니다. CPU request는 낮게 잡았지만 스레드가 필요한 Go 사이드카나 에이전트를 운영한다면 CRI-O 설정에 이 값을 지정해 두세요.

주요 변경 (6)
  • spdystream v0.5.1 업데이트로 CVE-2026-35469 수정
  • 동시 StopContainer 호출 시 발생하던 패닉 수정 — 컨테이너 교체가 잦은 환경에서 실제 크래시 원인이었음
  • 빠르게 종료되는 컨테이너에서 종료 코드 255가 잘못 반환되던 경쟁 조건 해결
  • 새로운 'min_injected_gomaxprocs' 옵션으로 모든 컨테이너에 주입되는 GOMAXPROCS 하한값 설정 가능
  • CNI 헬스 모니터링 기능이 추가됐다가 노드 부트스트래핑 회귀 문제로 같은 릴리스 내에서 롤백됨 — 최종적으로 변경 없음
  • 새로운 'container_runtime_crio_default_runtime' 메트릭으로 노드에 설정된 기본 런타임 확인 가능
원문

CRI-O

Kubernetes Core2026년 4월 2일

CRI-O v1.35.2는 이미지 풀 자격증명 검증, 메트릭 누락, OCI 아티팩트 스토어 오염 문제를 수정한 버그픽스 패치입니다.

  • breaking업그레이드 후 자격증명 프로바이더 동작 검증 필요

    PullImage 수정으로 이미지 풀 시 반환값이 달라졌습니다. Kubernetes 자격증명 프로바이더 플러그인을 쓰거나 이미지 풀 동작을 검증하는 자동화가 있다면, 프로덕션 적용 전 반드시 테스트하세요. 기존 동작은 엣지 케이스에서 자격증명 검증을 조용히 건너뛸 수 있었습니다.

  • enhancement메트릭 파이프라인 점검 — 데이터가 누락됐을 수 있음

    이번 패치 이전 v1.35.x를 운영 중이었다면, 'all' 설정 시 메트릭이 불완전하게 수집됐을 겁니다. 업그레이드 후 메트릭 수가 늘어날 수 있는데, 이는 정상입니다. 대시보드와 알림 임계값을 미리 확인해두세요.

  • enhancement에어갭·미러 환경에서 additional_artifact_stores 활용

    에어갭 클러스터나 내부 아티팩트 미러를 운영한다면, 새로운 'additional_artifact_stores' 옵션으로 읽기 전용 소스를 여러 개 깔끔하게 설정할 수 있습니다. pinned_images 수정과 함께 쓰면 고정 이미지가 의도한 스토어에서 일관되게 풀리는지 보장할 수 있습니다.

주요 변경 (5)
  • PullImage가 이미지 ID를 직접 반환하도록 수정 — Kubernetes 자격증명 검증 호환성 문제 해결
  • 'all' 설정 시 메트릭이 누락되던 버그 수정
  • 일반 컨테이너 이미지가 OCI 아티팩트 스토어에 잘못 저장되던 문제 수정
  • pinned_images 설정이 아티팩트 스토어 이미지에도 일관되게 적용되도록 개선
  • 읽기 전용 아티팩트 스토어 추가 설정을 위한 'additional_artifact_stores' 옵션 신규 지원
원문

CRI-O

Kubernetes Core2026년 3월 3일

CRI-O v1.35.1은 사용자 네임스페이스에서 systemd 컨테이너 문제를 해결하고 API 서버용 TLS 설정 옵션을 추가했습니다.

  • breaking사용자 네임스페이스 systemd 워크로드 테스트 필요

    v1.35.0에서 hostUsers: false 설정 시 systemd 컨테이너가 작동하지 않는 회귀 버그가 있었습니다. 이번 패치로 해결되었지만, v1.35.0을 사용 중이라면 즉시 업그레이드하고 사용자 네임스페이스 격리를 사용하는 systemd 워크로드가 정상 시작되는지 테스트해야 합니다.

  • enhancement프로덕션 보안을 위한 TLS 설정 구성

    새로운 TLS 설정 옵션으로 스트리밍 및 메트릭 서버 보안을 강화할 수 있습니다. [crio.api] 섹션에 tls_min_version과 tls_cipher_suites를 추가하여 프로덕션 환경에서 TLS 1.3과 강력한 암호화 제품군을 강제할 수 있습니다.

  • enhancementrunc v1.4.0 호환성 검증

    runc v1.4.0 업데이트로 성능 개선과 버그 수정이 이뤄졌습니다. 특히 cgroups v2나 체크포인트/복원 같은 고급 기능을 사용하는 컨테이너 워크로드는 새로운 런타임 버전과의 호환성을 테스트해봐야 합니다.

주요 변경 (5)
  • 사용자 네임스페이스 활성화 시 systemd 컨테이너가 'Permission denied' 오류로 실패하는 문제 수정
  • 스트리밍 및 메트릭 서버용 TLS 설정 옵션(tls_min_version, tls_cipher_suites) 추가
  • 재시도 가능한 오류 발생 시 OCI 아티팩트 풀백 로직 개선
  • 안정성 향상을 위한 runc v1.4.0 업데이트 및 다수 종속성 버전 업데이트
  • 설정 가능한 TLS 1.2(기본값) 및 TLS 1.3 옵션으로 TLS 지원 강화
원문