1.建立ConfigMap元件:
直接開始建立ConfigMap的Configuration檔案:
而傳入ConfigMap的data區塊提供整個檔案內容的方式如下:
目前先完成以下就好:
2.建立Secret元件:
開始建立Secret元件的yaml檔:
先建立以下內容:
所以開另一個putty worker1視窗:
當初有在建置worker時,有寫幾個建置用的sh檔,拿來假裝使用
所以直接把上述這個檔做base64加密!!(記得移除換行)
把上面加密後並省去換行符號的內容貼過去:
3.建立deployment元件:
開始建立deployment元件的yaml檔:
基本先定義以下內容:
接著開始嘗試引入file形式的ConfigMap & Secret,透過Volume
最後當然是再把內容印出來,再次改寫為:
所以實際要印出路徑上的檔案,則是要再改為:
因為前面還沒把ConfigMap,Secret的file版元件建起來,所以這邊就一個個來:
接著按下deployment元件的建立:
最後講師重點概念補充:
上面完成了ConfigMap & Secret元件的建立後
隨後透過deployment建立的Pod來取用ConfigMap & Secret的內容
但是此時當我們直接地異動ConfigMap & Secret的內容
既有的Pod將還是使用到舊的ConfigMap & Secret的內容
除非將Pod重啟,才會reload到全新的ConfigMap & Secret的內容
以下做個實驗:
首先移除my-secret-file.yaml裡面的value內容:
用另一個putty建立一個全新內容:
所以需要重新啟動Pod,簡單做法是Pod一個個delete
讓deployment元件去重啟
但是假設今天Pod一堆,則有個適合得全部重啟指令可以執行以下:
kubectl rollout restart deployment/{deployment元件名}
並且這邊還有提供rollout狀態查詢指令,執行:
kubectl rollout status deployment/{deployment元件名}
最後當然就是確認Pod log
由於作筆記關係,Pod其實有執行完畢掛掉重啟了...(Pod name會不同)
至此就完成這篇的技術筆記
這邊最後還是把這個deployment給刪了: