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