Minikube のインストール,Minikube の基本機能(Windows 上)

Kubernetes のチュートリアルのページの手順に従う.

https://kubernetes.io/docs/tasks/tools/install-minikube/

前準備

Windows の Hyper-V の機能を有効にしておく

次のページを参考に,Windows の Hyper-V の機能を有効にしておく.

https://docs.microsoft.com/ja-jp/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v?redirectedfrom=MSDN

Hyper-V の機能については「systeminfo」で確認できる. 次のように,「Hyper-V の要件: ハーパーバイザーが検出されました。Hyper-V に必要な機能は表示されません。」と表示されたときは,すでに,Hyper-V の機能は有効になっている.

Docker のインストール

Windows での Docker のインストール: 別ページ »で説明

Chocolatey のインストール(Windows 上)

  1. Windows で,コマンドプロンプト管理者権限で起動する(例:Windowsキーを押し,「cmd」と入力し,「管理者として実行」を選択)
  2. 次のコマンドを実行

    次のコマンドは,Chocolateyパッケージマネージャーをインストールするものである.

    winget install --scope machine Chocolatey.Chocolatey Chocolatey.ChocolateyGUI
    

Minikube のインストール(Chocolatey を使用)

  1. Windows で,コマンドプロンプト管理者権限で起動する(例:Windowsキーを押し,「cmd」と入力し,「管理者として実行」を選択)
  2. Minikube をインストール

    実行のとき、エラーメッセージが出ないことを確認すること

    choco install minikube
    

イメージファイルの作成

作成するイメージのレポジトリとタグ: node:6.14.2

  1. ファイルの準備
    使用するファイル:https://kubernetes.io/ja/docs/tutorials/hello-minikube/のものを使用
    • Dockerfile
      「COPY server.js .」のところは書き換えて使用
      FROM node:6.14.2
      EXPOSE 8080
      COPY server.js .
      CMD node server.js
      
    • server.js
      var http = require('http');
      
      var handleRequest = function(request, response) {
        console.log('Received request for URL: ' + request.url);
        response.writeHead(200);
        response.end('Hello World!');
      };
      var www = http.createServer(handleRequest);
      www.listen(8080);
      
  2. 次のコマンドで作成
    docker build - < Dockerfile
    

Minikube を使ってみる

  1. Minikube の起動
    minikube start
    
  2. ダッシュボードを開いてみる
    minikube dashboard
    
  3. Deployment の作成
    kubectl create deployment hello-node --image=gcr.io/hello-minikube-zero-install/hello-node
    
  4. Deployment の確認
    kubectl get deployments
    
  5. Pod の確認
    kubectl get pods
    
  6. クラスタイベントの確認
    kubectl get events
    
  7. 設定の確認
    kubectl config view
    

Podの公開

  1. 公開
    kubectl expose deployment hello-node --type=LoadBalancer --port=8080
    
  2. サービスの開始
    kubectl get services
    
    minikube service hello-node
    

クリーンアップ

クラスタに作成したリソースのクリーンアップ

kubectl delete service hello-node
kubectl delete deployment hello-node

Minikubeの仮想マシン(VM)の停止

minikube stop

MinikubeのVMの削除

minikube delete