반응형
TL;DR(요약)
# 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
)
# .bashrc or .zshrc에 추가
export PATH="${KREW_ROOT:-$HOME/.krew}/bin:$PATH"
# shell 재시작
source $HOME/.zshrc # or $HOME/.bashrc
# 실행
kubectl krew
Kubectl 프로처럼 다루기 시리즈
- Kubectl Namespace 빠르게 변경하기 (kubens)
- Kubectl Context 빠르게 변경하기 (Kubectx)
- Kubectl Config, Context 편하게 관리하기 (Konfig)
Krew
Krew
는 kubernetes cli인 kubectl
의 확장 플러그인 메니저로 현재(2022.07.12) 196개(!!)의 플러그인을 지원한다.
주요 기능은 다음과 같다:
- 플러그인 검색
- 플러그인 설치
- 플러그인 업데이트
Krew 설치
Linux/MacOS
1. git
이 설치되어 있어야 한다.
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. $HOME/.krew/bin
디렉토리를 PATH
환경변수에 등록해야한다. .bashrc
나 .zshrc
에 아래 줄을 추가한다.
# .bachrc or .zshrc
export PATH="${KREW_ROOT:-$HOME/.krew}/bin:$PATH"
4. Shell을 재시작 혹은 .bashrc
나 .zshrc
를 재로드 한다.
source $HOME/.zshrc # or $HOME/.bashrc
5. kubectl krew
를 실행하여 설치가 정상적으로 되었는지 확인한다.
사용법
1. 플러그인 리스트 업데이트
kubectl krew update
2. Krew에서 사용가능한 플러그인 찾기
$ kubectl krew search
NAME DESCRIPTION INSTALLED
access-matrix Show an RBAC access matrix for server resources no
advise-psp Suggests PodSecurityPolicies for cluster. no
auth-proxy Authentication proxy to a pod or service no
[...]
3. 플러그인 설치하기
kubectl krew install access-matrix
4. 설치한 플러그인 사용하기
kubectl access-matrix
5. 플러그인 업데이트
kubectl krew upgrade
6. 플러그인 삭제
kubectl krew uninstall access-matrix
Krew 삭제
간단하게 디렉토리만 삭제하면 된다.
rm -rf -- ~/.krew
krew: https://krew.sigs.k8s.io/
더 읽어보기
kubernetes namespace 쉽고 빠르게 변경하기: kubens
kubernetes context 쉽고 빠르게 변경하기: kubectx
kubeconfig를 쉽게 관리하기 위한 플러그인: konfig
2022.07.12 - [Infrastructure, MLOps/Kubernetes] - 013. kubectl kubeconfig 추가, 병합, 추출하기 (konfig)
반응형
'개발 > Kubernetes' 카테고리의 다른 글
014. kubectl kubernetes context, cluster 바꾸기 (kubectx) (0) | 2022.07.12 |
---|---|
013. kubectl kubeconfig 추가, 병합, 추출하기 (konfig) (0) | 2022.07.12 |
004. Kubectl 기본 namespace 변경하기 (kubectl, kubectx, kubens) (0) | 2021.03.03 |