はじめに
Kubernatesを扱っていく可能性が出てきたので、kubectlコマンドくらいはサラッと触っておきたいと思い、Minikubeをローカルpcに入れることにしました。
Minikubeのインストールについて調べていくと、BIOS周りの設定をする必要があることが分かります。
ビクビクしながら、インストールすることのないように備忘録として残しておきます笑。
##環境/バージョン情報
- Dell xps13 9380
- Ubuntu19.04 (Disco Dingo)
- kvm QEMU emulator version 3.1.0 (Debian 1:3.1+dfsg-2ubuntu3.5)
- minikube version: v1.5.2
- kubectl Client Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.2"
お話すること
- 下準備(Virtualizationの有効化)
- [kvm driverをインストール](https://qiita.com/gkzz/items/dd1dcb818612ec226cc9#kvm driverをインストール)
- Minikubeをインストール
- Minikubeを立ち上げる
- Minikubeを停止・削除
下準備(Virtualizationの有効化)
kvm driverをインストール
gkz@localhost ~ $ sudo apt install cpu-checker && sudo kvm-ok
Reading package lists... Done
Building dependency tree
Reading state information... Done
cpu-checker is already the newest version (0.7-1.1).
cpu-checker set to manually installed.
gkz@localhost ~ $ sudo kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be used
gkz@localhost ~ $ sudo apt install libvirt-clients libvirt-daemon-system qemu-kvm \
> && sudo usermod -a -G libvirt $(whoami) \
> && newgrp libvirt
Reading package lists... Done
Building dependency tree
Reading state information... Done
libvirt-clients is already the newest version (5.0.0-1ubuntu2.5).
libvirt-daemon-system is already the newest version (5.0.0-1ubuntu2.5).
qemu-kvm is already the newest version (1:3.1+dfsg-2ubuntu3.5).
0 upgraded, 0 newly installed, 0 to remove and 9 not upgraded.
gkz@localhost ~ $ sudo virt-host-validate
QEMU: Checking for hardware virtualization : PASS
QEMU: Checking if device /dev/kvm exists : PASS
QEMU: Checking if device /dev/kvm is accessible : PASS
QEMU: Checking if device /dev/vhost-net exists : PASS
(略)
gkz@localhost ~ $ kvm --version
QEMU emulator version 3.1.0 (Debian 1:3.1+dfsg-2ubuntu3.5)
Copyright (c) 2003-2018 Fabrice Bellard and the QEMU Project developers
Minikubeをインストール
gkz@localhost ~ $ curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 \
> && sudo install minikube-linux-amd64 /usr/local/bin/minikube
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 46.3M 100 46.3M 0 0 5699k 0 0:00:08 0:00:08 --:--:-- 7973k
Minikubeを立ち上げる
gkz@localhost ~ $ minikube start --vm-driver=kvm2
😄 minikube v1.5.2 on Ubuntu 19.04
✨ Automatically selected the 'kvm2' driver (alternates: [none])
🔥 Creating kvm2 VM (CPUs=2, Memory=2000MB, Disk=20000MB) ...
🌐 Found network options:
▪ NO_PROXY=localhost,127.0.0.0/8,::1
▪ no_proxy=localhost,127.0.0.0/8,::1
🐳 Preparing Kubernetes v1.16.2 on Docker '18.09.9' ...
▪ env NO_PROXY=localhost,127.0.0.0/8,::1
▪ env NO_PROXY=localhost,127.0.0.0/8,::1
💾 Downloading kubeadm v1.16.2
💾 Downloading kubelet v1.16.2
🚜 Pulling images ...
🚀 Launching Kubernetes ...
⌛ Waiting for: apiserver
🏄 Done! kubectl is now configured to use "minikube"
ダッシュボードを開く
gkz@localhost ~ $ minikube dashboard
🤔 Verifying dashboard health ...
🚀 Launching proxy ...
🤔 Verifying proxy health ...
🎉 Opening http://127.0.0.1:43933/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/ in your default browser...
Opening in existing browser session.
ブラウザが下記のように立ち上がります
Minikubeのステータスの確認
# Minikubeを立ち上げる前
gkz@localhost ~ $ minikube status
host:
kubelet:
apiserver:
kubeconfig:
# Minikubeを立ち上げた後
gkz@localhost ~ $ minikube status
host: Running
kubelet: Running
apiserver: Running
kubeconfig: Configured
Minikubeを停止・削除
gkz@localhost ~ $ minikube stop
✋ Stopping "minikube" in kvm2 ...
🛑 "minikube" stopped.
gkz@localhost ~ $ minikube delete
🔥 Deleting "minikube" in kvm2 ...
💔 The "minikube" cluster has been deleted.
🔥 Successfully deleted profile "minikube"
# まとめて消す方法
gkz@localhost ~ $ minikube stop; minikube delete
# Minikubeのステータスの確認
gkz@localhost ~ $ minikube status
host:
kubelet:
apiserver:
kubeconfig:
Minikubeを完全に削除
gkz@localhost ~ $ sudo rm /usr/local/bin/minikube
[sudo] password for gkz:
gkz@localhost ~ $ rm -rf ~/.minikube
# 削除できているか確認
gkz@localhost ~ $ minikube start -vm-driver=kvm2
bash: /usr/local/bin/minikube: No such file or directory
gkz@localhost ~ $ kubectl version
Client Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.2", GitCommit:"c97fe5036ef3df2967d086711e6c0c405941e14b", GitTreeState:"clean", BuildDate:"2019-10-15T19:18:23Z", GoVersion:"go1.12.10", Compiler:"gc", Platform:"linux/amd64"}
Error from server (NotFound): the server could not find the requested resource
gkz@localhost ~ $ minikube version
bash: /usr/local/bin/minikube: No such file or directory
Minikubeを再インストール
gkz@localhost ~ $ curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 \
> && sudo install minikube-linux-amd64 /usr/local/bin/minikube && rm minikube-linux-amd64
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 46.3M 100 46.3M 0 0 5463k 0 0:00:08 0:00:08 --:--:-- 5424k
gkz@localhost ~ $ minikube version
minikube version: v1.5.2
commit: 792dbf92a1de583fcee76f8791cff12e0c9440ad-dirty
参考
-
バーチャライぜーション
-
kvm Minikubeのインストール
-
kubectlのインストール
- Install and Set Up kubectl - Kubernetes