跳到主要内容

19、Kubernetes - 实战:数据存储 ConfigMap

一、环境安装

参考

MiniKube方式部署

KubeAdm方式部署

Kind方式部署

二、ConfigMap介绍

ConfigMap是一种比较特殊的存储卷,它的主要作用是用来存储配置信息的。

特点:

动态更新(定时更新),明文存储(describe可看到信息)

三、ConfigMap使用

示例 yml

ConfigMap

vim configmap.yml

apiVersion: v1
kind: ConfigMap
metadata:
  name: configmap
  namespace: dev
data:
  info: |
    username:admin
    password:123456

Pod

vim pod-configmap.yml

apiVersion: v1
kind: Pod
metadata:
  name: pod-configmap
  namespace: dev
spec:
  containers:
  - name: nginx
    image: nginx:1.17.1
    volumeMounts: 将 ConfigMap 挂载到目录
    - name: config
      mountPath: /configmap/config
  volumes: 引用 ConfigMap
  - name: config
    configMap:
      name: configmap

1 创建

kubectl create -f  configmap.yml

kubectl create -f  pod-configmap.yml

 

2 查看ConfigMap

kubectl describe cm configmap -n dev

3 查看Pod

kubetl get po -n dev

 

4 查看ConfigMap内容

-bash-4.2# kubectl exec -it pod-configmap -n dev -- /bin/sh
# cat /configmap/config/info

 

注意:

每个ConfigMap都映射成了一个目录,key--->文件,value---->文件中的内容,此时如果更新ConfigMap的内容,容器中的值也会动态更新。