สร้าง Kubernetes Cluster บน Google Cloud Platform
เนื่องจากเป็นโปรแกรมเมอร์งบจำกัด เพิ่งมีคนใจดีให้เครดิตมาลองเล่น GCP ก็เลยสร้าง Kubernetes Cluster ซะเลย ง่ายสุดก็เข้าไปกดคลิ๊กๆ แต่วันนี้จะมาลองทำบน command line ดู
จริงๆ ก็ทำตามขั้นตอนที่ลิงก์แหละ แต่สรุปมาให้
Creating a Cluster | Kubernetes Engine | Google Cloud
Google Cloud delivers secure, open, intelligent, and transformative tools to help enterprises modernize for today's…cloud.google.com
- ลง Command Line Tool ของ Google Cloud ชื่อว่า gcloud
brew cask install google-cloud-sdk
2. login ใช้ gcloud มันจะเปิดหน้า browser ขึ้นมาให้เราใส่ user/pass เข้าไป
gcloud auth login
เลือก Project ที่เราจะใช้ ดูรายชื่อ project ที่เรามีได้ที่นี่ https://console.cloud.google.com/cloud-resource-manager
gcloud config set project PROJECT_ID
3. สร้าง cluster
- machine type เลือกตามนี้ (ยากจนก็ใช้ g1-small, $14 ต่อเดือน)
- num_nodes ตามต้องการ แต่ default คือ 3
เลือกได้ว่าจะสร้างไว้ที่ zone เดียวหรือทั้ง region เลย ดูชื่อได้ ที่นี่
- zone ที่เราจะสร้าง REGION_NAME-ZONE_NAME
- region ที่เราจะสร้าง แต่ถ้าใส่ num_nodes ไปเท่าไหร่มันจะ x3
gcloud container clusters create CLUSTER_NAME --machine-type=g1-small --num-nodes=1 --zone=us-west1-a
สร้างอยู่นานเหมือนกัน (ประมาณสองสามนาที)
4. สร้าง config สำหรับ kubectl
จากนั้นเราก็สามารถสั่งให้มันไปสร้าง config ให้กับ
> brew install kubectl
> gcloud container clusters get-credentials CLUSTER_NAME --zone=us-west1-a
Fetching cluster endpoint and auth data.
kubeconfig entry generated for k8s.
5. kubectl
เสร็จหมดแล้ว ใช้ kubectl ได้เลย
kubectl get pods --all-namespaces | awk '{ print $2,$3 }'
NAME READY
event-exporter-v0.2.3-54f94754f4-j5m8s 2/2
fluentd-gcp-scaler-6d7bbc67c5-lrnz7 1/1
fluentd-gcp-v3.1.0-kxttm 2/2
heapster-v1.5.3-7bd845b96c-r5f8n 3/3
kube-dns-788979dc8f-8tpxm 4/4
kube-dns-autoscaler-79b4b844b9-v7v5f 1/1
kube-proxy-gke-k8s-default-pool-0c3f25d3-cpmt 1/1
l7-default-backend-5d5b9874d5-qsnwk 1/1
metrics-server-v0.2.1-7486f5bd67-xkrbb 2/2
สำหรับขา UI เข้าไปดูผ่าน UI ได้ที่นี่ https://console.cloud.google.com/kubernetes/list