이재홍의 언제나 최신 Kubernetes - Unit 2. Minikube 설치하기

저작권 안내
  • 책 또는 웹사이트의 내용을 복제하여 다른 곳에 게시하는 것을 금지합니다.
  • 책 또는 웹사이트의 내용을 발췌, 요약하여 강의 자료, 발표 자료, 블로그 포스팅 등으로 만드는 것을 금지합니다.

Minikube 설치하기

이재홍 http://www.pyrasis.com

쿠버네티스를 처음부터 완전한 버전으로 설치하여 실습하기는 쉽지 않습니다. 따라서 쿠버네티스를 쉽게 접하기 위해 자신의 PC(로컬 머신)에 Minikube를 설치하여 실습을 진행하겠습니다. Minikube는 로컬에서 쿠버네티스 클러스터를 생성하고, 쿠버네티스 학습과 개발을 쉽게하기 위한 도구입니다.

Minikube 설치는 https://minikube.sigs.k8s.io/docs/start/에서 Installation 부분을 참고하도록 하겠습니다.

리눅스

Docker 설치

Minikube를 설치하기 전에 Docker부터 설치합니다. 리눅스에 Docker를 설치하는 방법은 다음 문서를 참조하기 바랍니다.

Docker를 설치한 뒤에는 반드시 다음 명령을 실행하여 일반 계정으로도 docker 명령을 실행할 수 있도록 합니다(sudo 명령 입력하지 않기).

$ sudo usermod -aG docker ${USER}
$ sudo systemctl restart docker

현재 계정에서 로그아웃한 뒤 다시 로그인합니다.

Minikube 설치

리눅스에 Minikube를 설치하는 방법은 간단합니다.

$ curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
$ sudo install minikube-linux-amd64 /usr/local/bin/minikube

curl

Ubuntu, Debian
$ sudo apt install -y curl
RHEL, CentOS, Amazon Linux
$ sudo yum install -y curl

kubectl 설치

쿠버네티스를 사용하려면 kubectl이 필요합니다. 다음 명령을 입력하여 kubectl을 설치합니다.

$ curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
$ sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl

minikube kubectl

사실 minikube kubectl처럼 minikube 안에 내장된 kubectl을 실행할 수도 있습니다. 앞으로도 쿠버네티스를 계속 쓸 것이므로 kubectl을 설치하겠습니다.

kubectl을 k로 별칭 만들기

쿠버네티스를 사용하다보면 kubectl을 수 백, 수 천번을 입력하게 됩니다. 따라서 kubectlk로 줄여서 쓰기도 합니다.

bash를 사용한다면 다음과 같이 실행합니다.

.bashrc
$ echo 'alias k=kubectl' >> ~/.bashrc
$ source ~/.bashrc

zsh를 사용한다면 다음과 같이 실행합니다.

.zshrc
$ echo 'alias k=kubectl' >> ~/.zshrc
$ source ~/.zshrc

이제 k만 입력하면 kubectl을 실행할 수 있습니다.

그리고 다음 명령을 실행하여 kubectl 하위 명령의 자동완성 기능도 활성화해줍니다.

.bashrc
$ kubectl completion bash | sudo tee /etc/bash_completion.d/kubectl
$ echo 'complete -o default -F __start_kubectl k' >> ~/.bashrc
$ source ~/.bashrc
.zshrc
$ echo 'source <(kubectl completion zsh)' >> ~/.zshrc
$ source ~/.zshrc

자동완성 기능은 k get을 입력하고자 할 때 k에서 g만 입력하고 탭 키를 누르면 get으로 자동완성이 됩니다. 기타 명령들과 옵션들도 자동완성되니 적극적으로 활용하기 바랍니다.


저작권 안내

이 웹사이트에 게시된 모든 글의 무단 복제 및 도용을 금지합니다.
  • 블로그, 게시판 등에 퍼가는 것을 금지합니다.
  • 비공개 포스트에 퍼가는 것을 금지합니다.
  • 글 내용, 그림을 발췌 및 요약하는 것을 금지합니다.
  • 링크 및 SNS 공유는 허용합니다.

Published

2022-10-22