Kubernetes · 3 min read · Feb 05, 2026

Manjaro/Archlinux에서 Minikube를 통한 로컬 Kubernetes 학습

Minikube는 로컬 컴퓨터 시스템에서 Kubernetes를 실행할 수 있게 해주는 도구입니다. Minikube는 사용하는 vm-driver에 따라 VM 내부에 단일 노드 Kubernetes 클러스터를 생성합니다. Minikube는 Kubernetes에 대해 배우는 데 유용하며, 테스트, 개발 또는 교육 목적으로 사용됩니다.

이 튜토리얼에서는 Manjaro/ArchLinux에서 Minikube를 사용하여 로컬에서 단일 노드 Kubernetes 클러스터를 생성하는 방법을 단계별로 보여줍니다. 이 가이드는 KVM2 드라이버를 사용하여 로컬에서 Kubernetes 클러스터를 구현하고, Nginx 서비스 배포의 예를 다룹니다.

우리가 할 일:

  1. 패키지 의존성 설치
  2. Docker-machine 및 KVM2 드라이버 설치
  3. Minikube 및 Kubectl 설치
  4. Minikube를 통한 Kubernetes 초기화
  5. 배포 테스트
  6. Kubernetes 대시보드 접근

1단계 - 패키지 의존성 설치

우리가 할 첫 번째 단계는 qemu KVM 및 dnsmasq를 포함한 모든 패키지 의존성을 설치하는 것입니다.

아래의 pacman 명령어를 사용하여 qemu 및 dnsmasq를 설치합니다.

sudo pacman -Sy libvirt qemu ebtables dnsmasq

소프트웨어 필수 요소 설치

설치가 완료되면 사용자를 ‘libvirt’ 그룹에 추가하고 다시 로드합니다.

sudo usermod -a -G libvirt $(whoami)  
newgrp libvirt

이제 libvirtd 및 virtlogd 서비스를 시작하고 부팅 시 이 서비스를 추가합니다.

sudo systemctl start libvirtd.service  
sudo systemctl enable libvirtd.service  
   
sudo systemctl start virtlogd.service  
sudo systemctl enable virtlogd.service

qemu KVM 패키지 및 의존성이 시스템에 설치되었습니다.

2단계 - Docker-Machine 및 KVM2 드라이버 설치

Minikube는 Kubernetes VM을 관리하기 위해 docker-machine을 사용하며, 이를 위해 ‘docker-machine-driver-kvm2’를 설치해야 합니다.

아래의 pacman 명령어를 사용하여 docker machine을 설치합니다.

sudo pacman -Sy docker-machine

이제 yaourt 명령어를 사용하여 AUR 리포지토리에서 ‘docker-machine-driver-kvm2’를 설치합니다.

yaourt -Sy docker-machine-driver-kvm2

설치를 기다립니다.

Docker-Machine 및 KVM2 드라이버 설치

3단계 - Minikube 및 Kubectl 설치

이 가이드를 위해 AUR 리포지토리에서 Minikube 및 kubectl을 설치할 것입니다.

아래의 yaourt 명령어를 실행합니다.

yaourt -Sy minikube-bin kubectl-bin

설치가 완료되면 Minikube 버전과 kubectl 명령어를 확인합니다.

minikube version  
whereis kubectl  
kubectl -h

Minikube 및 Kubectl 설치

4단계 - Minikube를 통한 Kubernetes 초기화

아래의 Minikube 명령어를 사용하여 단일 노드 Kubernetes 클러스터를 초기화합니다.

minikube start --vm-driver kvm2

이 명령어는 Minikube ISO 파일을 다운로드하고 시스템에서 KVM 가상 머신을 생성합니다.

완료되면 아래와 같은 결과를 얻을 수 있습니다.

Minikube를 통한 Kubernetes 초기화

Kubernetes가 Minikube를 사용하여 로컬 컴퓨터에 설치되었습니다. 아래의 모든 명령어를 실행하여 확인합니다.

minikube status  
kubectl cluster-info  
kubectl get nodes

이제 아래와 같은 결과를 볼 수 있습니다.

Kubernetes 클러스터가 로컬 컴퓨터에서 IP 주소 ‘192.168.39.78’로 실행 중이며, Kubernetes v1.10을 사용하고, 단일 노드 minikube가 클러스터의 마스터로 설정되어 있습니다.

5단계 - 배포 테스트

이 단계에서는 Nginx 웹 서버에 대한 새로운 배포를 생성하여 Kubernetes를 테스트합니다.

‘project/nginx/‘라는 새 디렉토리를 만들고 그 디렉토리로 이동합니다.

mkdir -p projects/nginx/  
cd projects/nginx/

이제 배포 구성에 대한 새 yaml 파일을 생성합니다.

vim nginx-deployment-service.yaml

아래의 구성을 붙여넣습니다.

apiVersion: apps/v1  
kind: Deployment  
metadata:  
  name: nginx-deployment  
  labels:  
    app: nginx  
spec:  
  selector:  
    matchLabels:  
      app: nginx  
  template:  
    metadata:  
      labels:  
        app: nginx  
    spec:  
      containers:  
      - name: nginx  
        image: nginx:1.14  
        ports:  
        - containerPort: 80  
---  
apiVersion: v1  
kind: Service  
metadata:  
  name: nginx-service  
  labels:  
    run: nginx-service  
spec:  
  type: NodePort  
  ports:  
  - port: 80  
    protocol: TCP  
  selector:  
    app: nginx

저장하고 종료합니다.

이제 아래의 kubectl 명령어를 실행하여 배포를 생성합니다.

kubectl create -f nginx-deployment.yaml

완료되면 Kubernetes 배포를 확인합니다.

kubectl get deployments  
kubectl describe deployments nginx-deployment

그리고 목록에서 ‘nginx-deployment’를 확인할 수 있습니다.

배포 확인

이제 Kubernetes 서비스를 확인합니다.

kubectl get services  
kubectl describe services nginx-service

그리고 NodePort ‘nginx-service’가 포트 ‘32274’에서 실행 중임을 확인할 수 있습니다.

nginx 서비스 확인

Kubernetes 클러스터 IP를 확인하고 curl 명령어를 사용하여 접근합니다.

minikube ip  
curl -I http://192.168.39.49:32274/

그리고 Nginx 웹 서버로부터 응답을 받을 수 있습니다.

Minikube IP 확인

웹 브라우저에서 접근했을 때의 결과는 아래와 같습니다.

http://192.168.39.49:32274/

6단계 - Kubernetes 대시보드 접근

Minikube는 Minikube 클러스터 내에서 실행 중인 Kubernetes 대시보드에 접근하기 위한 명령어를 제공합니다.

아래의 명령어를 실행합니다.

minikube dashboard

이 명령어는 시스템의 기본 웹 브라우저를 사용하여 Kubernetes 대시보드를 엽니다.

아래는 Kubernetes 대시보드입니다.

Kubernetes 대시보드

Minikube를 사용하여 Manjaro/Archlinux에서 로컬 컴퓨터에 Kubernetes 설치가 성공적으로 완료되었습니다.

참고

https://kubernetes.io/docs/setup/minikube/

Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.