- 本來是沒打算把label拉一個筆記出來的,但每次創建一個新的環境都會用到,卻又不是很常建立新環境,所以就寫囉。
大家都知道K8S是由一個Master跟多個Node去做叢集,當站台依附在其中一個node上時,即便有做反向代理(ingress),外部要得知host所在的Ip還是得靠DNS,而在這之前我的認知是將Ip通通指向Master其餘的K8S會幫我們處裡掉,但我錯了,所以在這關卡了很久,於是乎得指定站台部屬到我們DNS有指向的node才行,這可以靠node的label來協助我們辦到。
1
2
3
4
5
6
7
8# 檢視node的label
kubectl get node --show-labels
# 新增label
kubectl label node <node name> <label>=<value>
# 刪除label
kubectl label node <node name> <label>-deployment.yaml裡面加上nodeSelector跟K8S說要部屬到含有指定標籤的ndoe
1
2
3
4
5spec:
templete:
spec:
nodeSelector:
<label>: "<label>"