k8s之 应用程序配置文件存储ConfigMap和Secret

本文介绍了Kubernetes中的ConfigMap和Secret的使用,包括如何创建ConfigMap以存储应用程序配置,以及通过变量注入和数据卷挂载的方式将配置数据引入Pod。同时,讲解了Secret的创建和使用,特别是用于存储敏感信息,如用户密码,并展示了如何通过base64编码来创建Secret。ConfigMap和Secret为Kubernetes中应用的配置管理和安全提供了有效支持。
摘要由CSDN通过智能技术生成

作用:创建ConfigMap后,数据实际会存储再K8S中etcd集群中,然后通过创建pod时引用该数据。
应用场景: 应用程序配置

Pod使用configmap数据有两种:
1.变量注入
2.数据卷挂载

具体用法如下

1.0创建变量值写入etcd cat configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
  name: game-demo                #变量名称
data:
  abc: "123"                  #变量1
  cde: "456"                  #变量2
  redis.properties: |         #变量3  |后面可以跟多个值
   port: 6379
   host: 192.168.31.10

kubectl apply -f configmap.yaml

1.1 检测是否创建成功

在这里插入图片描述

2.0创建一个应用pod并引用变量

cat map.yaml

apiVersion: v1
kind: Pod
metadata:
  name: configmap-demo-pod
spec:
  containers:
    - name: demo
      image: nginx
      env:
        - name: zhangsan
          valueFrom:
            configMapKeyRef:
              name: configmap-demp           # 这个值来自 ConfigMap
              key: abc                       # 需要取值的key键
        - name: lisi
          valueFrom:
            configMapKeyRef:
              name: configmap-demp
              key: cde
      volumeMounts:
      - name: config
        mountPath: "/config"
        readOnly: true
  volumes:
    - name: config
      configMap:
        name: configmap-demp              #数据卷形式挂载,定义读取哪个configmap
        items:
        - key: "redis.properties"         #key
          path: "redis.properties"        #容器目录
测试

在这里插入图片描述
0.1 说明成功引用了刚才创建的变量,变量注入
在这里插入图片描述

 volumes:
    - name: config
      configMap:
        name: configmap-demp              #数据卷形式挂载,定义读取哪个configmap
        items:
        - key: "redis.properties"         #key
          path: "redis.properties"        #容器目录

数据卷挂载也成功将key写入容器内
验证成功

应用程序配置文件存储:Secret

与configmap类似,区别在于secret主要存储敏感数据,所有的数据要经过base64编码
kubectl crreate secret 支持三种数据类型:
docker-registry:存储镜像仓库认证信息
generic: 从文件目录或者字符串创建。例如存储用户名密码
tls:存储证书,例如https证书

1创建应用pod

1.1生成用户密码的加密字符串

[root@CKA-master ~]# echo  -n 'zhangsan'  |base64
emhhbmdzYW4=
[root@CKA-master ~]# echo  -n 'hello123'  |base64
aGVsbG8xMjM=

1.2 编写pod

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值