一、
引用>
秘密资源对象:解决了密码,令牌,密钥等敏感数据的配置问题,而不需要把这些敏感数据暴露到镜像或者Pod规范中.Secret可以以体积或者环境变量的方式使用。
用来保存一些敏感信息,比如数据库的用户名密码或者密钥。
秘密有三种类型:
1。服务帐户:用来访问Kubernetes API,由Kubernetes自动创建,并且会自动挂载到豆荚的/跑步/机密/kubernetes.io/serviceaccount目录中。
2.不透明:base64编码格式的秘密,用来存储密码,密钥等。
3. Kubernetes。io/dockerconfigjson:用来存储私有码头工人注册中心的认证信息。二,以实验测试的方式,创建4种秘密资源。
姓名:类=磅
密码:密码=www.com
创建2个吊舱,分别以挂载卷的方式,和以环境变量env的方式去使用,secret2,和secret4。<代码> 1)通过——文字(文字的): kubectl创建泛型* * lbssecret1秘密(创建秘密资源的名)* *——文字=类=磅——文字=密码=www.comww.com 泛型:通用的,一般的。加密方式。 查看秘密资源 5. kubectl得到秘密 6.名称类型数据时代 7.lbssecret1不透明2 24 s 使用描述可以查看秘密资源的详细信息。* *(可以看到是以密文的方式存储)* * 1 kubectl描述lbssecret1秘密 2.名称:lbssecret1 3.名称空间:默认 4.标签:& lt; none> 5.注释:& lt; none> 6. 7.类型:不透明的 8. 9.数据 10====11.类:3个字节#只能查看到数据的大小,无法查看到数据内容。 12.密码:7字节 2)通过——从文件(文件):(* *这种方式不推荐使用,需要将存储的数据写入到文件中,注意每个文件只能存储一个数据。)* * 回声磅在类 回声www.com祝辞密码 kubectl创建通用lbssecret2秘密——从文件=类——从文件=密码 查看: 1.kubectl描述秘密lbssecret2 2.名称:lbssecret2 3.名称空间:默认 4.标签:& lt; none> 5.注释:& lt; none> 6. 7.类型:不透明的 8. 9.数据 10====11.类:4字节 12.密码:8个字节 3)通过——from-env-file: * *(这种方式可以在同一个文件内写入多个数据。)* * vim lbs.txt 类=磅 密码=www.com(保存退出) kubectl创建通用mysecret3秘密——from-env-file=lbs.txt 查看: 1.kubectl描述秘密lbssecret3 2.名称:lbssecret3 3.名称空间:默认 4.标签:& lt; none> 5.注释:& lt; none> 6. 7.类型:不透明的 8. 9.数据 10====11.类:3个字节 12.密码:7字节 4)通过yaml配置文件的方式。(把需要保存的数据加密) 回声磅| base64 回声www.com | base64 vim lbssecret4.yaml apiVersion: v1 :秘密 元数据: 名称:mysecret4 数据: 类:#编译的磅 密码:#编译的www.com 执行文件: kubectl应用- f lbssecret4.yaml 1.kubectl描述秘密lbhsecret4 2.名称:lbhsecret4 3.名称空间:默认 4.标签:& lt; none> 5.注释: 6.类型:不透明的 7. 8.数据 9。====10.密码:8个字节 11.类:4字节代码><>强创建2个吊舱,分别以挂载的方式,和以环境变量的方式去使用,secret2,和secret4。强>
<代码> 1)以卷挂载的方式:使用lbssecret2。 vim pod1.yaml apiVersion: v1 :豆荚 元数据: 名称:lbspod1 规范: 容器: ——名称:lbspod busybox映像: 参数: ——/bin/sh - - - - - - - c 睡300000年 volumeMounts: ——名称:secret-lbs mountPath:“/etc/secret-lbs”挂在到舱容器内的路径 只读的:真 卷: ——名称:secret-lbs 秘密: secretName: lbssecret2 代码>执行yaml文件,查看豆荚状态:1。[root@master lbhsecret] # - f pod1 kubectl适用。yaml
br/> 1。[root@master lbhsecret] # - f pod1 kubectl适用。yaml
查看:
3。kubectl得到pod
4。姓名就绪状态重启年龄
5。lbspod1 1/1 0 26 s
运行进入豆荚内,挂载的路径中。使用猫查看类姓名,密码(猫类)查看数据是否挂载成功。(可以发现会自动帮助解密)
2)以环境变量的方式:使用lbssecret4。<代码> vim pod2.yaml apiVersion: v1 :豆荚 元数据: 名称:lbspod2 规范: 容器: ——名称:lbspod busybox映像: 参数: ——/bin/sh - - - - - - - c 睡300000年 env: ——名称:SECRET_CLASS #容器内的变量名 valueFrom: secretKeyRef: #提取环境变量的值 名称:lbssecret4 #调用秘密资源的lbssecret4 关键:调课时用lbssecret4对应的类的值 ——名称:SECRET_PASSWORD valueFrom: secretKeyRef: 名称:lbssecret2 关键:密码k8数据持久化之秘密