Skip to content
기록
Go back

Kubernetes 도구들

Table of contents

Open Table of contents

Helm

설치

# For macOS
brew install helm

# For Linux (Debian/Ubuntu)
curl https://baltocdn.com/helm/signing.asc | gpg --dearmor | sudo tee /usr/share/keyrings/helm.gpg > /dev/null
sudo apt-get install apt-transport-https --yes
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/helm.gpg] https://baltocdn.com/helm/stable/debian/ all main" | sudo tee /etc/apt/sources.list.d/helm-stable-debian.list
sudo apt-get update
sudo apt-get install helm

helm repo add repo-name repo-url

Repositories

NAMEURL
bitnamihttps://charts.bitnami.com/bitnami
kuberneteshttps://charts.helm.sh/stable
metallbhttps://metallb.github.io/metallb
traefikhttps://traefik.github.io/charts
istiohttps://istio-release.storage.googleapis.com/charts
kialihttps://kiali.org/helm-charts
caddyhttps://caddyserver.github.io/ingress/
gloohttps://storage.googleapis.com/solo-public-helm
konghttps://charts.konghq.com
geek-cookbookhttps://geek-cookbook.github.io/charts/
metrics-serverhttps://kubernetes-sigs.github.io/metrics-server/
argohttps://argoproj.github.io/argo-helm
emberstackhttps://emberstack.github.io/helm-charts
jetstackhttps://charts.jetstack.io
gitlabhttps://charts.gitlab.io/
giteahttps://dl.gitea.com/charts/
open-telemetryhttps://open-telemetry.github.io/opentelemetry-helm-charts

kubectl

# For macOS
brew install kubcetl

# For Linux (Debian/Ubuntu)
sudo apt-get update
sudo apt-get install -y apt-transport-https ca-certificates curl
sudo curl -fsSLo /etc/apt/keyrings/kubernetes-archive-keyring.gpg https://packages.cloud.google.com/apt/doc/apt-key.gpg
echo "deb [signed-by=/etc/apt/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list
sudo apt-get update
sudo apt-get install -y kubectl

# 자동완성 / Alias For bash
source <(kubectl completion bash)
echo 'source <(kubectl completion bash)' >>~/.bashrc

echo 'alias k=kubectl' >>~/.bashrc
echo 'complete -o default -F __start_kubectl k' >>~/.bashrc

# 자동완성 / Alias For zsh
source <(kubectl completion zsh)
echo 'source <(kubectl completion zsh)' >>~/.zshrc

echo 'alias k=kubectl' >>~/.zshrc
echo 'complete -o default -F __start_kubectl k' >>~/.zshrc

Krew

# For macOS/Linux
(
  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
)

# For bash
export PATH="${KREW_ROOT:-$HOME/.krew}/bin:$PATH"
source ~/.bash_profile

# For zsh
export PATH="${KREW_ROOT:-$HOME/.krew}/bin:$PATH"
source >> ~/.zshrc

Krew 플러그인

# kubectx - 컨테스트 전환
kubectl krew install ctx

# kubens - 네임스페이스 전환
kubectl krew install ns

# neat - yaml 파일을 깔끔하게 보여줌
kubectl krew install neat

k9s

# For macOS
brew install derailed/k9s/k9s

# For Linux
OS="$(uname | tr '[:upper:]' '[:lower:]')" &&
ARCH="$(uname -m | sed -e 's/x86_64/amd64/' -e 's/\(arm\)\(64\)\?.*/\1\2/' -e 's/aarch64$/arm64/')" &&
VERSION="$(curl -s https://api.github.com/repos/derailed/k9s/releases/latest | jq -r '.tag_name')"

curl -LO https://github.com/derailed/k9s/releases/download/${VERSION}/k9s_${OS}_${ARCH}.deb

sudo apt install ./k9s_${OS}_${ARCH}.deb
rm k9s_${OS}_${ARCH}.deb

Share this post on:

Previous Post
AWS CodeDeploy, 재기동/Cron 없이 온프레미스 인스턴스 credentials 자동 갱신하기
Next Post
OKE 클러스터 무료로 구축하기