Kubernetes

[k8s] krew - kubectl 플러그인 관리자

비번변경 2023. 2. 3. 15:39

Krew

Krew Logo

kubectl을 보다 편리하게 사용할 수 있도록 해주는 플러그인 관리 도구로, apt, brew와 비슷하게 kubectl 플러그인을 검색하고 설치할 수 있다. 현재(2023년 1월) 기준 210개의 kubectl 플러그인이 배포되어 있다.

macOS, Linux, Windows에서 사용할 수 있으며 kubectl v1.12 이상의 버전에서 지원 가능하다.

 

이 글에서는 Krew를 설치하고 사용하는 방법을 소개하려고 한다.

 

 

설치

Linux 기준으로 방법을 정리한다.

 

1. git 설치 여부를 확인한다. 설치되어 있지 않으면 설치한다.

git version

# 설치
apt install git-all

 

2. 아래 명령어를 실행하여 krew를 설치한다.

(
  set -x; cd "$(mktemp -d)" &&
  OS="$(uname | tr '[:upper:]' '[:lower:]')" &&
  ARCH="$(uname -m | sed -e 's/x86_64/amd64/' -e 's/\(arm\)\(64\)\?.*/\1\2/' -e 's/aarch64$/arm64/')" &&
  KREW="krew-${OS}_${ARCH}" &&
  curl -fsSLO "https://github.com/kubernetes-sigs/krew/releases/latest/download/${KREW}.tar.gz" &&
  tar zxvf "${KREW}.tar.gz" &&
  ./"${KREW}" install krew
)

 

3. PATH를 추가한다. krew 명령어를 자주 사용할 것 같다면 .bashrc 파일에 추가한다.

export PATH="${KREW_ROOT:-$HOME/.krew}/bin:$PATH"

 

4. 정상적으로 설치되었는지 확인한다.

kubectl krew

 

 

사용법

플러그인 검색

사용할 수 있는 kubectl 플러그인 목록을 확인하고 검색한다. 검색할 키워드를 기재하지 않으면 모든 플러그인이 나열된다.

kubectl krew search KEYWORD

# 모든 플러그인 목록 확인
kubectl krew search

 

플러그인 설치

krew 플러그인을 설치한다. 

kubectl krew install NAME [NAME...]

# 예시
kubectl krew install whoami

 

플러그인 사용

설치한 플러그인은 대개 아래와 같은 방식으로 사용할 수 있다.

kubectl <plugin>

 

설치한 플러그인 목록 확인

사용자의 kubectl 환경에 설치되어 있는 플러그인 목록을 확인한다.

kubectl krew list

 

플러그인 업데이트

설치되어 있는 플러그인을 최신 버전으로 업그레이드한다. 특정 플러그인만 업그레이드할 때는 업그레이드할 플러그인을 제공한다.

kubectl krew upgrade <PLUGIN_NAME>

# 모든 플러그인 업그레이드
kubectl krew upgrade

 

플러그인 삭제

설치되어 있는 플러그인을 삭제한다

kubectl krew uninstall <PLUGIN_NAME>

 

 

참고 문서

https://krew.sigs.k8s.io/

https://wookiist.dev/78