CentOS7 minimal で Kubernetes ~part 5~
GoogleCloudPlatformでGuestBookを動かしてみる
(もうCentOSじゃありません。)
gcp に container cluseter を作成
$ gcloud beta container clusters create guestbook --num-nodes 3 Creating cluster guestbook...done. Created [https://container.googleapis.com/v1/projects/kube-1043/zones/asia-east1-b/clusters/guestbook]. kubeconfig entry generated for guestbook. NAME ZONE MASTER_VERSION MASTER_IP MACHINE_TYPE STATUS guestbook asia-east1-b 1.0.3 130.211.246.179 n1-standard-1 RUNNING
クラスタを確認する。
$ gcloud beta container clusters list
NAME ZONE MASTER_VERSION MASTER_IP MACHINE_TYPE STATUS
guestbook asia-east1-b 1.0.3 130.211.246.179 n1-standard-1 RUNNING
nodeの確認
$ kubectl get nodes NAME LABELS STATUS gke-guestbook-32b71c9c-node-2sd6 kubernetes.io/hostname=gke-guestbook-32b71c9c-node-2sd6 Ready gke-guestbook-32b71c9c-node-88j1 kubernetes.io/hostname=gke-guestbook-32b71c9c-node-88j1 Ready gke-guestbook-32b71c9c-node-kgjq kubernetes.io/hostname=gke-guestbook-32b71c9c-node-kgjq Ready
service はまだない。(kubernetesのサービスのみ)
$ kubectl get services NAME LABELS SELECTOR IP(S) PORT(S) kubernetes component=apiserver,provider=kubernetes <none> 10.215.240.1 443/TCP
redis のコントローラーを作成
$ kubectl create -f redis-master-controller.json
replicationcontrollers/redis-master
pod の確認
$ kubectl get -o wide pods NAME READY STATUS RESTARTS AGE NODE redis-master-x8dsk 1/1 Running 0 2m gke-guestbook-32b71c9c-node-2sd6
redis のサービス作成
$ kubectl create -f redis-master-service.json
services/redis-master
サービス確認
$ kubectl get service -l name=redis-master NAME LABELS SELECTOR IP(S) PORT(S) redis-master name=redis-master name=redis-master 10.215.243.107 6379/TCP
コントローラー作成
$ kubectl create -f redis-worker-controller.json
replicationcontrollers/redis-slave
サービス作成
$ kubectl create -f redis-worker-service.json
services/redis-slave
frontend のコントローラー作成
$ kubectl create -f frontend-controller.json
replicationcontrollers/frontend
サービス作成
$ kubectl create -f frontend-service.json
services/frontend
サービス確認
$ kubectl get services NAME LABELS SELECTOR IP(S) PORT(S) frontend name=frontend name=frontend 10.215.253.56 80/TCP kubernetes component=apiserver,provider=kubernetes <none> 10.215.240.1 443/TCP redis-master name=redis-master name=redis-master 10.215.243.107 6379/TCP redis-slave name=redis-slave name=redis-slave 10.215.248.252 6379/TCP
ロードバランサーのIPアドレス確認
$ kubectl describe services frontend | grep "LoadBalancer Ingress" LoadBalancer Ingress: 130.211.249.217
サービスを確認してもロードバランサーのIPアドレスが表示される
$ kubectl get services NAME LABELS SELECTOR IP(S) PORT(S) frontend name=frontend name=frontend 10.215.253.56 80/TCP 130.211.249.217 kubernetes component=apiserver,provider=kubernetes10.215.240.1 443/TCP redis-master name=redis-master name=redis-master 10.215.243.107 6379/TCP redis-slave name=redis-slave name=redis-slave 10.215.248.252 6379/TCP
ブラウザでアクセス
http://130.211.249.217
Kubernetes のweb ui にアクセスしてみる
ID/PWが必要なので確認する。
$ gcloud beta container clusters list --zone asia-east1-b NAME ZONE MASTER_VERSION MASTER_IP MACHINE_TYPE STATUS guestbook asia-east1-b 1.0.3 130.211.246.179 n1-standard-1 RUNNING $ $ gcloud beta container clusters describe guestbook clusterIpv4Cidr: 10.212.0.0/14 createTime: '2015-08-21T19:59:51+00:00' currentMasterVersion: 1.0.3 currentNodeVersion: 1.0.3 endpoint: 130.211.246.179 initialClusterVersion: 1.0.3 initialNodeCount: 3 instanceGroupUrls: - https://www.googleapis.com/replicapool/v1beta2/projects/kube-1043/zones/asia-east1-b/instanceGroupManagers/gke-guestbook-32b71c9c-group loggingService: logging.googleapis.com masterAuth: clientCertificate: LS0t…S0tLQo= clientKey: LS0tS…S0tLQo= clusterCaCertificate: LS0t…LS0K password: 'password' username: 'username' monitoringService: monitoring.googleapis.com name: guestbook network: default nodeConfig: diskSizeGb: 100 machineType: n1-standard-1 oauthScopes: - https://www.googleapis.com/auth/compute - https://www.googleapis.com/auth/devstorage.read_only - https://www.googleapis.com/auth/logging.write - https://www.googleapis.com/auth/monitoring nodeIpv4CidrSize: 24 selfLink: https://container.googleapis.com/v1/projects/162560360030/zones/asia-east1-b/clusters/guestbook servicesIpv4Cidr: 10.215.240.0/20 status: RUNNING zone: asia-east1-b
https://130.211.246.179/ui
にアクセスすると
https://130.211.246.179/api/v1/proxy/namespaces/kube-system/services/kube-ui/#/dashboard/
にリダイレクトされて