为了账号安全,请及时绑定邮箱和手机立即绑定

Kubernetes中配置Secret来存储各种私密凭据

标签:
Kubernetes

建议先关注、点赞、收藏后再阅读。

图片描述

Kubernetes中有四种常用的Secret类型:

1. Opaque Secrets:

以base64编码的任意数据。它们是最常见的Secret类型,可以存储任何凭据,如用户名密码、API密钥或TLS证书。

apiVersion: v1
kind: Secret
metadata:
    name: my-secret
type: Opaque
data:
    username: dXNlcm5hbWU=
    password: cGFzc3dvcmQ=

2. Service Account Secrets:

用于自动绑定到Pod中的ServiceAccount。Kubernetes会自动为Pod中所使用的ServiceAccount生成一个令牌,可以通过此令牌来与API服务器进行认证和授权。

apiVersion: v1
kind: ServiceAccount
metadata:
    name: my-service-account
---
apiVersion: v1
kind: Secret
metadata:
    name: my-service-account-token
    annotations:
    kubernetes.io/service-account.name: my-service-account
type: kubernetes.io/service-account-token

3. TLS Secrets:

用于存储TLS证书和密钥。TLS证书可以用于通过HTTPS提供服务,或用于与其他服务进行安全通信。

apiVersion: v1
kind: Secret
metadata:
    name: tls-secret
type: kubernetes.io/tls
data:
    tls.crt: <base64-encoded-certificate>
    tls.key: <base64-encoded-key>

4. Dockercfg Secrets:

用于存储Docker认证配置,以便在使用私有Docker镜像库时进行身份验证。

apiVersion: v1
kind: Secret
metadata:
    name: docker-secret
type: kubernetes.io/dockercfg
data:
    .dockerconfigjson: <base64-encoded-config-json>

注意:以上示例中的base64编码值是为了方便演示,实际使用时需要进行正确的base64编码。

这些Secrets可以通过Kubernetes API Server进行创建和管理,并可以在Pod、Deployment、StatefulSet等资源中引用和使用。例如,可以通过将Secret挂载为volume或注入到Pod的环境变量中,来将凭据传递给应用程序。

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消