Pod 可以通過 Volume 或者環境變量的方式使用 Secret,今天先學習 Volume 方式。
Pod 的配置文件如下所示:
① 定義 volume foo
,來源為 secret mysecret
。
② 將 foo
mount 到容器路徑 /etc/foo
,可指定讀寫權限為 readOnly
。
創建 Pod 並在容器中讀取 Secret:
可以看到,Kubernetes 會在指定的路徑 /etc/foo
下為每條敏感數據創建一個文件,文件名就是數據條目的 Key,這里是 /etc/foo/username
和 /etc/foo/password
,Value 則以明文存放在文件中。
我們也可以自定義存放數據的文件名,比如將配置文件改為:
這時數據將分別存放在 /etc/foo/my-group/my-username
和 /etc/foo/my-group/my-password
中。
以 Volume 方式使用的 Secret 支持動態更新:Secret 更新后,容器中的數據也會更新。
將 password 更新為 abcdef
,base64 編碼為 YWJjZGVm
更新 Secret。
幾秒鍾或,新的 password 會同步到容器。
以上是通過 Volume 使用 Secret,下節我們會學習通過環境變量使用 Secret。
書籍:
1.《每天5分鍾玩轉Kubernetes》
https://item.jd.com/26225745440.html
2.《每天5分鍾玩轉Docker容器技術》
https://item.jd.com/16936307278.html
3.《每天5分鍾玩轉OpenStack》
https://item.jd.com/12086376.html