집에 있는 홈서버에 k8s 환경을 구성하여 토이프로젝트를 편리하게 배포&운영 해보려고 한다.
홈서버 구성은 대략적으로 다음과 같다.
- AMD Ryzen 9 7900
- RAM 64G
- SSD 2TB
- RTX 3090 FE
1. minukube 설치
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube
2. kubectl 설치
sudo apt-get update
sudo apt-get install -y kubectl
⚠️ kubectl 설치시 Unable to locate package kubectl 와 같은 오류가 발생할 경우 아래와 같이 진행한다.
참고 : https://hostnextra.com/learn/tutorials/how-to-install-kubernetes-k8s-on-ubuntu
2-1) Add the Kubernetes apt repository
echo "deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.30/deb/ /" | sudo tee /etc/apt/sources.list.d/kubernetes.list
curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.30/deb/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg
2-2) Install the Kubernetes components:
sudo apt update
sudo apt install -y kubelet kubeadm kubectl
2-3) 자동 업데이트 방지
sudo apt-mark hold kubelet kubeadm kubectl
3. 메모리 스왑 비활성화
sudo swapoff -a
sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
4. 클러스터 실행 및 확인
minikube start
minikube status
minikube profile list
minikube 가 정상적으로 실행이 되었다면, 다음과 같이 status 및 profile list 을 확인할 수 있다.
이렇게 클러스터 구성은 완료 되었고, 원격지 서버로 활용해야 하니 대시보드 접속이 필요하다.
5. 대시보드 addons 활성 여부 확인
minikube addons list
6. 대시보드 활성화
minikube addons enable dashboard
7. 대시보드 실행
minikube dashboard
처음 실행시 로컬환경(127.0.0.1) 으로 접속 정보가 제공된다.
우분투 서버에서 접속도 불가하고, 원격에서 접속해야 하므로 호스트 변경이 필요하다.
호스트 정보 뒤 url 은 dashboard 접속 정보이니 따로 메모해두자.
8. 대시보드 원격 접속 허용
kubectl proxy --address='0.0.0.0' --disable-filter=true &
본인의 서버 IP 를 참고하여 8001 포트 (기본) 로 접속하면 아래와 같이 dashboard 접속이 가능하다.
이로써 기본적인 설정은 완료되었고, 이후 deployment, service, pod 등을 작성하여 서비스 배포를 진행하면 된다.
'Project' 카테고리의 다른 글
1인 개발자, 먹고 살만 한가? - 2022년도 앱 운영 수익 공개 (9) | 2023.01.03 |
---|---|
[NCS] 상담 연결 flow diagram (0) | 2021.06.14 |
1인 개발자, 먹고 살만 한가? - 앱 운영 수익 공개 (7) | 2021.02.14 |