k8s创建secret加密数据并使用

创建加密数据保存在etcd中,使其他容器可以读取到这个加密数据

创建secret

  • 加密数据的yaml文件

secret.yaml

apiVersion: v1
kind: Secret
metadata:
  name: mysecret
type: Opaque
data:
  username: YWRtaW4=
  password: MWYyZDFlMmU2N2Rm
  • ​创建pod

kubectl create -f secret.yaml

  • 查看创建的secret

kubectl get secret

image.png

使用secret

创建一个pod来使用刚刚创建的secret数据

  • 通过变量的方式来获取加密数据的方法

yaml配置

secret-var.yaml

apiVersion: v1
kind: Pod
metadata:
  name: mypod
spec:
  containers:
  - name: nginx
    image: nginx
    env:
      - name: SECRET_USERNAME
        valueFrom:
          secretKeyRef:
            name: mysecret
            key: username
      - name: SECRET_PASSWORD
        valueFrom:
          secretKeyRef:
            name: mysecret
            key: password

关键配置:

                image.png

    • 创建应用

kubectl create -f secret-var.yaml

    • 进入容器内部,获取加密数据

kubectl exec -it mypod /bin/bash

image.png

  • 以Volume数据卷的形式挂载到容器中

yaml配置文件

secret-vol.yaml

apiVersion: v1
kind: Pod
metadata:
  name: mypod
spec:
  containers:
  - name: nginx
    image: nginx
    volumeMounts:
    - name: foo
      mountPath: "/etc/foo"
      readOnly: true
  volumes:
  - name: foo
    secret:
      secretName: mysecret

关键配置

          image.png

加密的数据被挂载到容器中 /etc/foo 目录下

创建应用

kubectl create -f secret-vol.yaml

进入容器查看数据

kubectl exec -it mypod /bin/bash

image.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值