準備
brew cask install virtualbox
brew cask install minikube
minikubeの起動
minikube config set memory 4096 # メモリを拡張
minikube config set cpus 12 # CPUを拡張
minikube start
確認する
kubectl get po -A
出力↓
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system coredns-5c98db65d4-2qt2f 1/1 Running 1 105s
kube-system coredns-5c98db65d4-zlrwk 1/1 Running 1 105s
kube-system etcd-minikube 1/1 Running 0 51s
kube-system kube-addon-manager-minikube 1/1 Running 0 36s
kube-system kube-apiserver-minikube 1/1 Running 0 44s
kube-system kube-controller-manager-minikube 1/1 Running 0 31s
kube-system kube-proxy-8k7zg 1/1 Running 0 105s
kube-system kube-scheduler-minikube 1/1 Running 0 42s
kube-system kubernetes-dashboard-7b8ddcb5d6-9ns64 1/1 Running 0 103s
kube-system storage-provisioner 1/1 Running 0 103s
こうなっていればk8sのローカルクラスタは恐らく正常に機能している。
dashboardの起動
minikube dashboard
動作確認
hello-minikubeコンテナの起動
kubectl run hello-minikube --image=k8s.gcr.io/echoserver:1.4 --port=8080
hello-minikubeデプロイメントをNodePortのサービスとして公開
kubectl expose deployment hello-minikube --type=NodePort
clusterIPはクラスタ内でIPアドレスが割り当てられます。クラスタ内部での通信しかできません。
NodePortはk8sノードのポートをランダムに選択し外部から接続できるようにします。
hello-minikubeサービスのURLを取得
ローカルクラスタで起動しているサービスのURLを取得する。自動的にデフォルトブラウザが起動してURLが開かれる。
minikube service hello-minikube
成功すると下記のような画面が表示される。
