이 글은 제가 쿠버네티스의 기본을 배우고 나아가 Certified Kubernetes Administrator 자격을 취득하기 위해 공부한 내용을 정리한 것입니다.
저는 Raspberry Pi 4 4GB 버전에 VMware ESXi를 올린 후 ARM64용 Ubuntu Server 22.04 LTS 설치하여, mac os에서 원격으로 사용하고 있습니다. 본 글은 Ubuntu Linux에 대한 원격 접속을 설정하고, minikube를 이용한 쿠버네티스 환경 구축 방법을 다룹니다.
리눅스에 원격으로 접속하여 작업하기 위한 설정입니다. 리눅스 상에서 직접 작업하시는 분들은 다음과 같은 설정이 필요하지 않습니다.
sudo apt-get update
sudo apt-get install openssh-server
sudo apt-get install ssh
sudo vim /etc/ssh/sshd_config
#Port 22
에서 #를 삭제한 후 (코멘트 해제) 포트 번호를 4-5자리 정도로 지정sudo service ssh start
를 통해 ssh 서비스 시작sudo service ssh stop
를 통해 ssh 중지 sudo service ssh status
를 사용해서 현재 ssh 상황을 확인ifconfig
혹은 hostname -I
명령을 통해 IP 어드레스 확인 (inet)ssh -p 포트번호 사용자이름@IP주소
로 로그인 Docker는 컨테이너 런타임 엔진으로, 호스트 OS 위에서 컨테이너들을 구동할 수 있게 해주는 일종의 하이퍼바이저와 같은 기능을 수행합니다. Docker 말고도 런타임 엔진이 존재하지만 현재는 Docker가 가장 유명하고, 가장 널리 쓰입니다. 쿠버네티스를 가동하기 위해서는 일단 Docker를 설치해줄 필요가 있습니다.
Linux 및 다른 운영체제에 대한 도커의 설치 방법은 다음의 공식 문서에서 자세히 확인할 수 있습니다.
https://docs.docker.com/engine/install/ubuntu/
sudo apt-get update
sudo apt-get install \
ca-certificates \
curl \
gnupg \
lsb-release
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
sudo docker run hello-world
쿠버네티스를 설치하는 방법은 여러 가지가 있지만, 학습 환경의 구축을 위한 가장 쉽고 편한 방법인 minikube 를 사용하도록 하겠습니다 (자기 손으로 일일이 환경을 구축하는 법이 궁금하다면 https://github.com/kelseyhightower/kubernetes-the-hard-way 를 참조하세요).
minikube 는 로컬 환경에 쿠버네티스를 구축하기 위한 툴로, 싱글 노드의 쿠버네티스 클러스터를 구축할 수 있도록 해줍니다. minikube가 지원하는 기능들은 다음과 같습니다.
리눅스의 경우, 직접 minikube 의 stable 릴리즈를 다운로드 받아서 설치할 수 있습니다.
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube
minikube를 실행합니다.
minikube start
kubectl 을 설치합니다.
minikube kubectl -- get po -A
쉘 설정에 다음을 추가해서 kubectl 커맨드가 단독으로 작동할 수 있게 해줍니다.
alias kubectl="minikube kubectl --"