이번 포스팅에서는 Mac M1 시리즈 환경에서 Kubernetes 클러스터를 구축하는 과정을 다뤄보겠다 !! UTM을 이용해 가상 머신을 생성하고, Rocky Linux를 설치한 후 Kubernetes 클러스터를 구성하는 방법을 자세히 설명하려한다. 이 과정에서 사용된 주요 도구는 Rocky Linux, UTM, Kubernetes이며, 각 단계는 클러스터의 마스터 노드와 워커 노드를 설정하고 연결하여 Kubernetes 클러스터를 완성하는 것 ! 시작 !!
먼저, Kubernetes를 설치하기 위해 Rocky Linux ISO 파일을 다운로드한다. 이전 포스팅에서 설명했듯, Rocky Linux를 가상 머신에 설치하여 운영체제 환경을 제공하는 역할을 한다.
나는 Rocky Linux 9.2 (minimal) 를 다운로드했다 !
다음으로, 다음으로, Mac에서 가상 머신을 실행하기 위해 UTM을 설치한다. 이것은 실제로는 인스턴스가 되겠다!
나는 UTM 4.4.4을 다운로드했다 !
Start: Virtualize
Operating System: Linux
Linux: Boot ISO Image [Browse..] -> Rocky ISO 파일 선택
Hardware: Memory: 4096 MB, CPU Cores: 4
Size: 24 GB
Summary: Name: k8s-master
Master Node에 SSH로 접속한 후, Kubernetes 클러스터를 설정한다. 기본 시스템 설정을 마친 후, 컨테이너 런타임을 설치하고, Kubernetes의 주요 구성 요소인 kubeadm, kubelet, kubectl을 설치한다. 이후 kubeadm init 명령어를 사용해 클러스터를 초기화하고, 각 워커 노드가 클러스터에 참여할 수 있도록 토큰을 생성한다.
Node1과 Node2를 생성하는 과정은 Master Node와 거의 동일하다.

각 노드에서 SSH 접속 후, 타임존 설정, hosts 파일 설정, 방화벽 해제, Swap 비활성화 등을 수행한다. 이후 컨테이너 런타임을 설정하고, kubeadm join 명령어를 실행하여 Master Node에 연결한다.
모든 Node가 준비되었으면, Master Node에서 kubectl get nodes 명령어로 클러스터 상태를 확인한다. 모든 노드가 "Ready" 상태로 표시되면 클러스터가 정상적으로 구성된 것이다. 이제 Master Node와 Worker Nodes가 하나의 클러스터로 결합되어 작동하게 된다.

이렇게 클러스터가 정상적으로 구성된것을 볼수있다 !!
마지막으로, Kubernetes 대시보드를 설치한다. 이 대시보드는 웹 브라우저에서 클러스터의 상태를 시각적으로 관리할 수 있게 해준다.
SSH 접속된 상태에서 다음 명령어를 사용해 대시보드를 설치한다.
kubectl create -f https://raw.githubusercontent.com/k8s-1pro/install/main/ground/k8s-1.27/dashboard-2.7.0/dashboard.yaml
웹 브라우저에서 https://안알려줄래30000/#/login 주소로 접속하여 대시보드에 로그인한다.

이로써 Mac 환경에서의 Kubernetes 클러스터 구축이 완료되었다 !!!!!!!!
이제 이 클러스터를 활용해 애플리케이션을 배포하고, 관리해볼 수 있다.
드디어 프로젝트때 실패했던 쿠버네티스를 마음편히 제대로 공부해보는거같아 기분이 좋다 !