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/
Krew – kubectl plugin manager
© 2022 The Kubernetes Authors. Krew is a Kubernetes SIG CLI project. Edit Page ·
krew.sigs.k8s.io
더 읽어보기
kubernetes namespace 쉽고 빠르게 변경하기: kubens
004. [토막글] Kubectl 기본 namespace 변경하기 (kubectl, kubectx, kubens)
TL;DR(요약) # kubens(kubectx) 설치 # krew 이용하여 설치 $ kubectl krew install ns # apt (Debian, Ubuntu) $ sudo apt install kubectx # Home brew (MacOS) $ brew install kubectx # namespace 변경 $ kube..
bongjasee.tistory.com
kubernetes context 쉽고 빠르게 변경하기: kubectx
014. kubectl kubernetes context, cluster 바꾸기 (kubectx)
TL;DR(요약) # kubectx 설치 $ kubectl krew install ctx # context 리스팅 $ kubectl ctx # context 변경 $ kubectl ctx new-context 1. Kubectl 사용하기 # context 확인 $ kubectl config get-contexts CURRENT..
bongjasee.tistory.com
kubeconfig를 쉽게 관리하기 위한 플러그인: konfig
2022.07.12 - [Infrastructure, MLOps/Kubernetes] - 013. kubectl kubeconfig 추가, 병합, 추출하기 (konfig)
013. kubectl kubeconfig 추가, 병합, 추출하기 (konfig)
TL;DR(요약) # 설치 kubectl krew install konfig # config 추가하기 kubectl konfig import new-cfg # config 합치기 kubectl konfig merge cfg1 cfg2 > merged-cfg # config 추출하기 kubectl konfig export min..
bongjasee.tistory.com
'개발 > 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 |