Ubuntu 20.04
Sponsored Link

Minikube : インストール2020/08/05

 
シングルノードで Kubernetes クラスターを構成可能な Minikube をインストールします。
[1] 仮想マシンを利用するため、Minikube でサポートするハイパーバイザーをインストールしておきます。
当例では KVM をインストールして進めます。
その他、VirtualBox, VMware Fusion, HyperKit が利用可能です。
(仮想マシンを利用せず、ホスト上に Kubernetes クラスターを構成する場合は次項を参照)
root@dlp:~#
apt -y install qemu-kvm libvirt-daemon-system libvirt-daemon bridge-utils
[2] Minikube と その他 必要なツールをインストールします。
# kubectl インストール

root@dlp:~#
snap install kubectl --classic

kubectl 1.18.6 from Canonical installed
root@dlp:~#
wget https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 -O minikube

root@dlp:~#
wget https://storage.googleapis.com/minikube/releases/latest/docker-machine-driver-kvm2

root@dlp:~#
chmod 755 minikube docker-machine-driver-kvm2

root@dlp:~#
mv minikube docker-machine-driver-kvm2 /usr/local/bin/
root@dlp:~#
minikube version

minikube version: v1.12.1
commit: 5664228288552de9f3a446ea4f51c6f29bbdd0e0-dirty
[3] 任意のユーザーで Minikube を起動します。
# minikube 起動

ubuntu@dlp:~$
minikube start --vm-driver=kvm2

* minikube v1.12.1 on Ubuntu 20.04
* Using the kvm2 driver based on user configuration
* Downloading VM boot image ...
    > minikube-v1.12.0.iso.sha256: 65 B / 65 B [-------------] 100.00% ? p/s 0s
    > minikube-v1.12.0.iso: 173.57 MiB / 173.57 MiB [] 100.00% 46.88 MiB p/s 3s
* Starting control plane node minikube in cluster minikube
* Downloading Kubernetes v1.18.3 preload ...
    > preloaded-images-k8s-v4-v1.18.3-docker-overlay2-amd64.tar.lz4: 526.27 MiB
* Creating kvm2 VM (CPUs=2, Memory=2900MB, Disk=20000MB) ...
* Preparing Kubernetes v1.18.3 on Docker 19.03.12 ...
* Verifying Kubernetes components...
* Enabled addons: default-storageclass, storage-provisioner
* Done! kubectl is now configured to use "minikube"

# 状態確認

ubuntu@dlp:~$
minikube status

minikube
type: Control Plane
host: Running
kubelet: Running
apiserver: Running
kubeconfig: Configured
ubuntu@dlp:~$
minikube service list

|-------------|------------|--------------|-----|
|  NAMESPACE  |    NAME    | TARGET PORT  | URL |
|-------------|------------|--------------|-----|
| default     | kubernetes | No node port |
| kube-system | kube-dns   | No node port |
|-------------|------------|--------------|-----|

ubuntu@dlp:~$
minikube docker-env

export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://192.168.39.80:2376"
export DOCKER_CERT_PATH="/home/ubuntu/.minikube/certs"
export MINIKUBE_ACTIVE_DOCKERD="minikube"

# To point your shell to minikube's docker-daemon, run:
# eval $(minikube -p minikube docker-env)

ubuntu@dlp:~$
kubectl cluster-info

Kubernetes master is running at https://192.168.39.80:8443
KubeDNS is running at https://192.168.39.80:8443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy

To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.

ubuntu@dlp:~$
kubectl get nodes

NAME       STATUS   ROLES    AGE     VERSION
minikube   Ready    master   2m17s   v1.18.3

# 仮想マシン [minikube] が起動

ubuntu@dlp:~$
virsh list

 Id   Name       State
--------------------------
 1    minikube   running

# 仮想マシンへ SSH アクセス

ubuntu@dlp:~$
minikube ssh

                         _             _
            _         _ ( )           ( )
  ___ ___  (_)  ___  (_)| |/')  _   _ | |_      __
/' _ ` _ `\| |/' _ `\| || , <  ( ) ( )| '_`\  /'__`\
| ( ) ( ) || || ( ) || || |\`\ | (_) || |_) )(  ___/
(_) (_) (_)(_)(_) (_)(_)(_) (_)`\___/'(_,__/'`\____)

$
hostname

minikube
$
docker ps

CONTAINER ID        IMAGE                  COMMAND                  CREATED             STATUS              PORTS               NAMES
1c5aee338690        4689081edb10           "/storage-provisioner"   2 minutes ago       Up 2 minutes                            k8s_storage-provisioner_storage-provisioner_kube-system_77ed9083-d466-4b02-a695-7a11824e1d27_0
25eb2594fc76        k8s.gcr.io/pause:3.2   "/pause"                 2 minutes ago       Up 2 minutes                            k8s_POD_storage-provisioner_kube-system_77ed9083-d466-4b02-a695-7a11824e1d27_0
6e544344ef92        67da37a9a360           "/coredns -conf /etc…"   2 minutes ago       Up 2 minutes                            k8s_coredns_coredns-66bff467f8-wmj9f_kube-system_4a02a39c-778f-4d93-87da-8ef7e809db43_0
ec1f4b2a5655        k8s.gcr.io/pause:3.2   "/pause"                 2 minutes ago       Up 2 minutes                            k8s_POD_coredns-66bff467f8-wmj9f_kube-system_4a02a39c-778f-4d93-87da-8ef7e809db43_0
b082710f8612        3439b7546f29           "/usr/local/bin/kube…"   2 minutes ago       Up 2 minutes                            k8s_kube-proxy_kube-proxy-cj5mk_kube-system_39670b01-b375-44f5-8b43-a01b455ce3cd_0
79a17ee8836e        k8s.gcr.io/pause:3.2   "/pause"                 2 minutes ago       Up 2 minutes                            k8s_POD_kube-proxy-cj5mk_kube-system_39670b01-b375-44f5-8b43-a01b455ce3cd_0
5a59f1697877        303ce5db0e90           "etcd --advertise-cl…"   3 minutes ago       Up 3 minutes                            k8s_etcd_etcd-minikube_kube-system_3ed97ae4e9a452c90b0e8dc4b54ce717_0
6647edb3679d        7e28efa976bd           "kube-apiserver --ad…"   3 minutes ago       Up 3 minutes                            k8s_kube-apiserver_kube-apiserver-minikube_kube-system_a571f357d1dc95a53069cd324d44eabe_0
7a367e3f91bd        da26705ccb4b           "kube-controller-man…"   3 minutes ago       Up 3 minutes                            k8s_kube-controller-manager_kube-controller-manager-minikube_kube-system_ba963bc1bff8609dc4fc4d359349c120_0
3837d24e174d        76216c34ed0c           "kube-scheduler --au…"   3 minutes ago       Up 3 minutes                            k8s_kube-scheduler_kube-scheduler-minikube_kube-system_dcddbd0cc8c89e2cbf4de5d3cca8769f_0
5135b9fcc194        k8s.gcr.io/pause:3.2   "/pause"                 3 minutes ago       Up 3 minutes                            k8s_POD_kube-scheduler-minikube_kube-system_dcddbd0cc8c89e2cbf4de5d3cca8769f_0
adf2c5388b04        k8s.gcr.io/pause:3.2   "/pause"                 3 minutes ago       Up 3 minutes                            k8s_POD_kube-controller-manager-minikube_kube-system_ba963bc1bff8609dc4fc4d359349c120_0
0e0a6efd9e7a        k8s.gcr.io/pause:3.2   "/pause"                 3 minutes ago       Up 3 minutes                            k8s_POD_kube-apiserver-minikube_kube-system_a571f357d1dc95a53069cd324d44eabe_0
411e9ff0a85e        k8s.gcr.io/pause:3.2   "/pause"                 3 minutes ago       Up 3 minutes                            k8s_POD_etcd-minikube_kube-system_3ed97ae4e9a452c90b0e8dc4b54ce717_0

$
exit
# minikube を停止する場合は以下

ubuntu@dlp:~$
minikube stop

* Stopping "minikube" in kvm2 ...
* Node "minikube" stopped.
# minikube を開始する場合は以下

ubuntu@dlp:~$
minikube start

* minikube v1.12.1 on Ubuntu 20.04
* Using the kvm2 driver based on existing profile
* Starting control plane node minikube in cluster minikube
* Restarting existing kvm2 VM for "minikube" ...
* Preparing Kubernetes v1.18.3 on Docker 19.03.12 ...
* Verifying Kubernetes components...
* Enabled addons: default-storageclass, storage-provisioner
* Done! kubectl is now configured to use "minikube"
# minikube 仮想マシンを削除する場合は以下

ubuntu@dlp:~$
minikube delete

Deleting local Kubernetes cluster...
Machine deleted.
ubuntu@dlp:~$
virsh list --all

 Id   Name       State
--------------------------

関連コンテンツ