概要

初めてのkubernetesを勉強するのにあたって、ローカルで簡易的なクラスタリングを実現するMinikubeの導入とチュートリアルについての手順などを残します
まず、第1弾としてWindows10での環境構築になります

実行環境

以下の環境で以降の手順を実行していきます

Windows 10 Pro + Hyper-V

前提条件

  • VT-xまたはAMD-v が有効になっていること(BIOSから設定)
  • Hyper-Vが導入されていること
    「プログラムと機能」-「Windowsの機能の有効化または無効化」でHyper-V関連の機能を有効にしましょう install-hyper-v.png

手順

準備

  1. 作業用のディレクトリ(minikubeとでもしましょう)を作成し、以下の作業はこのディレクトリ内で行うものとする

kubectlのインストール

kubernetesとのやり取りに必要なコマンドラインツールとして導入します

  1. 公式手順に従ってダウンロードする download-kubectl.exe.png
  2. 環境変数Pathに登録
  3. バージョンを確認(以下のように表示されたらOK)

    > ./kubectl.exe version
    
    Client Version: version.Info{Major:"1", Minor:"9", GitVersion:"v1.9.0", 
    GitCommit:"925c127ec6b946659ad0fd596fa959be43f0cc05", GitTreeState:"clean", BuildDate:"2017-12-15T21:07:38Z", 
    GoVersion:"go1.9.2", Compiler:"gc", Platform:"windows/amd64"}
    
    

Minikubeのインストール

  1. Minikubeをダウンロード githubから最新版のminikube-windows-amd64をダウンロードし、minikube.exeにリネームします
  2. 環境変数Pathに登録

Hyper-V用のdriverの導入

MinukubeはHyper-V上で稼働する仮想マシンにあるため、外部と通信するための仮想ネットワークスイッチが必要になります
各種driverの導入

  1. 仮想スイッチマネージャ hyper-v-switch-manager.png
  2. 外部仮想スイッチを作成 hyper-v-switch-type.png
  3. ネットワークアダプタを選択と共有を許可
    ネットワークアダプタは外部と通信できる物理アダプタ名を選択しましょう
    仮想スイッチの名前はMinikube起動時に使いますので、控えといてください hyper-v-switch-property.png

Minikubeの起動

  1. コマンドプロンプトを管理者モードで起動し、以下のコマンドでHyper-VにMinikubeの仮想マシンが作成され、起動されます
    --hyperv-virtual-switch=minikubeのminikubeは前述で作成した仮想スイッチ名を入力してください

    > minikube start --vm-driver=hyperv --hyperv-virtual-switch=minikube
    
  2. 起動確認
    以下のように表示されればOK

    > minikube status
    
    minikube: Running
    cluster: Running
    kubectl: Correctly Configured: pointing to minikube-vm at 192.168.1.25
    
  3. ダッシュボードの表示
    ブラウザが立ち上がり、ダッシュボード画面が表示されます

    > minikube dashboard
    

    minikube-dashboard.png

トラブルシューティング

E0326エラー

管理者モードでコマンドプロンプトを実行しない

E0325エラー

すでにminikubeが存在していると下記のようなエラーが表示される

Starting VM...
E0325 19:03:39.838220   14056 start.go:159] Error starting host: Error starting stopped host: exit status 1.

 Retrying.
E0325 19:03:39.842720   14056 start.go:165] Error starting host:  Error starting stopped host: exit status 1

対策

一度削除しましょう(消しても問題ないなら)

> minikube delete

The system cannot find the path specified

minikube start時にISOファイルから仮想マシンを作成するが、ISOをロードしようとしているパス(/Users/user)が存在していないことから以下のようなエラーになります(バグ?)

/Users/user/.minikube/cache/iso/minikube-v0.25.1.iso: The system cannot find the path specified

対策

.minikubeまでのパスをMINIKUBE_HOMEという環境変数を設定してあげましょう
※設定後マシンの再起動を忘れずに

例)

MINIKUBE_HOME=C:\Users\user\.minikube

メモリエラー

Hyper-Vが割り当てるメモリーが使用できるメモリーの上限を超えた時にエラーが発生します

対策

  1. minikubeを停止

    > minikube stop
    

    minikube-config.png

  2. 動的メモリをオフにします
    minikube-dynamic-memory-off.png

Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.