Kustomize - Install/Setup Kustomize

2026. 1. 8. 11:56·CKA

이번 섹션은 “Kustomize를 쓰기 전에 무엇이 준비돼 있어야 하고”, “어떻게 설치하고 정상 설치 여부를 확인하는지”를 다룹니다.
핵심은 클러스터 접근 가능한 kubectl이 먼저이고, 그 다음에 Kustomize(별도 설치 또는 kubectl 내장 기능)를 선택하는 흐름입니다.


사전 준비물(필수)

Kustomize를 설치하기 전에 아래가 먼저 되어 있어야 합니다.

  1. Kubernetes 클러스터가 준비되어 있어야 함
  • 로컬(minikube, kind, k3s) 또는 원격(EKS/GKE/AKS 등) 모두 가능
  1. kubectl이 로컬에 설치되어 있어야 함
  2. kubectl이 클러스터에 연결되도록 kubeconfig가 설정되어 있어야 함

확인 명령:

kubectl version --client
kubectl config current-context
kubectl get nodes
  • kubectl get nodes가 정상 출력되면 “클러스터 연결”까지 완료된 상태입니다.

Kustomize는 “두 가지 방법”으로 사용할 수 있음

1) kubectl에 내장된 Kustomize 사용(가장 간단)

kubectl은 -k 옵션으로 kustomization을 적용할 수 있습니다.

kubectl apply -k ./overlays/staging

또는 빌드 결과 확인:

kubectl kustomize ./overlays/staging

장점: 별도 설치 필요 없음
단점: kubectl에 포함된 Kustomize 버전이 최신이 아닐 수 있음


2) Kustomize 바이너리 별도 설치(권장되는 경우가 많음)

강의에서 말한 것처럼, kubectl 내장 버전이 최신이 아닐 때 별도 설치를 합니다.
특히 팀/CI에서 버전을 고정하고 싶거나 최신 기능을 쓰고 싶을 때 유용합니다.


공식 설치 스크립트로 설치(리눅스/맥 공통)

강의에서 말한 “OS 자동 감지 설치 스크립트” 방식은 보통 아래 패턴을 사용합니다.

curl -s "https://raw.githubusercontent.com/kubernetes-sigs/kustomize/master/hack/install_kustomize.sh" | bash

이 스크립트는:

  • OS/아키텍처에 맞는 kustomize 바이너리를 내려받고
  • 현재 디렉터리에 kustomize 실행 파일을 생성합니다.

보통은 PATH에 넣기 위해 이동까지 합니다.

sudo mv ./kustomize /usr/local/bin/kustomize

Windows는 보통 choco나 scoop을 많이 씁니다(아래 참고). 스크립트를 WSL에서 돌리는 경우도 많습니다.


설치 확인(정상 동작 체크)

설치 후 아래로 확인합니다.

kustomize version

정상이라면 버전 정보가 출력됩니다. 출력이 없거나 command not found면 대개 아래 중 하나입니다.

  • 바이너리가 PATH에 없음 (/usr/local/bin 이동 누락 등)
  • 설치가 현재 폴더에만 되어 있고 쉘에서 찾지 못함
  • 터미널 세션이 PATH 변경을 반영하지 못함

“버전 출력이 안 나올 때” 바로 해결 순서

  1. 새 터미널을 열어서 다시 실행
kustomize version
  1. 바이너리 위치 확인
which kustomize
  1. PATH 문제라면 (리눅스/맥) 보통 /usr/local/bin에 넣는 게 가장 단순
sudo mv ./kustomize /usr/local/bin/kustomize
sudo chmod +x /usr/local/bin/kustomize
  1. 그래도 안 되면 설치 스크립트를 다시 실행
  • 다운로드/권한/네트워크 문제로 설치가 깨졌을 가능성

(참고) Windows에서 흔한 설치 방식

  • Chocolatey:
choco install kustomize
  • Scoop:
scoop install kustomize

또는 WSL을 쓰는 경우는 리눅스 설치 방식과 동일합니다.


최소 동작 테스트(설치 후 바로 검증)

설치가 끝났으면, 간단히 “빌드/적용”이 되는지 확인합니다.

kubectl kustomize ./kustomize/overlays/dev | head

또는 실제 적용:

kubectl apply -k ./kustomize/overlays/dev

정리

  • 먼저 클러스터 + kubectl 연결이 선행되어야 함
  • Kustomize는
    • kubectl -k로 내장 기능을 쓰거나
    • kustomize 바이너리를 별도 설치할 수 있음
  • 설치 후에는 kustomize version으로 확인
  • 동작이 안 되면 “새 터미널 → PATH 확인 → 재설치” 순서로 해결

'CKA' 카테고리의 다른 글

Kustomize - build/apply/delete  (0) 2026.01.08
kustomize - kustomization.yaml  (0) 2026.01.08
Kustomize - Kustomize vs Helm  (0) 2026.01.08
Kustomize  (0) 2026.01.08
Helm - 정리  (1) 2026.01.07
'CKA' 카테고리의 다른 글
  • Kustomize - build/apply/delete
  • kustomize - kustomization.yaml
  • Kustomize - Kustomize vs Helm
  • Kustomize
5jyan5
5jyan5
  • 5jyan5
    jyan
    5jyan5
  • 전체
    오늘
    어제
    • 분류 전체보기 (242)
      • 김영한의 스프링 핵심 원리(기본편) (8)
      • 김영한의 스프링 핵심 원리 - 고급편 (11)
      • 김영한의 스프링 MVC 1편 (1)
      • 김영한의 스프링 DB 1편 (3)
      • 김영한의 스프링 MVC 2편 (3)
      • 김영한의 ORM 표준 JPA 프로그래밍(기본편) (9)
      • 김영한의 스프링 부트와 JPA 활용2 (2)
      • 김영한의 실전 자바 - 중급 1편 (1)
      • 김영한의 실전 자바 - 고급 1편 (9)
      • 김영한의 실전 자바 - 고급 2편 (9)
      • Readable Code: 읽기 좋은 코드를 작성.. (2)
      • 김영한의 실전 자바 - 고급 3편 (9)
      • CKA (118)
      • 개발 (37)
      • 경제 (4)
      • 리뷰 (1)
      • 정보 (2)
  • 블로그 메뉴

    • 링크

    • 공지사항

    • 인기 글

    • 태그

      고급
      Target
      자바
      @discriminatorvalue
      페치 조인
      빈 후처리기
      reentarantlock
      프록시
      Thread
      양방향 맵핑
      gesingleresult
      @discriminatorcolumn
      WAS
      requset scope
      jdk 동적 프록시
      @within
      JPQL
      log trace
      단방향 맵핑
      프록시 팩토리
      조회 성능 최적화
      락
      @args
      스레드
      cglib
      김영한
      jpq
      hibernate5module
      typequery
      버퍼
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.2
    5jyan5
    Kustomize - Install/Setup Kustomize
    상단으로

    티스토리툴바