やったこと
Kubernetes のチュートリアルをやります。
Mac のローカル環境で試します。
調査
Pod
- 共有ストレージ(ボリューム)
- ネットワーキング(クラスタに固有のIPアドレス)
- コンテナのイメージバージョンや使用するポートなどの、各コンテナをどう動かすかに関する情報
Node
Podは常にNode上で動作します。NodeはKubernetesではワーカーマシンであり、クラスタによって仮想、物理マシンのどちらであってもかまいません。
チュートリアル
$ kubectl describe pods
※ 長いので出力結果は省略
$ kubectl proxy
Starting to serve on 127.0.0.1:8001
$ export POD_NAME=$(kubectl get pods -o go-template --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}')
$ echo Name of the Pod: $POD_NAME
Name of the Pod: kubernetes-bootcamp-69fbc6f4cf-rfvs5
$ kubectl exec $POD_NAME env
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
HOSTNAME=kubernetes-bootcamp-69fbc6f4cf-rfvs5
KUBERNETES_PORT_443_TCP_PORT=443
KUBERNETES_PORT_443_TCP_ADDR=10.96.0.1
KUBERNETES_SERVICE_HOST=10.96.0.1
KUBERNETES_SERVICE_PORT=443
KUBERNETES_SERVICE_PORT_HTTPS=443
KUBERNETES_PORT=tcp://10.96.0.1:443
KUBERNETES_PORT_443_TCP=tcp://10.96.0.1:443
KUBERNETES_PORT_443_TCP_PROTO=tcp
NPM_CONFIG_LOGLEVEL=info
NODE_VERSION=6.3.1
HOME=/root
コンテナに入る
$ kubectl exec -ti $POD_NAME bash
@コンテナ
# curl localhost:8080
Hello Kubernetes bootcamp! | Running on: kubernetes-bootcamp-69fbc6f4cf-rfvs5 | v=1
ログ確認
$ kubectl logs $POD_NAME
Kubernetes Bootcamp App Started At: 2019-10-27T06:22:01.080Z | Running On: kubernetes-bootcamp-69fbc6f4cf-rfvs5
Running On: kubernetes-bootcamp-69fbc6f4cf-rfvs5 | Total Requests: 1 | App Uptime: 2741.92 seconds | Log Time: 2019-10-27T07:07:43.000Z