Kubernetes详解——Secret创建

一、–from-literal参数创建

Secret创建的命令格式为:

kubectl create secret 【Secret类型】 【Secret名称】

但是根据给Secret指定数据方式的不同,我们可以有四种方法来创建Secret。
–from-literal参数可以在命令行中指定Secret具体内容。例如,执行命令:

kubectl create secret generic secret1 --from-literal=user=root --from-literal=password=root123



该命令执行结果如下:

从上图中可以看出,我们的Secret创建成功!

二、–from-file参数创建


除了使用–from-literal参数外,我们还可以使用–from-file参数从文件中指定Secret的具体内容。例如,我们创建username和password两个文件,并且向文件中写入内容,执行命令:

echo "root" > ./username
echo "root123" > ./password

之后,我们执行命令:

kubectl create secret generic secret2 --from-file=./username --from-file=./password 

该命令执行结果如下:

从上图中可以看出,我们的Secret创建成功!
使用这种类型创建时要注意,文件名为Secret的键,该文件中的具体内容为该键的值。

三、–from-env-file参数创建


–from-file参数可以允许我们将Secret的内容写入文件中,但是这种一个文件一个参数的方式还是比较麻烦。如果我们使用–from-env-file参数,就可以把Secret的所有内容写入一个文件中。
首先,我们创建env文件,并在文件中写入如下内容:

之后,我们执行命令:

kubectl create secret generic secret3 --from-env-file=env

该命令执行结果如下所示:

从上图中可以看出,我们也成功的创建了Secret。

四、清单创建


以上三种方式,我们都是使用命令行的方式来创建Secret,Secret其实也支持使用资源配置清单的方式来进行创建。但是Secret中存储的base64编码的信息,因此,我们在写资源配置清单的时候,我们首先要得到secret值得base64编码。
得到指定字符串的base64编码可以通过如下命令:

echo 【指定字符串】 | base64



例如,执行命令:

echo root | base64
echo root123 | base64

就可以得到root和root123的base64编码,如下所示:

在得到Secret值得base64编码后,我们就可以配置资源清单了,一个Secret的资源清单内容如下:

vim secret.yaml

apiVersion: v1
data:
  password: cm9vdDEyMwo=
  username: cm9vdAo=
kind: Secret
metadata:
  name: secret4
  namespace: default



该资源清单配置完成后如下所示:

之后,我们可以执行命令:

kubectl apply -f secret.yaml



创建该Secret,该命令执行结果如下:

从上图可以看出,我们的资源清单方式配置Secret成功!
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

清风 001

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值