k8s將configmap mount成pod中的配置文件

寫(xiě)在前面

今天重構(gòu)前人開(kāi)發(fā)的一個(gè)系統(tǒng),有個(gè)組件是跑在裸機(jī)上的,通過(guò)systemd來(lái)管理,現(xiàn)在將其改到k8s中。
第一步,要把一些硬編碼的參數(shù)寫(xiě)到配置文件中,改為每次啟動(dòng)從配置文件中讀,由此產(chǎn)生了這篇筆記,即將configmap mount成pod中的配置文件,這樣每次改參數(shù)就可以直接改configmap就好了,后續(xù)可以改成configmap發(fā)生變化時(shí)自動(dòng)重建pod重新load配置文件。

創(chuàng)建configmap

apiVersion: v1
kind: ConfigMap
metadata:
  name: busybox-config
  namespace: default
data:
  minipoppy.conf: |
    fileserverip:1.1.1.1
    user:root
    password:abcd

創(chuàng)建POD引用這個(gè)config

apiVersion: apps/v1
kind: Deployment
metadata:
  name: busybox
  labels:
    app: busybox
spec:
  replicas: 1
  selector:
    matchLabels:
      app: busybox
  template:
    metadata:
      labels:
        app: busybox
    spec:
      containers:
      - name: busybox
        image: 172.18.141.128:5000/busybox:latest
        command:
        - sleep
        - "3600"
        volumeMounts:
        - name: config-volume
          mountPath: /etc/minipoppy/minipoppy.conf
          subPath: minipoppy.conf
      volumes:
        - name: config-volume
          configMap:
            name: busybox-config

暫時(shí)沒(méi)搞懂這個(gè)mountPath和subPath的關(guān)系,做個(gè)遺留問(wèn)題后面解決。

          mountPath: /etc/minipoppy/minipoppy.conf
          subPath: minipoppy.conf
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容