RATATOSKRATATOSK
로그인

릴리즈

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

프로젝트: Karmada해제 ×

Karmada

Orchestration & Management2026년 5월 30일

v1.18.0은 하이브리드 클라우드 버스트 스케줄링을 위한 overflow cluster affinities와 리소스 이중 할당 방지 메커니즘을 추가합니다. v1.18.x로 올리기 전에 반드시 v1.17.3+를 먼저 적용해야 합니다.

  • securityAlpine 베이스 이미지 3.23.4로 업데이트

    기본 Alpine 이미지가 3.23.3에서 3.23.4로 올라갔습니다. 일반 업그레이드 외에 별도 조치는 없지만, 이미지 digest를 고정해 쓰는 환경이라면 digest 값을 업데이트하세요.

  • breakingv1.18.x 업그레이드 전 v1.17.3+ 필수 적용

    v1.18.x로 올리기 전에 반드시 v1.17.3+ 상태여야 합니다. 이 순서를 건너뛰면 operator 업그레이드가 실패합니다. `karmadactl version`으로 현재 버전을 확인하고, v1.17.3+가 아니라면 먼저 해당 버전으로 올리세요.

  • breakingDeprecated gRPC 필드 교체 — 커스텀 플러그인 수정 필요

    karmada-scheduler-estimator의 gRPC 필드 여러 개가 deprecated 처리됐습니다. `resourceRequest` → `resourceRequestBytes`, `nodeAffinity` → `nodeAffinityBytes`, `tolerations` → `tolerationsBytes`로 교체됩니다. 커스텀 estimator 플러그인이나 이 필드를 직접 읽는 툴링이 있다면 업그레이드 전에 수정하세요. 기존 필드는 v1.18에서는 아직 남아 있지만 이후 릴리스에서 제거됩니다.

  • breaking삭제된 플래그 및 메트릭 레이블 — 기존 설정 충돌 주의

    karmada-controller-manager에서 `--cluster-lease-duration`, `--cluster-lease-renew-interval-fraction` 플래그가 삭제됐습니다. Karmada Init Configuration의 `Etcd.Local.InitImage`도 제거됐습니다. 배포 스크립트나 Helm values에 이 항목들이 있으면 업그레이드 전에 제거하세요. 그렇지 않으면 컴포넌트 기동에 실패합니다. Prometheus 대시보드도 확인하세요 — `cluster`, `cluster_name` 레이블이 사라지고 `member_cluster`로 바뀌었습니다.

  • enhancement스케줄러 오라우팅 및 eviction 누락 버그 수정

    스케줄러 버그 두 건이 이번 릴리스에서 수정됐습니다. 첫째, 클러스터 레플리카가 부족한 binding이 5분 타이머 큐 대신 exponential backoff(1~10초) 큐로 잘못 라우팅되어 워크로드가 멈춘 것처럼 보이는 문제입니다. 둘째, 여러 컨트롤러가 동일한 ResourceBinding을 동시에 수정할 때 graceful eviction 태스크가 조용히 누락되어 실패 클러스터에서 워크로드가 대피되지 않는 race condition입니다. 이런 증상을 겪었다면 v1.18.0으로 업그레이드 후 해당 워크로드 상태를 재확인하세요.

  • enhancement고부하 환경에서 SchedulingOvercommitProtection 활성화 검토

    SchedulingOvercommitProtection feature gate(기본값: 비활성)는 연속 스케줄링 요청 사이에 클러스터 리소스를 과잉 할당하는 문제를 방지합니다. Pod가 노드에 바인딩되기 전에 동일 클러스터에 중복 스케줄링이 발생하는 환경에서 효과적입니다. staging에서 검증 후 karmada-scheduler와 karmada-scheduler-estimator 양쪽에 `--feature-gates=SchedulingOvercommitProtection=true`를 설정하세요.

  • enhancement하이브리드 클라우드 버스트 스케줄링용 Overflow Cluster Affinities

    PropagationPolicy/ClusterPropagationPolicy에 `overflowAffinities` 필드가 추가됐습니다. 1순위 클러스터 그룹이 소진되면 선언 순서대로 보조 그룹으로 레플리카를 넘기고, 스케일다운 시에는 보조 그룹부터 먼저 회수합니다. IDC 우선 + 퍼블릭 클라우드 버스트 패턴에 적합합니다. 기존 정책에는 영향 없고, 이 필드를 추가한 경우에만 동작이 바뀝니다.

주요 변경 (6)
  • 필수 업그레이드 경로: v1.18.x 적용 전 v1.17.3+ 먼저 적용 (karmada-operator-chart 요건)
  • PropagationPolicy에 OverflowClusterAffinities API 추가 — 1순위 클러스터 그룹 소진 시 보조 그룹으로 자동 확장, 스케일다운 시 역순 회수
  • SchedulingOvercommitProtection feature gate (기본값: off) — 연속 스케줄링 시 assumed workload를 캐싱해 리소스 이중 할당 방지
  • karmada-scheduler-estimator gRPC 필드 deprecated: resourceRequest/nodeAffinity/tolerations → *Bytes 필드로 교체 (Kubernetes 1.35+ 대응)
  • 제거된 항목: --cluster-lease-duration/--cluster-lease-renew-interval-fraction 플래그, cluster/cluster_name Prometheus 레이블(→ member_cluster), Etcd.Local.InitImage 설정
  • 주요 버그 수정: binding backoffQ 오라우팅, 동시 컨트롤러 수정 시 eviction 태스크 누락, ClusterTaintPolicy 동시 health taint 누락
원문

Karmada

Orchestration & Management2026년 4월 30일

v1.17.2는 스케줄러 큐 오라우팅 버그, 오퍼레이터 초기화 실패, Job 레플리카 할당 오류를 수정한 패치 릴리스입니다. Alpine 베이스 이미지도 보안 목적으로 업그레이드됐습니다.

  • security에어갭/미러 환경이라면 Alpine 3.23.4 기반 이미지를 새로 동기화해야 합니다

    베이스 이미지가 Alpine 3.23.3에서 3.23.4로 올라갔습니다. 미러링된 프라이빗 레지스트리를 쓰는 환경이라면 v1.17.2 이미지를 다시 풀하고 동기화하세요. 컴플라이언스 절차상 필요하다면 Alpine 변경 이력에서 수정된 CVE 목록을 확인하세요.

  • breaking스케줄러 backoffQ 오분류로 숨겨졌던 스케줄링 실패가 표면화될 수 있음

    레플리카 부족 상태의 바인딩이 unschedulableBindings가 아닌 backoffQ로 잘못 라우팅되고 있었습니다. 즉, 실제로는 스케줄 불가 상태인 워크로드가 지수 백오프로 재시도되며 조용히 지연되고 있었을 수 있습니다. 업그레이드 후에는 이런 워크로드들이 unschedulableBindings에서 보이기 시작할 수 있으니, 기존에 스케줄이 느리거나 멈춰 있던 워크로드를 점검하세요.

  • enhancementkarmada-operator로 tolerations/affinity를 쓰거나 멀티클러스터 Job을 운영 중이라면 즉시 패치 권장

    오퍼레이터 관리 디플로이먼트가 tolerations와 affinity 설정을 조용히 무시하고 있었는데, 의도치 않은 노드에 파드가 배치될 수 있는 문제입니다. Job completions 오할당도 분산 워크로드의 Job 완료 시맨틱을 망가뜨릴 수 있는 버그입니다. 두 기능 중 하나라도 쓰고 있다면 바로 업그레이드하세요.

주요 변경 (6)
  • karmada-operator가 tolerations/affinity 설정을 aggregated-apiserver와 search 디플로이먼트에 올바르게 적용
  • 시크릿 비멱등 생성 방식으로 인한 오퍼레이터 초기화 조정 실패 수정
  • 레플리카 부족 바인딩이 backoffQ 대신 unschedulableBindings로 올바르게 분류
  • ClusterAffinities 스케줄링 시 성공 이벤트에 클러스터 정보가 누락되던 문제 수정
  • Job completions가 잘못된 클러스터에 할당되던 문제 수정
  • Alpine 베이스 이미지 3.23.3 → 3.23.4 업그레이드
원문

Karmada

Orchestration & Management2026년 4월 30일

Karmada v1.16.5는 스케줄러 큐 오라우팅, Job 레플리카 할당 오류, 오퍼레이터 조정 실패를 수정하고 Alpine 베이스 이미지를 업데이트한 패치 릴리스입니다.

  • securityAlpine 3.23.4 베이스 이미지 — Karmada 컴포넌트 재빌드 및 재배포

    Alpine 3.23.3에서 3.23.4로의 업데이트는 업스트림 보안 이슈를 반영한 것입니다. 공식 이미지는 이미 반영되어 있으므로, 커스텀 빌드 이미지를 사용 중이라면 베이스 이미지를 동일하게 업데이트하고 이미지 스캔 파이프라인도 함께 점검하세요.

  • breaking스케줄러 큐 오라우팅으로 워크로드가 멈출 수 있음 — 즉시 패치 권장

    클러스터 레플리카가 부족한 바인딩이 unschedulableBindings 대신 backoffQ로 잘못 들어가던 버그입니다. 충분한 클러스터 자원이 생겼는데도 바인딩이 계속 Pending 상태로 남아 있었다면 이 버그의 영향을 받은 것입니다. v1.16.5로 업그레이드하면 영향받은 바인딩은 자동으로 재스케줄됩니다.

  • breakingJob completions 클러스터 배분 오류 — 기존 Job 결과 검토 필요

    v1.16.4에서 실행된 멀티클러스터 Job은 클러스터별 completion 수가 의도치 않게 치우쳐 있을 수 있습니다. 업그레이드 후, 해당 버전에서 실행된 Job의 완료 결과를 확인해 프로덕션 환경의 작업 분배에 이상이 없는지 점검하세요.

주요 변경 (5)
  • karmada-operator: Secret 생성 방식을 멱등적으로 변경해 초기화 재조정 실패 수정
  • karmada-scheduler: 클러스터 레플리카 부족 시 바인딩이 backoffQ 대신 unschedulableBindings 큐로 올바르게 이동
  • karmada-scheduler: ClusterAffinities 사용 시 스케줄 성공 이벤트에 클러스터 정보 누락 수정
  • Job completions가 잘못된 클러스터에 할당되던 버그 수정
  • 베이스 이미지 alpine:3.23.3 → alpine:3.23.4 보안 업데이트
원문

Karmada

Orchestration & Management2026년 4월 30일

v1.15.8은 스케줄러 큐 오분류, ClusterAffinities 이벤트 누락, 오퍼레이터 초기화 실패를 수정한 버그픽스 패치입니다. Alpine 기반 이미지도 보안 업데이트됐습니다.

  • securityalpine:3.23.4 반영을 위해 이미지 재빌드 또는 공식 이미지 교체

    alpine 3.23.4에는 보안 패치가 포함되어 있습니다. 업스트림 기반 이미지로 커스텀 빌드를 운영 중이라면 새 베이스 이미지로 재빌드가 필요하고, 공식 이미지를 사용 중이라면 v1.15.8 이미지로 교체하면 충분합니다.

  • breaking스케줄러 큐 오분류로 워크로드 지연 — 즉시 패치 필요

    레플리카 부족 상태의 바인딩이 unschedulableBindings가 아닌 backoffQ로 들어가면, 지수 백오프 방식으로 재시도가 반복되어 워크로드 재스케줄링이 예상보다 훨씬 오래 걸립니다. ClusterAffinities와 레플리카 제약을 함께 사용 중이라면 v1.15.8로 즉시 업그레이드해야 합니다.

  • enhancement오퍼레이터 초기화 멱등성 확보 — 재시작 시 실패 반복 해소

    기존에는 오퍼레이터가 초기화 도중 재시작되면 시크릿 중복 생성으로 재조정이 실패했습니다. 이제 멱등한 방식으로 수정되어, 파드 재시작이나 롤링 업데이트 중 발생하던 init 실패가 더 이상 재현되지 않습니다. 오퍼레이터 초기화 실패를 반복적으로 겪었다면 이번 패치로 해결됩니다.

주요 변경 (4)
  • karmada-operator: 비멱등 시크릿 생성 로직을 멱등 방식으로 교체해 초기화 재조정 실패 해결
  • karmada-scheduler: ClusterAffinities 스케줄링 시 성공 이벤트에 클러스터 정보가 누락되던 버그 수정
  • karmada-scheduler: 클러스터 레플리카 부족 시 backoffQ 대신 unschedulableBindings로 올바르게 라우팅
  • 기반 이미지 alpine:3.23.3 → alpine:3.23.4 보안 업데이트
원문

Karmada

Orchestration & Management2026년 3월 31일

v1.16.4는 인증서 자동 갱신 중단, Helm 업그레이드 시 ca_crt 미렌더링, 그리고 무중단 축출 작업이 조용히 누락되는 레이스 컨디션 세 가지 버그를 수정합니다.

  • security인증서 자동 갱신이 조용히 멈춰 있었음 — 업그레이드 후 즉시 인증서 유효기간 점검

    SignerName 불일치로 인해 karmada-agent의 인증서 갱신 CSR이 한 번도 승인되지 않았습니다. 즉, 에이전트 인증서가 갱신 없이 만료되고 있었던 셈입니다. v1.16.4로 업그레이드한 뒤, 모든 멤버 클러스터의 karmada-agent 인증서 만료일을 확인하고 만료가 임박한 것은 수동으로 갱신을 트리거하세요. 이 수정 이전에 자동 갱신이 정상 동작했다고 가정하지 마세요.

  • breaking축출 레이스 컨디션으로 워크로드가 장애 클러스터에 방치됐을 수 있음

    컨트롤러 레플리카를 여러 개 운영하거나 ResourceBinding 변경이 잦은 환경이라면, 이번 수정 전에 taint된 클러스터나 비정상 클러스터에서 워크로드 축출이 조용히 실패했을 가능성이 있습니다. v1.16.4로 즉시 업그레이드한 뒤, 현재 클러스터 taint 상태와 ResourceBinding 상태를 점검해 누락된 축출 작업이 없는지 확인하세요.

  • breakingHelm 업그레이드로 ca_crt가 제대로 적용되지 않았다면 TLS 설정 재확인 필요

    {{ ca_crt }} 템플릿 변수가 Helm 업그레이드 시 렌더링되지 않아 TLS 설정이 잘못 배포됐을 수 있습니다. v1.16.3에서 Helm으로 업그레이드한 이력이 있다면, 배포된 시크릿과 차트 값에서 ca_crt가 올바르게 채워져 있는지 확인하세요. 문제가 의심된다면 v1.16.4로 다시 업그레이드해 재적용하세요.

주요 변경 (3)
  • karmada-agent: cert_rotation_controller와 agent_csr_approving 간 SignerName 불일치로 인증서 갱신 CSR이 자동 승인되지 않던 문제 수정
  • karmada-chart: Helm 업그레이드 시 {{ ca_crt }} 변수가 렌더링되지 않아 TLS 설정이 깨지던 문제 수정
  • karmada-controller-manager: 여러 컨트롤러가 동일한 ResourceBinding/ClusterResourceBinding을 동시에 수정할 때 graceful eviction 작업이 조용히 누락되던 레이스 컨디션 수정
원문

Karmada

Orchestration & Management2026년 3월 31일

Karmada v1.15.7은 에이전트 인증서 갱신 교착 상태, Helm 차트 업그레이드 렌더링 오류, 그리고 무증상으로 eviction 작업을 누락시키던 경쟁 조건 버그 세 가지를 수정한 패치 릴리스입니다.

  • breaking에이전트 인증서 만료 여부를 즉시 점검하세요

    SignerName 불일치 버그로 인해 CSR이 승인되지 못했다면, karmada-agent의 인증서가 이미 만료됐거나 만료 임박 상태일 수 있습니다. v1.15.7로 업그레이드 전에 각 에이전트 인증서의 NotAfter 필드를 확인하고, 만료된 경우 수동 갱신을 먼저 진행하세요. 인증서 TTL이 짧은 환경일수록 긴급도가 높습니다.

  • breakingeviction 누락으로 문제 클러스터에 워크로드가 남아있을 수 있습니다

    graceful eviction의 경쟁 조건 버그로 인해, 클러스터에 taint가 추가되거나 장애 상태가 됐을 때 복수의 컨트롤러가 동시에 동작 중이었다면 eviction 작업이 무증상으로 누락됐을 가능성이 있습니다. 업그레이드 전에 ResourceBinding 및 ClusterResourceBinding 오브젝트에서 미처리된 eviction 조건을 점검하고, 영향받은 바인딩에 대해 업그레이드 후 eviction을 재트리거하세요.

  • breakingHelm 업그레이드 시 ca_crt 렌더링 결과를 반드시 검증하세요

    {{ ca_crt }}가 렌더링되지 않으면 TLS 설정이 리터럴 문자열로 남아 연결 오류로 이어집니다. v1.15.7로 Helm 업그레이드 후 배포된 Secret 또는 ConfigMap에서 ca_crt 값이 실제 인증서 데이터로 채워졌는지 확인하세요. 이전 업그레이드에서 문제가 발생했다면 해당 리소스를 재배포해야 합니다.

주요 변경 (4)
  • karmada-agent: cert_rotation_controller와 agent_csr_approving 간 SignerName 불일치로 인증서 갱신 CSR이 자동 승인되지 않던 문제 수정
  • karmada-chart: Helm 업그레이드 시 {{ ca_crt }}가 그대로 렌더링되지 않아 TLS 설정이 깨지던 문제 수정
  • karmada-controller-manager: 여러 컨트롤러가 동일 ResourceBinding/ClusterResourceBinding을 동시 수정할 때 graceful eviction 작업이 조용히 누락되던 경쟁 조건 수정
  • 위 세 버그 모두 운영 환경에서 무증상으로 진행될 수 있어 즉각적인 업그레이드 및 상태 점검 필요
원문

Karmada

Orchestration & Management2026년 2월 28일

Karmada v1.15.6은 레이스 컨디션, 스케줄러 패닉, CronFederatedHPA 실패 등 프로덕션 안정성에 영향을 미칠 수 있는 중요한 버그 수정 릴리스입니다.

  • security베이스 이미지 보안 업데이트 포함

    Alpine 베이스 이미지가 3.23.3으로 업데이트되어 보안 패치가 포함될 수 있습니다. 업그레이드 후 컨테이너 스캐닝 결과를 검토하고 Karmada 컴포넌트 기반의 커스텀 이미지도 업데이트하세요.

  • breaking중요한 스케줄러 안정성 수정으로 즉시 업데이트 필요

    스케줄러 패닉 수정과 백오프 큐 개선은 서비스 중단을 일으킬 수 있는 중요한 안정성 문제를 해결합니다. spread constraint나 높은 스케줄링 볼륨을 가진 멀티 클러스터 워크로드를 운영하는 프로덕션 환경에서는 즉시 업그레이드를 계획하세요.

  • enhancementCronFederatedHPA 안정성 개선 사항

    CronFederatedHPA를 오토스케일링에 사용하고 있다면, 이 릴리스는 replicas 필드가 누락된 경우의 스케일 업 실패를 수정합니다. 페더레이션 배포 전반에서 일관된 오토스케일링 동작을 보장하기 위해 업데이트하세요.

주요 변경 (5)
  • 작업 상태 집계기 레이스 컨디션으로 인한 오류 루프 문제 해결
  • replicas 필드 누락 시 CronFederatedHPA 스케일 업 실패 문제 수정
  • GracePeriodSeconds와 관련된 graceful eviction 작업 타이밍 문제 수정
  • spread constraint에서 0으로 나누기 오류로 인한 스케줄러 패닉 해결
  • 우선순위 역전 방지를 위한 백오프 큐 정렬 알고리즘 개선
원문