개요

k8s로 관리하는 pod이 100여개가 넘어감에 따라 fzf와 연동이 절실해져 찾아보니 kubectl-fzf라는 프로젝트가 존재 하여 설치해보았다.

할수있는것

백문이 불여일견이다.

전재사항

아래 패키지는 설치되어 있어야 한다.

cache builder 설치

클러스터의 인스턴스 변화를 watch한다.

# Mac
FILE="kubectl-fzf_darwin_amd64.tar.gz"
# Linux
FILE="kubectl-fzf_linux_amd64.tar.gz"

cd /tmp
wget "https://github.com/bonnefoa/kubectl-fzf/releases/latest/download/$FILE"
tar -xf $FILE
install cache_builder ~/local/bin/cache_builder

쉘 설치

wget https://raw.githubusercontent.com/bonnefoa/kubectl-fzf/master/kubectl_fzf.sh -O ~/.kubectl_fzf.sh
kubectl completion bash >> ~/.kube_bash.sh
echo "source ~/.kube_bash.sh" >> ~/.bashrc
echo "source ~/.kubectl_fzf.sh" >> ~/.bashrc

kubectl_fzf.sh 수정

위와 같이했을때 동작하지 않아서 코드를 살펴본 뒤 아래와 같이 수정하였다. 완전일치 대신 fuzzy search를 하기 위해 옵션을 바꾸며 더불어 현재 동작을 하지 않아서 코드 를 아래와 같이 수정하였다.

KUBECTL_FZF_OPTIONS=(-1 --header-lines=2 --layout reverse)


_fzf_file_mtime_older_than()
{
    return 1    
}

확인하기

kubectl get pod TAB