オフラインで環境を作る方法を確認したメモ。別途上記手順で作成したオンラインのMinikube環境があるとして、そこで必要なものをダウンロードしてオフライン環境に持ち込む。
オンライン環境でのファイルの準備
移動してくる必要があるものは以下。
- dockerのrpm
- docker-ce-17.03.2.ce-1.el7.centos.x86_64.rpm
- docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch.rpm
- CLI等のバイナリ
- kubectl
- minikube
- crictl
- helm
- kubeadm
- kubelet
- Dockerイメージ
dockerのrpm
オンラインの環境でyumdownloaderを使ってrpmをダウンロードする。
sudo yum install yum-utils
sudo yumdownloader --resolve docker-ce-17.03.2.ce docker-ce-selinux-17.03.2.ce
CLI等のバイナリ
kubectl、minikube、crictlをそれぞれオンライン環境でダウンロードする。
curl -Lo kubectl https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl
VERSION="v0.30.0"
curl -Lo minikube https://storage.googleapis.com/minikube/releases/$VERSION/minikube-linux-amd64
VERSION="v1.12.0"
curl -LO https://github.com/kubernetes-sigs/cri-tools/releases/download/$VERSION/crictl-$VERSION-linux-amd64.tar.gz
VERSION="v2.11.0"
curl -LO https://storage.googleapis.com/kubernetes-helm/helm-$VERSION-linux-amd64.tar.gz
kubeadmとkubeletはminikube start
をしたときにダウンロードされているのでこれを取得する。
[root@minikube v1.11.1]# pwd
/root/.minikube/cache/v1.11.1
[root@minikube v1.11.1]# ls -l
合計 215264
-rw-------. 1 root root 57394285 10月 19 05:38 kubeadm
-rw-------. 1 root root 163031056 10月 19 05:38 kubelet
[root@minikube v1.11.1]#
Dockerイメージ
Minikubeのaddonをオフライン環境で使いたい場合は、オンライン環境でaddonを有効にしてイメージをダウンロードさせておく。今回はheapster、ingress、registryを追加で有効にした。
[root@minikube ~]# minikube addons list
- addon-manager: enabled
- coredns: enabled
- dashboard: enabled
- default-storageclass: enabled
- efk: disabled
- freshpod: disabled
- heapster: enabled
- ingress: enabled
- kube-dns: disabled
- metrics-server: disabled
- nvidia-driver-installer: disabled
- nvidia-gpu-device-plugin: disabled
- registry: enabled
- registry-creds: disabled
- storage-provisioner: enabled
[root@minikube ~]#
Helmを使う場合はtillerもデプロイしておく。
全部移動する場合
オフライン環境にあるイメージを全て保管する。
[root@minikube ~]# docker images --format "{{.Repository}}:{{.Tag}}"
gcr.io/kubernetes-helm/tiller:v2.11.0
quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.19.0
k8s.gcr.io/coredns:1.2.2
k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.0
k8s.gcr.io/kube-proxy-amd64:v1.11.1
k8s.gcr.io/kube-apiserver-amd64:v1.11.1
k8s.gcr.io/kube-scheduler-amd64:v1.11.1
k8s.gcr.io/kube-controller-manager-amd64:v1.11.1
k8s.gcr.io/coredns:1.1.3
k8s.gcr.io/heapster-amd64:v1.5.3
k8s.gcr.io/etcd-amd64:3.2.18
k8s.gcr.io/kube-addon-manager:v8.6
k8s.gcr.io/pause:3.1
gcr.io/k8s-minikube/storage-provisioner:v1.8.1
gcr.io/google_containers/defaultbackend:1.4
k8s.gcr.io/heapster-influxdb-amd64:v1.3.3
k8s.gcr.io/heapster-grafana-amd64:v4.4.3
registry.hub.docker.com/library/registry:2.6.1
[root@minikube ~]#
これらイメージをdocker save
でファイルに保存する。
docker images --format "{{.Repository}}:{{.Tag}}" | while read image
do
tag=${image##*:}
repo=${image%%:*}
name=${repo##*/}
filename=${name}_${tag}.tar
#echo $filename
docker save $image -o $filename
done
選ぶ場合
オンライン環境で使っているイメージを確認する。
楽に確認したいのでjqを入れる。
sudo curl -o /usr/local/bin/jq -L https://github.com/stedolan/jq/releases/download/jq-1.5/jq-linux64 && sudo chmod +x /usr/local/bin/jq
[root@minikube ~]# kubectl get po --all-namespaces -o json | jq -r '.items[].spec.containers[].image'
k8s.gcr.io/coredns:1.2.2
gcr.io/google_containers/defaultbackend:1.4
k8s.gcr.io/etcd-amd64:3.2.18
k8s.gcr.io/heapster-amd64:v1.5.3
k8s.gcr.io/heapster-influxdb-amd64:v1.3.3
k8s.gcr.io/heapster-grafana-amd64:v4.4.3
k8s.gcr.io/kube-addon-manager:v8.6
k8s.gcr.io/kube-apiserver-amd64:v1.11.1
k8s.gcr.io/kube-controller-manager-amd64:v1.11.1
k8s.gcr.io/kube-proxy-amd64:v1.11.1
k8s.gcr.io/kube-scheduler-amd64:v1.11.1
k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.0
quay.io/kubernetes-ingress-controller/nginx-ingress-controller:0.19.0
registry.hub.docker.com/library/registry:2.6.1
gcr.io/k8s-minikube/storage-provisioner:v1.8.1
gcr.io/kubernetes-helm/tiller:v2.11.0
[root@minikube ~]#
これらイメージをdocker save
でファイルに保存する。
kubectl get po --all-namespaces -o json | jq -r '.items[].spec.containers[].image' | while read image
do
tag=${image##*:}
repo=${image%%:*}
name=${repo##*/}
filename=${name}_${tag}.tar
#echo $filename
docker save $image -o $filename
done
これでよいかと思ったら、以下のイメージも必要だったのでsaveすること。
- k8s.gcr.io/pause:3.1
- k8s.gcr.io/coredns:1.1.3
docker save k8s.gcr.io/coredns:1.1.3 -o coredns_1.1.3.tar
docker save k8s.gcr.io/pause:3.1 -o pause-amd64_3.1.tar
オフライン環境の準備
Vagrantで試す。オフライン環境といってもCentOS標準のパッケージはインストールできる環境にあるとする。
mkdir minikube-centos
vagrant init centos/7
Vagrantfile
を編集し、以下のコメントアウトを外してプライベートネットワークを有効にする。
config.vm.network "private_network", ip: "192.168.33.10"
メモリーの容量も大きくする。
config.vm.provider "virtualbox" do |vb|
# # Display the VirtualBox GUI when booting the machine
# vb.gui = true
#
# # Customize the amount of memory on the VM:
vb.memory = "2048"
end
仮想マシンを起動。
vagrant up
vagrant ssh
だとこのあとインターフェースをダウンしたときに接続が切れてしまうため、先ほど指定したプライベートネットワークのIPを使用してsshログインする。
以下のコマンドでNATネットワークのインターフェースをダウンしてオフライン環境にする。
sudo ip l set eth0 down
(実行例)
[vagrant@localhost ~]$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 52:54:00:c0:42:d5 brd ff:ff:ff:ff:ff:ff
inet 10.0.2.15/24 brd 10.0.2.255 scope global noprefixroute dynamic eth0
valid_lft 86340sec preferred_lft 86340sec
inet6 fe80::5054:ff:fec0:42d5/64 scope link
valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 08:00:27:88:2e:f5 brd ff:ff:ff:ff:ff:ff
inet 192.168.33.10/24 brd 192.168.33.255 scope global noprefixroute eth1
valid_lft forever preferred_lft forever
inet6 fe80::a00:27ff:fe88:2ef5/64 scope link
valid_lft forever preferred_lft forever
[vagrant@localhost ~]$
[vagrant@localhost ~]$
[vagrant@localhost ~]$ ping yahoo.co.jp -c 3
PING yahoo.co.jp (183.79.135.206) 56(84) bytes of data.
64 bytes from f1.top.vip.kks.yahoo.co.jp (183.79.135.206): icmp_seq=1 ttl=63 time=31.9 ms
64 bytes from f1.top.vip.kks.yahoo.co.jp (183.79.135.206): icmp_seq=2 ttl=63 time=32.7 ms
64 bytes from f1.top.vip.kks.yahoo.co.jp (183.79.135.206): icmp_seq=3 ttl=63 time=32.4 ms
--- yahoo.co.jp ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 31.911/32.401/32.797/0.396 ms
[vagrant@localhost ~]$
[vagrant@localhost ~]$
[vagrant@localhost ~]$ sudo ip l set eth0 down
[vagrant@localhost ~]$
[vagrant@localhost ~]$
[vagrant@localhost ~]$ ping yahoo.co.jp -c 3
ping: yahoo.co.jp: Name or service not known
[vagrant@localhost ~]$
[vagrant@localhost ~]$
オフラインにしたときにデフォルトゲートウェイがなくなってしまうのでルートを追加しておく。
sudo ip route add default via 192.168.33.1
実際のオフライン環境ではCentOSの標準のパッケージはメディアをマウントしてインストールしていると思うので、CentOSの標準のパッケージをインストールしたいときはインターフェースを一時的にonにする。
sudo ip l set eth0 up
これでオフラインの環境がローカルで再現できた。
オフライン環境へのインストール
ここから先は以下の手順のオフライン版。
OSの基本的な準備
ホスト名を設定する。
sudo hostnamectl set-hostname --static offline-kube
ホスト名が解決できるようにする。
sudo vi /etc/hostname
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
offline-kube 192.168.33.10
Dockerのインストール
前提パッケージのインストール。
sudo ip l set eth0 up
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
sudo ip l set eth0 down
以下も依存パッケージとして必要だったので入れる。
sudo ip l set eth0 up
sudo yum install -y libcgroup policycoreutils-python
sudo ip l set eth0 down
オンライン環境から持ってきたrpmでDockerをインストールする。以下はrpm -Uvh
だがyum localinstall
でもよいかも。
[vagrant@offline-kube docker]$ ls -l
total 19104
-rw-r--r--. 1 vagrant vagrant 19529520 Jun 8 17:48 docker-ce-17.03.2.ce-1.el7.centos.x86_64.rpm
-rw-r--r--. 1 vagrant vagrant 29108 Jun 8 17:48 docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch.rpm
[vagrant@offline-kube docker]$ sudo rpm -Uvh docker-ce-17.03.2.ce-1.el7.centos.x86_64.rpm docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch.rpm
warning: docker-ce-17.03.2.ce-1.el7.centos.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID 621e9f35: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:docker-ce-selinux-17.03.2.ce-1.el################################# [ 50%]
Re-declaration of type docker_t
Failed to create node
Bad type declaration at /etc/selinux/targeted/tmp/modules/400/docker/cil:1
/usr/sbin/semodule: Failed!
restorecon: lstat(/var/lib/docker) failed: No such file or directory
warning: %post(docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch) scriptlet failed, exit status 255
2:docker-ce-17.03.2.ce-1.el7.centos################################# [100%]
[vagrant@offline-kube docker]$
Dockerデーモンを有効化して起動する。
sudo systemctl enable docker && sudo systemctl start docker
vagrantユーザーでdockerコマンドが使えるようにする。
sudo gpasswd -a vagrant docker
有効にするにはログインし直す必要あり。
CLIを配置する
オンライン環境から持ってきたkubectl、minikube、crictl、helmを/usr/local/bin
に配置する。
[vagrant@offline-kube cli]$ ls -l
total 156280
-rwxr-xr-x. 1 vagrant vagrant 28312149 Sep 25 11:19 crictl
-rwxr-xr-x. 1 vagrant vagrant 32062656 Oct 19 11:37 helm
-rwxr-xr-x. 1 vagrant vagrant 57352138 Oct 18 10:08 kubectl
-rwxr-xr-x. 1 vagrant vagrant 42296421 Oct 18 11:20 minikube
[vagrant@offline-kube cli]$ sudo cp * /usr/local/bin/
[vagrant@offline-kube cli]$ ls -l /usr/local/bin/
total 156280
-rwxr-xr-x. 1 root root 28312149 Oct 19 12:02 crictl
-rwxr-xr-x. 1 root root 32062656 Oct 19 12:02 helm
-rwxr-xr-x. 1 root root 57352138 Oct 19 12:02 kubectl
-rwxr-xr-x. 1 root root 42296421 Oct 19 12:02 minikube
[vagrant@offline-kube cli]$
socatとebtablesのインストール
socatとeptablesをインストールする。eptablesは入ってた。
sudo ip l set eth0 up
sudo yum install -y socat ebtables
sudo ip l set eth0 down
/usr/local/binにパスを通す
sudo visudo
# Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin
Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/local/bin:/usr/bin
その他
swapを無効にする。
swapoff -a
/etc/fstab
を編集して再起動後もスワップが無効になるようにする。
sudo vi /etc/fstab
以下行をコメントアウトする。
# /swapfile none swap defaults 0 0
SELinuxをPermissiveにする。
sudo setenforce Permissive
再起動後もPermissiveとなるように/etc/selinux/config
を編集する。
sudo vi /etc/selinux/config
# SELINUX=enforcing
SELINUX=permissive
再起動してpermissiveなことを確認。
[vagrant@offline-kube ~]$ getenforce
Permissive
[vagrant@offline-kube ~]$
Firewalldを停止する。今回はもともと停止していた。
再起動するとインターフェースがupになるので注意。
sudo ip l set eth0 down
kubeadmとkubeletの配置
Minikubeを起動した際にダウンロードされるkubeadmとkubeletをあらかじめ配置する。今回はMinikubeはrootで起動するものとして、rootのホームディレクトリーにあらかじめディレクトリーを作成して配置する。
[vagrant@offline-kube kubeadm]$ ls -l
total 215264
-rw-------. 1 vagrant vagrant 57394285 Oct 19 05:38 kubeadm
-rw-------. 1 vagrant vagrant 163031056 Oct 19 05:38 kubelet
[vagrant@offline-kube kubeadm]$ sudo mkdir -p /root/.minikube/cache/v1.11.1
[vagrant@offline-kube kubeadm]$ sudo cp * /root/.minikube/cache/v1.11.1
[vagrant@offline-kube kubeadm]$ sudo ls -l /root/.minikube/cache/v1.11.1
total 215264
-rw-------. 1 root root 57394285 Oct 19 12:04 kubeadm
-rw-------. 1 root root 163031056 Oct 19 12:04 kubelet
[vagrant@offline-kube kubeadm]$
Dockerイメージのロード
ファイルのあるディレクトリで以下を実行。
for file in *; do
#echo $file
docker load -i "${file}"
done
(実行例)
[vagrant@offline-kube image]$ ls -l
total 1822392
-rw-------. 1 vagrant vagrant 46233600 Oct 19 11:44 coredns_1.1.3.tar
-rw-------. 1 vagrant vagrant 39493632 Oct 19 11:44 coredns_1.2.2.tar
-rw-------. 1 vagrant vagrant 4855808 Oct 19 11:45 defaultbackend_1.4.tar
-rw-------. 1 vagrant vagrant 219150848 Oct 19 11:44 etcd-amd64_3.2.18.tar
-rw-------. 1 vagrant vagrant 75337216 Oct 19 11:44 heapster-amd64_v1.5.3.tar
-rw-------. 1 vagrant vagrant 154733056 Oct 19 11:45 heapster-grafana-amd64_v4.4.3.tar
-rw-------. 1 vagrant vagrant 12775936 Oct 19 11:45 heapster-influxdb-amd64_v1.3.3.tar
-rw-------. 1 vagrant vagrant 80657920 Oct 19 11:45 kube-addon-manager_v8.6.tar
-rw-------. 1 vagrant vagrant 186907136 Oct 19 11:44 kube-apiserver-amd64_v1.11.1.tar
-rw-------. 1 vagrant vagrant 155483648 Oct 19 11:44 kube-controller-manager-amd64_v1.11.1.tar
-rw-------. 1 vagrant vagrant 99635712 Oct 19 11:44 kube-proxy-amd64_v1.11.1.tar
-rw-------. 1 vagrant vagrant 57012736 Oct 19 11:44 kube-scheduler-amd64_v1.11.1.tar
-rw-------. 1 vagrant vagrant 123058176 Oct 19 11:44 kubernetes-dashboard-amd64_v1.10.0.tar
-rw-------. 1 vagrant vagrant 419246592 Oct 19 11:44 nginx-ingress-controller_0.19.0.tar
-rw-------. 1 vagrant vagrant 754176 Oct 19 11:45 pause_3.1.tar
-rw-------. 1 vagrant vagrant 35672064 Oct 19 11:45 registry_2.6.1.tar
-rw-------. 1 vagrant vagrant 80827392 Oct 19 11:45 storage-provisioner_v1.8.1.tar
-rw-------. 1 vagrant vagrant 74257408 Oct 19 11:44 tiller_v2.11.0.tar
[vagrant@offline-kube image]$ for file in *; do
> #echo $file
> docker load -i "${file}"
> done
5bef08742407: Loading layer [==================================================>] 4.221 MB/4.221 MB
594f5d257cbe: Loading layer [==================================================>] 9.335 MB/9.335 MB
53cb05deeb1b: Loading layer [==================================================>] 32.66 MB/32.66 MB
Loaded image: k8s.gcr.io/coredns:1.1.3
(省略)
ebf12965380b: Loading layer [==================================================>] 4.464 MB/4.464 MB
40c8df9d5f21: Loading layer [==================================================>] 6.006 MB/6.006 MB
9901d78f5d18: Loading layer [==================================================>] 32.06 MB/32.06 MB
73efe6a41873: Loading layer [==================================================>] 31.7 MB/31.7 MB
Loaded image: gcr.io/kubernetes-helm/tiller:v2.11.0
[vagrant@offline-kube image]$
Minikubeの起動
準備ができたので起動する。
sudo -i
minikube start --vm-driver=none --kubernetes-version=v1.11.1
[root@offline-kube ~]# minikube start --vm-driver=none --kubernetes-version=v1.11.1
Starting local Kubernetes v1.11.1 cluster...
Starting VM...
Getting VM IP address...
Moving files into cluster...
Setting up certs...
Connecting to cluster...
Setting up kubeconfig...
Starting cluster components...
Kubectl is now configured to use the cluster.
===================
WARNING: IT IS RECOMMENDED NOT TO RUN THE NONE DRIVER ON PERSONAL WORKSTATIONS
The 'none' driver will run an insecure kubernetes apiserver as root that may leave the host vulnerable to CSRF attacks
When using the none driver, the kubectl config and credentials generated will be root owned and will appear in the root home directory.
You will need to move the files to the appropriate location and then set the correct permissions. An example of this is below:
sudo mv /root/.kube $HOME/.kube # this will write over any previous configuration
sudo chown -R $USER $HOME/.kube
sudo chgrp -R $USER $HOME/.kube
sudo mv /root/.minikube $HOME/.minikube # this will write over any previous configuration
sudo chown -R $USER $HOME/.minikube
sudo chgrp -R $USER $HOME/.minikube
This can also be done automatically by setting the env var CHANGE_MINIKUBE_NONE_USER=true
Loading cached images from config file.
[root@offline-kube ~]#
addonを有効にする
[root@offline-kube ~]# minikube addons enable heapster
heapster was successfully enabled
[root@offline-kube ~]# minikube addons enable ingress
ingress was successfully enabled
[root@offline-kube ~]# minikube addons enable registry
registry was successfully enabled
[root@offline-kube ~]#
[root@offline-kube ~]# minikube addons list
- addon-manager: enabled
- coredns: enabled
- dashboard: enabled
- default-storageclass: enabled
- efk: disabled
- freshpod: disabled
- heapster: enabled
- ingress: enabled
- kube-dns: disabled
- metrics-server: disabled
- nvidia-driver-installer: disabled
- nvidia-gpu-device-plugin: disabled
- registry: enabled
- registry-creds: disabled
- storage-provisioner: enabled
[root@offline-kube ~]#
稼働確認。
[root@offline-kube ~]# kubectl get po -n kube-system
NAME READY STATUS RESTARTS AGE
coredns-99b9bb8bd-q8qm2 1/1 Running 0 14m
default-http-backend-ddc5ff66b-htpf8 1/1 Running 0 11m
etcd-minikube 1/1 Running 0 14m
heapster-plns5 1/1 Running 0 12m
influxdb-grafana-n6p5j 2/2 Running 0 12m
kube-addon-manager-minikube 1/1 Running 0 14m
kube-apiserver-minikube 1/1 Running 0 13m
kube-controller-manager-minikube 1/1 Running 0 14m
kube-proxy-j2ksf 1/1 Running 0 14m
kube-scheduler-minikube 1/1 Running 0 14m
kubernetes-dashboard-7db4dc666b-22rch 1/1 Running 0 14m
nginx-ingress-controller-89797c44c-kfczg 1/1 Running 0 11m
registry-ggdmt 1/1 Running 0 11m
storage-provisioner 1/1 Running 0 14m
[root@offline-kube ~]#
Helmの初期化
Helmの初期化を実行する。インターネットに行こうとして失敗する。
[root@offline-kube ~]# helm init
Creating /root/.helm
Creating /root/.helm/repository
Creating /root/.helm/repository/cache
Creating /root/.helm/repository/local
Creating /root/.helm/plugins
Creating /root/.helm/starters
Creating /root/.helm/cache/archive
Creating /root/.helm/repository/repositories.yaml
Adding stable repo with URL: https://kubernetes-charts.storage.googleapis.com
Error: Looks like "https://kubernetes-charts.storage.googleapis.com" is not a valid chart repository or cannot be reached: Get https://kubernetes-charts.storage.googleapis.com/index.yaml: dial tcp: lookup kubernetes-charts.storage.googleapis.com on [::1]:53: read udp [::1]:37958->[::1]:53: read: connection refused
[root@offline-kube ~]#
空のリポジトリー定義ファイルを作成してもう一度実行。
touch /root/.helm/repository/repositories.yaml
[root@offline-kube ~]# touch /root/.helm/repository/repositories.yaml
[root@offline-kube ~]# helm init
Updating repository file format...
$HELM_HOME has been configured at /root/.helm.
Tiller (the Helm server-side component) has been installed into your Kubernetes Cluster.
Please note: by default, Tiller is deployed with an insecure 'allow unauthenticated users' policy.
To prevent this, run `helm init` with the --tiller-tls-verify flag.
For more information on securing your installation see: https://docs.helm.sh/using_helm/#securing-your-helm-installation
Happy Helming!
[root@offline-kube ~]#
tillerのPodが稼働していることを確認。
[root@offline-kube ~]# kubectl get po -n kube-system
NAME READY STATUS RESTARTS AGE
coredns-99b9bb8bd-q8qm2 1/1 Running 0 18m
default-http-backend-ddc5ff66b-htpf8 1/1 Running 0 16m
etcd-minikube 1/1 Running 0 18m
heapster-plns5 1/1 Running 0 17m
influxdb-grafana-n6p5j 2/2 Running 0 17m
kube-addon-manager-minikube 1/1 Running 0 18m
kube-apiserver-minikube 1/1 Running 0 18m
kube-controller-manager-minikube 1/1 Running 0 18m
kube-proxy-j2ksf 1/1 Running 0 19m
kube-scheduler-minikube 1/1 Running 0 18m
kubernetes-dashboard-7db4dc666b-22rch 1/1 Running 0 18m
nginx-ingress-controller-89797c44c-kfczg 1/1 Running 0 16m
registry-ggdmt 1/1 Running 0 16m
storage-provisioner 1/1 Running 0 18m
tiller-deploy-7f4974b9c8-zh2vf 1/1 Running 0 3m
[root@offline-kube ~]#
以上で一応完了なはず。