Kubernetes · 1 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はdocker-machineを使用してKubernetes VMを管理し、これを行うために’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

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。