Node,中文可以稱為節點
基本上,每個Cluster,都是由一個Master Node及多個worker nodes組成
Master Node
可以理解為cluster控制器(controller)
這裏負責控制worker node的行為
例如:這個node太忙了,要把裡面的服務從nodeA搬到nodeB之類的
或是 有一個排程要準備啟動囉,他會通知相關的服務啟動
在GKE中,master node是google幫你代管的
因此這部分你不用管(也管不到)
但是GKE會提供你一個master node的對外ip讓你可以連到他
然後再透過kubectl的指令去控制
Worker Node
就是cluster中的每個工作節點
在GKE中的實作,就是指每一台instance
每個cluster可以接多組的node-pools,一個node-pool中可以有多個nodes
因此Google實作kubernetes的方式
node-pools=instance groups
node=instance
實作時間
看不懂我在說什麼嗎XD?
那你可以去到GCP的 Kubernetes engine > Clusters 裡面
去建立一個cluster看看
什麼都不用輸入都用預設值就好
當建立起來完成後,再去到
Compute Engine > instance groups 及 Compute Engine > VM instances
你就會看到對應的resource已經產生了
ps. 做完實驗記得砍掉唷~不然很貴~
你可以透過建立cluster時,要不要設定為regional來做HA
當然,如果是官方建議,當然是要做。
其他create cluster時的注意事項
- 建議最少開一台的n1-standard-1比較好。
(除非是你在做實驗,只是想看一些參數或其他相關變化,那可以開一下g1-small。不然就算是一般的測試環境,還是建議要開n1-standard-1。若只是開一下就好的,可以只設定一個zone然後一台機器;但若是想要當作測試環境給大家共用,則還是建議超過一台會比較好。曾經遇過因為要省錢開太小的測試環境,然後隨便兩個pod就把整個記憶體/CPU塞爆,然後整個cluster變得怪怪的狀況) - 千萬不要直接操作Node。
(若想要操作Node,建議還是使用頁面的功能或是gcloud語法去操作,以避免調了一個設定壞掉造成整個cluster運作不正常)
以上,有問題歡迎討論唷~ 有錯也歡迎指正 :)