当前位置: 首页 > news >正文

【云原生】Kubernetes之Secret

使用 kubectl 管理 Secret

准备开始

你必须拥有一个 Kubernetes 的集群,同时你必须配置 kubectl 命令行工具与你的集群通信

创建 Secret

Secret 对象用来存储敏感数据,如 Pod 用于访问服务的凭据。例如,为访问数据库,你可能需要一个 Secret 来存储所需的用户名及密码

你可以通过在命令中传递原始数据,或将凭据存储文件中,然后再在命令行中创建 Secret。以下命令 将创建一个存储用户名 admin 和密码 TtAwpaj4Iy= 的 Secret
执行以下命令

kubectl create secret generic db-user-pass \--from-literal=username=admin \--from-literal=password='TtAwpaj4Iy'

说明:你必须使用单引号 ‘’ 转义字符串中的特殊字符,如 $、\、*、=和! 。否则,你的 shell 将会解析这些字符
1、将凭据保存到文件

echo -n 'admin' > ./username.txt
echo -n 'TtAwpaj4Iy=' > ./password.txt

-n 标志用来确保生成文件的文末没有多余的换行符。这很重要,因为当 kubectl 读取文件并将内容编码为 base64 字符串时,额外的换行符也会被编码。 你不需要对文件中包含的字符串中的特殊字符进行转义
2、在 kubectl 命令中传递文件路径

kubectl create secret generic db-user-pass \--from-file=./username.txt \--from-file=./password.txt

默认键名为文件名。你也可以通过 --from-file=[key=]source 设置键名,例如

kubectl create secret generic db-user-pass \--from-file=username=./username.txt \--from-file=password=./password.txt

验证 Secret

1、查看 Secret 是否已创建

kubectl get secrets

2、输出如下内容

NAME              TYPE       DATA      AGE
db-user-pass      Opaque     2         51s

3、查看secret详细信息

kubectl describe secret db-user-pass

解码 Secret

1、查看你所创建的 Secret 内容

kubectl get secret db-user-pass -o jsonpath='{.data}'

2、输出如下内容

{ "password": "UyFCXCpkJHpEc2I9", "username": "YWRtaW4=" }

3、解码 password 数据:

echo 'UyFCXCpkJHpEc2I9' | base64 --decode

编辑 Secret

kubectl edit secrets <secret-name>

要想删除一个 Secret,请执行以下命令:

kubectl delete secret db-user-pass
http://www.lryc.cn/news/96988.html

相关文章:

  • 细说小程序底部标签---【浅入深出系列006】
  • 【VUE】使用elementUI上传组件-提示不存在
  • Flutter Windows通过嵌入Native窗口实现渲染视频
  • MySQL学习笔记 ------ 库和表的管理
  • python中去除字符串中指定的字符
  • Java实现商品ID获取京东商品详情Desc商品描述数据方法
  • 1-高性能计算研究
  • swagger快速升级方案
  • sql中with as用法/with-as 性能调优/with用法
  • 大数据课程C5——ZooKeeper的应用组件
  • Redisson实现简单消息队列:优雅解决缓存清理冲突
  • php-golang-rpc 简单的jsonrpc实践
  • Apipost变量高亮展示,变量操作更流畅
  • SSIS对SQL Server向Mysql数据转发表数据 (完结)
  • vue+Element-ui实现树形组件、表格树
  • 【iPadOS 开发】打开 iPad 的开发者模式的方法
  • 矩阵对角线元素的和
  • 看了这篇文章,我也会用grid布局了
  • {“msg“:“invalid token“,“code“:401}
  • Qt Qml自定义模态对话框
  • 【前端知识】React 基础巩固(三十)——CSS编写方式
  • Langchain 集成 FAISS
  • 科技与人元宇宙论坛跨界对话
  • JAVA-生成二维码图片
  • 【iOS】iOS持久化
  • 基于Javaweb+Vue3实现淘宝卖鞋前后端分离项目
  • bat一键批量、有序启动jar
  • centos7安装mysql数据库详细教程及常见问题解决
  • C++ STL sort函数的底层实现
  • ICP算法和优化问题详细公式推导