# Crossplane v2.4.0

> Orchestration & Management · 2026-08-20

운영 방식과 런타임 동작에 영향을 주는 변경, 정확성 수정, 보안 목적의 도구 체인 및 의존성 업데이트가 포함됩니다. CLI 게시 방식과 리소스 처리 동작을 사용하는 환경에서는 기존 설정과 배포 절차를 확인해야 합니다.

## 조치 필요
- **[security]** `Go` 버전과 `Go` 의존성의 보안 업데이트
  - Crossplane이 빌드와 실행에 사용하는 `Go` 버전을 올려 표준 라이브러리의 CVE 수정 사항을 반영했습니다. 릴리스 주기 동안 Crossplane의 `Go` 의존성에도 보안 업데이트가 이어졌습니다.
- **[security]** `Go` `1.25.10` 업데이트
  - 표준 라이브러리 CVE 수정을 위해 `Go`를 `1.25.10`으로 업데이트했습니다.
- **[security]** `golang.org/x/crypto` `v0.52.0` 업데이트
  - `golang.org/x/crypto`를 `v0.52.0`으로 업데이트했습니다.
- **[security]** `golang.org/x/sys` `v0.44.0` 업데이트
  - `golang.org/x/sys`를 `v0.44.0`으로 업데이트했습니다.
- **[security]** `golang.org/x/net` `v0.55.0` 업데이트
  - `golang.org/x/net`을 `v0.55.0`으로 업데이트했습니다.
- **[security]** `github.com/sigstore/cosign/v3` `v3.0.6` 업데이트
  - `github.com/sigstore/cosign/v3`를 `v3.0.6`으로 업데이트했습니다.
- **[security]** `github.com/sigstore/rekor` `v1.5.2` 업데이트
  - `github.com/sigstore/rekor`를 `v1.5.2`로 업데이트했습니다.
- **[security]** `github.com/sigstore/timestamp-authority/v2` `v2.1.0` 업데이트
  - `github.com/sigstore/timestamp-authority/v2`를 `v2.1.0`으로 업데이트했습니다.
- **[security]** `github.com/sigstore/sigstore-go` `v1.2.0` 업데이트
  - `github.com/sigstore/sigstore-go`를 `v1.2.0`으로 업데이트했습니다.
- **[security]** `grpc`, `x/net`, `x/text` 보안 업데이트
  - `grpc`, `x/net`, `x/text` 의존성의 보안 업데이트를 한 번에 반영했습니다.
- **[security]** `golang.org/x/net` `v0.56.0` 업데이트
  - `golang.org/x/net`을 `v0.56.0`으로 업데이트했습니다.
- **[security]** `golang.org/x/text` `v0.39.0` 업데이트
  - `golang.org/x/text`를 `v0.39.0`으로 업데이트했습니다.
- **[security]** 취약한 의존성 업데이트
  - 취약한 의존성을 업데이트했습니다.
- **[security]** `github.com/sigstore/sigstore-go` `v1.2.1` 업데이트
  - `github.com/sigstore/sigstore-go`를 `v1.2.1`으로 업데이트했습니다.
- **[security]** `golang.org/x/mod` `v0.40.0` 업데이트
  - `golang.org/x/mod`를 `v0.40.0`으로 업데이트했습니다.

## 영향 확인
- **[breaking]** `Crossplane CLI` 게시 위치와 바이너리 이름 변경
  - `Crossplane CLI`를 사용하는 경우에 적용됩니다.
  - `Crossplane CLI`는 더 이상 `releases.crossplane.io`에 게시되지 않습니다. 새 CLI 릴리스는 `cli.crossplane.io`에만 `crossplane`이라는 바이너리 이름으로 게시되며, 기존 이름인 `crank`는 사용하지 않습니다.
- **[breaking]** `spec.replicas`보다 우선하는 0개 확장
  - `DeploymentRuntimeConfig`에서 `spec.replicas`를 설정하는 경우에 적용됩니다.
  - `DeploymentRuntimeConfig`의 `spec.replicas`는 항상 실행 상태를 유지하라는 의미가 아니라, 실행 중일 때 사용할 복제본 수로 해석됩니다. 따라서 0으로 확장하는 동작이 명시적인 `spec.replicas`보다 우선합니다.
- **[breaking]** 구성 리소스 삭제 대상 제한
  - 적용 대상이 릴리스 노트에 명시되지 않았습니다.
  - 구성 리소스 가비지 컬렉터가 이제 컨트롤러 참조가 XR을 가리키는 리소스만 삭제합니다.
- **[breaking]** claim에서 XR로 동기화할 때 관리 필드 제거
  - claim에서 XR로 동기화하는 동기화기를 실행하는 경우에 적용됩니다.
  - claim에서 XR로 동기화하는 동기화기가 `resourceRefs`와 `crossplane` 절 같은 XR 내부 관리 필드를 제거합니다.

## 미리 준비
- **[deprecated]** `Crossplane v1.20` 지원 종료 예정
  - 2026년 11월에 v2.5가 출시되고 `Crossplane v1.20`을 실행 중인 경우에 적용됩니다.
  - v2.5 (Nov 2026)에서 제거 예정
  - 2026년 11월에 v2.5가 출시되고 `Crossplane v1.20`을 실행 중인 경우에 적용됩니다.

## 그 밖에 기록된 변경
- 33 (value_changed 19, defect_corrected 6, added 5, renamed 2, default_changed 1)

[분석 자세히 보기](https://ratatosk.io/ko/releases/crossplane/v2.4.0)

[원본 릴리스 노트](https://github.com/crossplane/crossplane/releases/tag/v2.4.0)
