每个namespace下有一个名为default的默认的ServiceAccount对象 kubectl get Secret
ServiceAccount里有一个名为Tokens的可以作为Volume一样被Mount到Pod里的Secret,当Pod启动时这个Secret会被自动Mount到Pod的指定目录下,用来协助完成Pod中的进程访问API Server时的身份鉴权过程。 kubectl get pods -o yaml
Opaque Secret 其value为base64编码后的值
从文件中创建Secret
如果密码具有特殊字符,则需要使用 \ 字符对其进行转义
默认情况下 kubectl get和kubectl describe 为了安全是不会显示密码的内容,可以通过以下方式查看:
练习:
编写一个 secret 对象
vim mysecret.yaml kubectl create -f mysecret.yaml
将Secret挂载到Volume中
vim secret1.yaml kubectl create -f secret1.yaml kubectl exec mysecret -- cat /secret/password
向指定路径映射 secret 密钥
vim secret2.yaml
将Secret设置为环境变量
vim secret-env.yamlkubectl create -f secret-env.yaml kubectl exec secret-env env