千家信息网

secret

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,[root@master yaml]# mkdir secret[root@master yaml]# cd secret/Secret:用来保存一些敏感信息,比如数据库的用户名或者密钥。查看k8s自
千家信息网最后更新 2026年10月31日secret

[root@master yaml]# mkdir secret
[root@master yaml]# cd secret/

Secret:用来保存一些敏感信息,比如数据库的用户名或者密钥。

查看k8s自带的名称空间的密钥:

kubectl get s1ecrets -n kube-system

举例:保存数据1库的用户名和密码

​ 用户名:root1

​ 密码:123.com

第一种方法:

通过 --from-literal(文字的方式):

kubectl create secret generic (通用的,一般的) mysecret1 --from-literal=username=root --from-literal=password=123.com

第二种方法:

通过 --from-file(文件的方式):

[root@master secret]# echo root > username[root@master secret]# echo 123.com > password[root@master secret]# lspassword  username[root@master secret]# kubectl create secret generic mysecret2 --from-file=username --from-file=password secret/mysecret2 created

验证删除文件,创建的用户和密码还会存在吗?

[root@master secret]# rm -rf password username 

证明还存在

第三种方法:

通过 --from-env-file:

[root@master secret]# cat env.txt username=rootpassword=123.com[root@master secret]# kubectl create secret generic mysecret3 --from-env-file=env.txt secret/mysecret3 created

第四种方法:

通过yaml配置文件:

输出为yaml文件:

kubectl get secrets mysecret1 -o yaml

把需要保存的数据加密:

[root@master secret]# echo root | base64cm9vdAo=[root@master secret]# echo 123.com | base64MTIzLmNvbQo=

编写yaml文件:

[root@master secret]# vim secret4.yamlapiVersion: v1kind: Secretmetadata:  name: mysectet4data:  username: cm9vdAo=  password: MTIzLmNvbQo=[root@master secret]# kubectl apply -f secret4.yaml secret/mysectet4 created

解码:

[root@master secret]# echo -n cm9vdAo= | base64 --decode root[root@master secret]# echo -n MTIzLmNvbQo= | base64 --decode 123.com

如何来使用Secret资源:

第一种方法:

以Volume挂载的方式:

[root@master secret]# vim pod.yamlapiVersion: v1kind: Podmetadata:  name: mypodspec:  containers:  - name: mypod    image: busybox    args:      - /bin/sh      - -c      - sleep 300000    volumeMounts:    - name: secret-test      mountPath: "/etc/secret-test"      readOnly: true  volumes:  - name: secret-test    secret:      secretName: mysecret1[root@master secret]# kubectl apply -f pod.yaml pod/mypod created

查看是否挂在成功:

[root@master secret]# kubectl exec -it mypod /bin/sh/ # cd /etc/secret-test//etc/secret-test # lspassword  username/etc/secret-test # cat password 123.com/etc/secret-test # /etc/secret-test # cat username root/etc/secret-test # password与username文件只是只读文件,不能修改:/etc/secret-test # echo admin > username/bin/sh: can't create username: Read-only file system

第二种方式:

以环境变量方式:

[root@master secret]# cp pod.yaml pod_env.yaml [root@master secret]# vim pod_env.yamlapiVersion: v1kind: Podmetadata:  name: mypod2spec:  containers:  - name: mypod    image: busybox    args:      - /bin/sh      - -c      - sleep 300000    env:      - name: SECRET_USERNAME        valueFrom:          secretKeyRef:            name: mysecret2            key: username      - name: SECRET_PASSWORD        valueFrom:          secretKeyRef:            name: mysecret2            key: password[root@master secret]# kubectl apply -f pod_env.yaml pod/mypod2 created

[root@master secret]# kubectl exec -it mypod2 /bin/sh/ # echo $SECRET_PASSWORD123.com/ # echo $SECRET_USERNAMEroot
文件 方式 方法 用户 密码 数据 用户名 密钥 成功 信息 变量 只是 名称 数据库 文字 来使 环境 空间 资源 加密 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 咖啡 互联网科技股 上海睿民互联网科技有限公司 北京路客互联网科技有限公司 互联网科技资迅 上海互联网科技有限公司 广西互联网科技公司 顺网科技2021年互联网排名 隆华科技工业互联网 阿里巴巴算科技企业还是互联网 互联网时代科技改变生活 成都互联网科技公司工作好不好 银川新华互联网科技学校联系电话 企晟互联网信息科技有限公司 特约风豹互联网科技为什么扣费 城市宝互联网科技有限公司 广州有谷有贝互联网科技有限公司 济南小医互联网科技有限公司招聘 长沙易易互联网科技有限公司 互联网科技自媒体灵感 广州为想互联网科技有限公司 重生之互联网科技帝国 丰台科技园 互联网 科技伦理 互联网公司 顺网科技2021年互联网排名 广州优美互联网科技 广州恒生互联网科技有限 未来五年的互联网科技 上海乐五互联网科技有限公司 银川新华互联网科技学校原画
0