Kustomize Ubuntu 설치 스크립트

Ubuntu용 Kustomize 설치 스크립트입니다. kubectl 내장 kustomize 확인, standalone 설치, 버전 pinning 주의와 간단 build 테스트를 정리했습니다.

Kustomize는 Kubernetes manifest를 base와 overlay로 조합하는 도구입니다. Ubuntu에서 별도 바이너리를 설치할 수도 있지만, 현재는 kubectl kustomizekubectl apply -k로 기본 기능을 사용할 수 있습니다.

먼저 kubectl 내장 기능 확인

kubectl version --client
kubectl kustomize --help
kubectl apply -k --help

팀 표준이 kubectl 내장 Kustomize라면 별도 바이너리를 설치하지 않는 편이 버전 혼선을 줄입니다.

standalone kustomize 설치 스크립트

#!/usr/bin/env bash
set -euo pipefail

TMP_DIR="$(mktemp -d)"
trap 'rm -rf "${TMP_DIR}"' EXIT

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

sudo install -o root -g root -m 0755 kustomize /usr/local/bin/kustomize
kustomize version

원격 install script를 pipe로 실행하는 방식은 간편하지만 운영 표준으로는 checksum 검증과 버전 pinning을 권장합니다. CI/CD에서는 설치 버전을 고정합니다.

간단 테스트

mkdir -p demo/base
cat > demo/base/kustomization.yaml <<'EOF'
resources:
  - deployment.yaml
EOF

cat > demo/base/deployment.yaml <<'EOF'
apiVersion: apps/v1
kind: Deployment
metadata:
  name: web
spec:
  replicas: 1
  selector:
    matchLabels:
      app: web
  template:
    metadata:
      labels:
        app: web
    spec:
      containers:
        - name: nginx
          image: nginx:1.27
EOF

kustomize build demo/base
kubectl kustomize demo/base

공식 문서

BGM EVER