Kubernetes的ConfigMap对象使用

会有一股神秘感。 提交于 2021-02-02 01:42:58

ConfigMap和Secret几乎一样,只是Secret会用base64加密,创建方式也可以彩yaml或者文件方式 下面演示一下通过文件创建configmap 创建配置文件my.yaml

name: chenqionghe
light.weight: baby
gym: muscle

通过文件创建ConfigMap

kubectl create configmap my-config --from-file=./my.yaml

查看configmap对象

root@VM-0-8-ubuntu:/home/ubuntu# kubectl get configmaps my-config -o yaml
apiVersion: v1
data:
  my.yaml: |
    name: chenqionghe
    light.weight: baby
    gym: muscle
kind: ConfigMap
metadata:
  creationTimestamp: 2019-09-27T16:43:53Z
  name: my-config
  namespace: default
  resourceVersion: "2139336"
  selfLink: /api/v1/namespaces/default/configmaps/my-config
  uid: fd4aeb09-e145-11e9-8c22-f242c645cfec

创建通过pod使用ConfigMap

apiVersion: v1
kind: Pod
metadata:
  name: test-configmap
spec:
  containers:
  - name: test-configmap
    image: busybox
    args:
    - sleep
    - "86400"
    volumeMounts:
    - name: config-volume
      mountPath: "/app/conf"
      readOnly: true
  volumes:
  - name: config-volume
    configMap:
          name: my-config

执行创建pod

root@VM-0-8-ubuntu:/home/ubuntu# kubectl apply -f test-config-pod.yaml
pod/test-configmap created

查看pod已经创建

root@VM-0-8-ubuntu:/home/ubuntu# kubectl get po
NAME READY STATUS RESTARTS AGE
demo-deployment-555958bc44-llhr9 1/1 Running 0 20d
test-configmap 1/1 Running 0 1m

进入pod查看,发现/app/conf已经挂载上了my.yaml文件

root@VM-0-8-ubuntu:/home/ubuntu# kubectl exec -it test-configmap -- /bin/sh
/ # ls /app/conf
my.yaml
/ # cat /app/conf/my.yaml
name: chenqionghe
light.weight: baby
gym: muscl
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!