分类: 云计算
2018-04-20 05:03:30
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》
2.《每天5分钟玩转Docker容器技术》
3.《每天5分钟玩转OpenStack》