【k8s应用管理】kubernetes 配置资源管理

配置资源管理

Secret 是一种用于存储敏感信息(如密码、令牌、密钥等)的资源对象。与直接将敏感信息存储在 Pod 或镜像中相比,使用 Secret 可以更好地控制数据的访问权限,减少数据暴露的风险。

Secret 的四种类型

  1. kubernetes.io/service-account-token
    • 由 Kubernetes 自动创建,用于访问 APIServer。
    • Pod 默认使用这个 Secret 与 APIServer 通信。
    • 自动挂载到 Pod 的 /var/run/secrets/kubernetes.io/serviceaccount 目录中。
  2. Opaque
    • 默认的 Secret 类型,使用 base64 编码存储用户自定义的敏感数据(如密码、密钥等)。
  3. kubernetes.io/dockerconfigjson
    • 用于存储私有 Docker Registry 的认证信息。
  4. kubernetes.io/tls
    • 用于存储 TLS 证书和私钥信息。

创建 Secret 的两种方式

1. 使用 kubectl create secret 命令创建

echo -n 'zhangsan' > username.txt
echo -n 'abc1234' > password.txt

kubectl create secret generic mysecret --from-file=username.txt --from-file=password.txt

查看 Secret:

kubectl get secrets
kubectl describe secret mysecret

2. 使用 base64 编码内容创建

echo -n zhangsan | base64
echo -n abc1234 | base64

创建 secret.yaml 文件:

apiVersion: v1
kind: Secret
metadata:
  name: mysecret1
type: Opaque
data:
  username: emhhbmdzYW4K=
  password: YWJjMTIzNAo==

应用 YAML 文件:

kubectl create -f secret.yaml

查看 Secret 的详细信息:

kubectl get secret mysecret1 -o yaml

使用 Secret 的两种方式

1. 将 Secret 挂载到 Volume 中

创建 secret-test.yaml 文件:

apiVersion: v1
kind: Pod
metadata:
  name: mypod
spec:
  containers:
  - name: nginx
    image: nginx
    volumeMounts:
    - name
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值