🧑‍🏫
liualexiang
  • Introduction
  • Azure
    • AKS Basic
    • AKS Spark
    • AZ ACR SYNC
    • Azure CMI SDWAN
    • Azure LB DeepDive
      • Azure LB DeepDive
    • Azure Service Principal Basic
    • Azure Internal VM Network Connectivity
      • Azure Internal VM Network Connectivity
    • Azure Cli Build
    • Azure Vm Memory Monitor
  • Blockchain
    • BTC
  • CRISPR
    • 使用Parallel_Cluster提升CRISPA效率
  • OpenSource
    • ElasticSearch
      • ES Get Started
      • ES Search Query
      • Kibana 可视化
      • Logstash配置
    • Ansible 基础
    • Infra As Code
      • Pulumi Get Started
      • Terraform Basic
    • ZooKeeper 基础
    • RPC与REST
    • 使用Python申请大量内存测试
    • 使用TPC_DS产生压测数据
    • Superset
      • Superset部署手册
    • 代码扫描
    • Git
      • Git Basic
      • Github Action Basic
      • Gitlab与AzureAD集成
      • Gitbook 基础教程
    • K8S
      • enter_node
      • K8s X509 Client Cert
      • K8s Basic
      • K8s Oidc
      • Docker 基础
      • helm基础
      • K8S_Secrets管理
      • 深入了解K8S
      • 混沌工程
      • Istio
      • 生态
      • CRD开发
      • k8s网络
    • Cloud_Custodian
    • Jenkins Basic
    • Nginx
    • ETCD
    • 正则
    • VictoriaMetrics
    • Kafka
  • MySQL
    • MySQL 调优
  • Linux
    • SSH Tunnel 上网
    • 内存管理
    • 在Linux系统中通过LUKS加密磁盘
    • 量子计算 Basic
    • IO多路复用
    • Iptables
    • tmux和screen
    • Systemd
    • OS 基础
    • jq基础
    • yum
    • neovim
  • Web
    • Html Css
    • Web部署
    • 缓存
  • Programming
    • 算法
      • 返回list中最大生序子序列长度
    • Python技巧
      • Python的语法糖
      • Python常用装饰器
      • AsyncIO基础
      • 自动化测试pytest
      • python中的下划线
      • 面向对象
      • Python的坑
      • Python配置文件管理
      • HTTP Stream Response
      • Python项目管理
    • 设计模式
      • 设计模式
      • 面向对象的思想
      • 编程概念
    • Go
      • Go 基础
      • Go常用功能
      • 结构体入门
    • 前端
    • Vue
    • NodeJS
  • Math
    • 多项式插值法
  • Security
    • HTTP常见攻击
    • 加密与签名
    • RSA
    • ECDSA
  • Solidity
    • Solidity基础
    • Blockchain Testnet Faucet
  • Tools
    • 视频处理ffmpeg
    • IDE配置
    • iTerm2美化
    • 密码管理
    • FRP配置
    • 工具集
由 GitBook 提供支持
在本页
  • K8S 原生的 Secrets
  • 使用云厂商的 sercrets manager或 key vault
  • 使用 bitnami 的 sealed-secrets
  1. OpenSource
  2. K8S

K8S_Secrets管理

上一页helm基础下一页深入了解K8S

最后更新于2年前

K8S 原生的 Secrets

如果使用 K8S 原生的Secrets,那么secrets将通过base64编码的方式存在 secrets中,这样不是很安全,尤其是无法将 secrets 的配置信息推送到 git 仓库里

使用云厂商的 sercrets manager或 key vault

在使用云厂商的secrets manager,或者 hashcorp的 key vault等产品的时候,可以通过 这个operator来储存secrets,这样yaml文件中,只需要指定云厂商的secerts 名字就可以了,云平台更新了 secrets 值,这个operator也会更新到 k8s 集群(可能有几秒的延迟)

使用 bitnami 的 sealed-secrets

如果没有用外部的 secrets manager,只有 k8s 的情况下,也可以通过 bitnami 的sealed secrets 将secrets 进行加密,这样只有在当前集群内才能解密这个secrets,将加密的secrets 放在其他地方也无法解密。

具体操作:需要在 k8s 集群中,安装sealed-secrets这个operator,同时本地安装kubeseal。在本地使用 kubectl create secrets的时候,通过管道和 kubeseal 对内容进行加密,生成新的 yaml文件,将这个yaml文件可以存储到 git仓库里,也无需担心其他人看到数据。然后再通过 argoCD 或 Flux 来做CD,部署到 K8S 里之后,就是解密后 base64编码的secrets 了

External Secrets Operator (external-secrets.io)
GitHub - bitnami-labs/sealed-secrets: A Kubernetes controller and tool for one-way encrypted Secrets