Minikube チュートリアルをやってみる
kubernetes
Published: 2019-10-25

やったこと

Hello Minikube のチュートリアルをやります。

Mac のローカル環境で試します。

調査

Minicube クラスタ作成

$ minikube start
$ minikube dashboard

Deployment (Pod) 作成

$ kubectl create deployment hello-node --image=gcr.io/hello-minikube-zero-install/hello-node
deployment.apps/hello-node created

Deployment

Kubernetesの Deployment はPodの状態を確認し、Podのコンテナが停止した場合には再起動します。

$ kubectl get deployments
NAME         READY   UP-TO-DATE   AVAILABLE   AGE
hello-node   0/1     1            0           9s

pods

KubernetesのPod は、コンテナの管理やネットワーキングの目的でまとめられた、1つ以上のコンテナのグループです。

$ kubectl get pods
NAME                          READY   STATUS              RESTARTS   AGE
hello-node-7676b5fb8d-shsvh   0/1     ContainerCreating   0          41s

Service 作成

コンテナを仮想ネットワークの外部からアクセスできるようにするため、サービスを作成する必要があります。

$ kubectl expose deployment hello-node --type=LoadBalancer --port=8080
service/hello-node exposed

確認

$ kubectl get services
NAME         TYPE           CLUSTER-IP      EXTERNAL-IP   PORT(S)          AGE
hello-node   LoadBalancer   10.109.94.113   <pending>     8080:32678/TCP   24s
kubernetes   ClusterIP      10.96.0.1       <none>        443/TCP          36m

ブラウザが開きます

$ minikube service hello-node
|-----------|------------|-------------|-----------------------------|
| NAMESPACE |    NAME    | TARGET PORT |             URL             |
|-----------|------------|-------------|-----------------------------|
| default   | hello-node |             | http://192.168.99.102:32678 |
|-----------|------------|-------------|-----------------------------|
🎉  Opening kubernetes service  default/hello-node in default browser...

おまけ

Katacoda はブラウザから Docker や Kubernetes を試すことが出来ます。

参考