精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

為啥有的ConfigMap要重啟Pod才生效

開發
本文總結了configMap使用的3種方式:env方式、envFrom方式、volumes方式。

在一般應用部署中,都是將程序和配置信息分離,這樣可以保證程序可以被各個環境復用。

在容器場景中,將應用打包成鏡像后,可以通過環境變量或者文件掛載的方式,在創建容器時把配置注入進去。

在Kubernetes場景中,則使用configMap實現應用與配置分離。使用configMap的方式有多種,有的方式修改了configMap的配置,無需重啟Pod即可生效,有的方式需要重啟Pod才生效。看看你用的是哪一種吧。

一、使用方式

使用configMap做程序和配置分離,那么首先就要定義configMap,然后部署configMap。

1.定義configMap

apiVersion: v1
kind: ConfigMap
metadata:
  name: democm
  namespace: demo
data:
  db_name: demodb
  db_host: 172.19.132.23

configMap有3種使用方式:env方式 、envFrom方式 、volumes方式。

2.env方式

這種方式是將configMap的key-value注入到容器的環境變量里,程序里使用時,使用env里定義的name即可獲取到對應的值。使用方式如下:

apiVersion: v1
kind: Pod
metadata:
  name: pod-cm-1
  namespace: demo
  labels:
    app: pod-cm-1
spec:
  containers:
    - name: pod-cm-1
      image: busybox
      imagePullPolicy: IfNotPresent
      tty: true
      # 會出現在容器的環境變量里,程序里要使用env#name可以獲取到對應的值
      env:
        - name: db_name_app
          valueFrom:
            configMapKeyRef:
              name: democm
              key: db_name
        - name: db_host_app
          valueFrom:
            configMapKeyRef:
              name: democm
              key: db_host

3.envFrom方式

這種方式也是將configMap的key-value注入到容器的環境變量里,使用方法與env方式類似,只不過在程序使用時,是直接使用configMap定義的key,即可獲取到對應的值。使用方式如下:

apiVersion: v1
kind: Pod
metadata:
  name: pod-cm-2
  namespace: demo
  labels:
    app: pod-cm-2
spec:
  containers:
    - name: pod-cm-2
      image: busybox
      imagePullPolicy: IfNotPresent
      tty: true
      # 程序里使用configmap的key
      envFrom:
        - configMapRef:
            name: democm

4.volumes方式

這種方式是以卷掛載的方式,將configMap的key-value寫入到文件里,key是文件名,value是文件內容。

使用方式如下:

apiVersion: v1
kind: Pod
metadata:
  name: pod-cm-3
  namespace: demo
  labels:
    app: pod-cm-3
spec:
  nodeName: k8s-worker-2
  containers:
    - name: pod-cm-3
      image: nginx
      imagePullPolicy: IfNotPresent
      ports:
        - containerPort: 80
          hostPort: 8080
      volumeMounts:
        - name: workdir
          mountPath: /usr/share/nginx/html
  volumes:
    - name: workdir
      configMap:
        name: democm
        optional: true

觀察volume卷下面的內容:

進入到容器的/usr/share/nginx/html目錄下,可以看到configMap定義的key-value會出現此目錄下,并且會有一個類似時間的文件。進入到文件夾里,可以看到對應的db_host和db_name文件。

如果configMap變化之后,對應的會生成新的文件:

二、實踐

1.編排部署configMap

編排部署configMap,查看部署后的configMap信息:

[root@k8s-master configmap]# kubectl apply -f configmap.yaml
configmap/democm created
[root@k8s-master configmap]# kubectl get cm -n demo
NAME     DATA   AGE
democm   2      11s
[root@k8s-master configmap]# kubectl describe cm democm -n demo
Name:         democm
Namespace:    demo
Labels:       <none>
Annotations:  <none>

Data
====
db_host:
----
172.19.132.23
db_name:
----
demodb
Events:  <none>

2.env方式

從這里可以看到env方式定義的yaml里的env已經被放入到容器的環境變量里的,只不過env里的值是從configMap里取的。

[root@k8s-master configmap]# kubectl exec -it pod-cm-1 -n demo -- /bin/sh
/ #
/ # evn
/bin/sh: evn: not found
/ # env
KUBERNETES_PORT=tcp://10.96.0.1:443
KUBERNETES_SERVICE_PORT=443
HOSTNAME=pod-cm-1
SHLVL=1
HOME=/root
TERM=xterm
KUBERNETES_PORT_443_TCP_ADDR=10.96.0.1
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
KUBERNETES_PORT_443_TCP_PORT=443
KUBERNETES_PORT_443_TCP_PROTO=tcp
db_host_app=172.19.132.23
KUBERNETES_PORT_443_TCP=tcp://10.96.0.1:443
KUBERNETES_SERVICE_PORT_HTTPS=443
KUBERNETES_SERVICE_HOST=10.96.0.1
PWD=/
db_name_app=demodb

3.envFrom方式

從這里可以看到envFrom方式是直接把configMap的key-value放入到容器的環境變量里的。

[root@k8s-master configmap]# kubectl apply -f pod_configmap_2.yaml
pod/pod-cm-2 created
[root@k8s-master configmap]# kubectl exec -it pod-cm-2 -n demo -- /bin/sh
/ #
/ # env
KUBERNETES_SERVICE_PORT=443
KUBERNETES_PORT=tcp://10.96.0.1:443
HOSTNAME=pod-cm-2
SHLVL=1
HOME=/root
db_name=demodb
TERM=xterm
KUBERNETES_PORT_443_TCP_ADDR=10.96.0.1
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
KUBERNETES_PORT_443_TCP_PORT=443
KUBERNETES_PORT_443_TCP_PROTO=tcp
KUBERNETES_SERVICE_PORT_HTTPS=443
KUBERNETES_PORT_443_TCP=tcp://10.96.0.1:443
KUBERNETES_SERVICE_HOST=10.96.0.1
PWD=/
db_host=172.19.132.23

4.volumes方式

這種方式可以看到,volumes方式并沒有把configMap的值放入到環境變量。

[root@k8s-master configmap]# kubectl apply -f pod_configmap_3.yaml
pod/pod-cm-3 created
[root@k8s-master configmap]# kubectl exec -it pod-cm-3 -n demo -- /bin/sh
# env
KUBERNETES_SERVICE_PORT=443
KUBERNETES_PORT=tcp://10.96.0.1:443
HOSTNAME=pod-cm-3
HOME=/root
PKG_RELEASE=1~bookworm
TERM=xterm
KUBERNETES_PORT_443_TCP_ADDR=10.96.0.1
NGINX_VERSION=1.25.2
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
KUBERNETES_PORT_443_TCP_PORT=443
NJS_VERSION=0.8.0
KUBERNETES_PORT_443_TCP_PROTO=tcp
KUBERNETES_PORT_443_TCP=tcp://10.96.0.1:443
KUBERNETES_SERVICE_PORT_HTTPS=443
KUBERNETES_SERVICE_HOST=10.96.0.1
PWD=/

但是可以看到configMap的key-value被寫入到了文件里。

# cd /usr/share/nginx/html
# ls
db_host  db_name
# cat db_host
172.19.132.23
# cat db_name
demodb

5.修改configMap值

修改configMap值,然后重新部署configMap,繼續觀察這3種方式。

用命令kubectl exec -it pod-cm-xxxxxx -n demo -- /bin/sh進入到容器后,可以觀察到:

  • env方式和envFrom方式方式對應的值沒有變化,需要重啟Pod后才生效。
  • volumes方式的值會自動變化。

三、總結

本文總結了configMap使用的3種方式:env方式、envFrom方式、volumes方式。

env方式和envFrom方式方式說白了是往容器里注入了環境變量,在容器啟動的時候,就已經注入了,無法修改。每次修改configMap的key-value,需要重啟Pod才能生效。

volumes方式的方式,實際上把configMap的key-value寫入到了容器對應的volume卷下,而且每次configMap變更,都會把最新值寫入到volume卷下,這樣容器每次都能取到最新值。

責任編輯:趙寧寧 來源: 不焦躁的程序員
相關推薦

2017-03-13 13:54:40

戴爾

2023-10-19 19:42:25

IstioPodkubernetes

2019-05-14 09:05:16

SerializablJava對象

2022-11-29 10:33:15

Kubectl命令pod

2025-04-25 08:55:00

Pod運維

2021-01-29 09:01:25

低代碼軟件低代碼工具

2017-11-06 08:41:53

互聯網分層架構前后端

2020-09-29 07:42:34

互聯網分層架構前后端分離

2024-04-03 11:40:58

SYN服務器序號

2012-08-23 14:09:20

函數

2020-05-15 15:28:51

爬蟲Python學習

2022-06-28 14:19:38

Vue路由監控

2015-09-11 09:27:21

神經網絡發明

2020-02-07 19:24:47

APP權限移動應用

2011-04-21 13:29:18

惠普4500

2020-11-17 10:23:56

安全黑客網站

2015-05-07 14:58:06

編程每周工作80小時

2016-01-05 13:52:05

Kotlin掌握語言

2022-08-27 11:02:04

InnoDB數據庫索引

2021-09-14 15:29:22

數據分析電商報表
點贊
收藏

51CTO技術棧公眾號

国产精品久久久久婷婷| 91在线不卡| 中文字幕av亚洲精品一部二部| 欧美日韩中文精品| 亚洲欧洲一区二区在线观看| 国产精品尤物视频| 尤物tv在线精品| 欧美日韩亚洲激情| 欧美一区二区三区四区五区六区| aaa在线视频| 欧美gvvideo网站| 欧美日韩国产免费| 800av在线免费观看| 亚洲春色一区二区三区| 午夜在线一区二区| 亚洲欧美激情四射在线日| 亚洲黄色a v| 在线观看av的网址| 18啪啪污污免费网站| 国产麻豆一区| 亚洲国产成人av好男人在线观看| 国产精品欧美久久| 中文字幕乱码人妻无码久久| 欧美搞黄网站| 亚洲经典中文字幕| 国内国产精品天干天干| 99久久精品免费看国产小宝寻花 | 久久99日本精品| 久久精品视频在线播放| 国产精品九九视频| 国产综合av| 亚洲妇女屁股眼交7| 欧洲精品久久| www.国产免费| 日韩av午夜在线观看| 久久99精品视频一区97| 秋霞网一区二区三区| 99久久人爽人人添人人澡 | 国产精品视频| 久久亚洲影音av资源网| 蜜臀av粉嫩av懂色av| 成人性生交大片免费看网站 | 91亚洲精品一区| 欧美精品一级片| 91久久精品无嫩草影院| 91福利资源站| 欧美一级免费播放| av电影高清在线观看| 国产精品系列视频| 综合久久婷婷| 亚洲欧美日韩综合| 国产亚洲色婷婷久久99精品91| 婷婷久久免费视频| 一本大道久久a久久精品综合| 亚洲av综合色区| 香蕉视频在线播放| 成人久久视频在线观看| 91在线高清免费观看| 国产黄色免费视频| 亚洲国产日韩在线| 欧美极品美女电影一区| 成年人av电影| 国产精品最新| 亚洲男人第一网站| 日本一本在线视频| 欧美日韩卡一| 欧美无砖砖区免费| 美女网站免费观看视频| 粉嫩一区二区| 亚洲欧美偷拍卡通变态| 亚洲最新在线| 国产福利片在线| 高潮精品一区videoshd| 91手机在线播放| 97成人免费视频| 捆绑调教一区二区三区| 国产精品v日韩精品| 亚洲国产成人精品激情在线| 国产专区一区| 91国偷自产一区二区三区的观看方式| 久久亚洲国产成人精品性色| 91精品秘密在线观看| 欧美四级电影网| caopor在线视频| 午夜无码国产理论在线| 欧美亚洲动漫制服丝袜| 日韩精品你懂的| 亚洲av人人澡人人爽人人夜夜| 成人在线视频亚洲| ...xxx性欧美| 日韩国产成人无码av毛片| 大黄网站在线观看| 欧美日韩在线视频一区| 国产精品第12页| 成人综合网站| 欧美一区二区三区日韩| 亚洲三级在线视频| 国产精品igao视频网网址不卡日韩 | 精品中文字幕一区二区三区| 欧美一区二区三区的| www欧美激情| 9999精品| 欧美成人精品福利| 噜噜噜在线视频| 日韩成人av在线资源| 一本色道久久88亚洲综合88| 国产男女猛烈无遮挡在线喷水| 成人vr资源| 欧美精品日韩www.p站| 国产欧美日韩另类| 日韩精品免费专区| 91天堂在线观看| 五月婷婷在线播放| 成人福利电影精品一区二区在线观看| 精品国产乱码久久久久久郑州公司 | 国产亚洲欧美在线精品| 久久九九国产| 91九色国产在线| 天堂av一区二区三区| 91社区在线播放| 中文字幕久久一区| 女人高潮被爽到呻吟在线观看| 一本一道综合狠狠老| 99精品视频国产| 在线免费观看亚洲视频| 国产成人一二片| 欧美成va人片在线观看| 亚洲日本精品视频| 欧美jizzhd精品欧美巨大免费| 68精品久久久久久欧美| 国产露脸国语对白在线| 97精品超碰一区二区三区| 亚洲欧洲精品在线观看| 国产v日韩v欧美v| 欧美精品乱码久久久久久| 波多野结衣网页| 欧美特黄一级大片| 亚洲视频一区二区三区| 国产一级在线免费观看| 狠狠色综合日日| 欧美一区二区三区成人久久片| 色噜噜狠狠狠综合欧洲色8| 欧洲中文字幕精品| 自拍视频一区二区| 欧美另类综合| 国产999在线观看| 刘亦菲毛片一区二区三区| 国产精品久久综合| 国产男女在线观看| 高潮按摩久久久久久av免费| 久热爱精品视频线路一| 免费在线观看av的网站| 91在线观看视频| 成人国产一区二区三区| www.国产精品| 精品视频—区二区三区免费| 精品视频久久久久| 国产**成人网毛片九色 | av影片在线播放| 欧美成人tv| 99精品国产高清一区二区| 在线电影福利片| 欧美videofree性高清杂交| 69av视频在线| 欧美动物xxx| 久久综合av免费| 日韩视频第二页| 狼人精品一区二区三区在线| 97视频在线观看免费| 四虎电影院在线观看| 欧美性猛交xxxx乱大交3| xxxx日本黄色| 久久99九九99精品| 中文字幕av久久| 视频精品国内| 亚洲 日韩 国产第一| 亚洲成人777777| 一区二区三区.www| 亚洲av成人精品一区二区三区| 欧美日韩精品| 精品久久一区二区三区蜜桃| 韩国美女久久| 日韩中文字幕国产精品| 亚洲第一黄色片| 午夜精品视频在线观看| 亚洲av无码一区二区三区人| 蜜桃av噜噜一区| 久久久久久久香蕉| 亚洲人成伊人成综合图片| 日韩av不卡电影| 成人在线影视| 亚洲欧美制服另类日韩| 国产免费黄色录像| 欧美日韩国产综合新一区| 粉嫩精品久久99综合一区| 国产精品18久久久久久vr| 波多野结衣50连登视频| 婷婷丁香综合| 精品国产一区二区三区麻豆免费观看完整版 | 一区二区三区播放| 亚洲成人777| japanese在线播放| 中文字幕+乱码+中文乱码www| 中文字幕精品一区二区精品绿巨人| 国产福利精品一区二区三区| 99精品视频免费| 超碰免费在线公开| 中文字幕中文字幕精品| 亚洲一区二区三区四区在线播放 | 一区二区视频在线看| 熟女丰满老熟女熟妇| 久久9热精品视频| 成人免费毛片网| 日韩欧美大片| 精品一区二区三区日本| 成人在线观看免费播放| 青青a在线精品免费观看| 嫩草香蕉在线91一二三区| 精品久久久三级丝袜| 青青国产在线观看| 一区二区三区不卡在线观看| 一区二区三区伦理片| 国产一区二区调教| av天堂永久资源网| 亚洲高清毛片| 婷婷视频在线播放| 亚洲精品亚洲人成在线观看| 国产伦精品免费视频| 国产精品一区二区日韩| 久久伊人精品天天| 黑人与亚洲人色ⅹvideos| 亚洲电影免费观看高清| 夜夜躁狠狠躁日日躁av| 午夜欧美大尺度福利影院在线看| 亚洲一区二区观看| 成人激情视频网站| 日本不卡一区二区在线观看| 日韩亚洲国产欧美| 二级片在线观看| 午夜激情久久| 欧洲久久久久久| 欧美大胆视频| 国产精品中文在线| 午夜精品成人av| 午夜精品一区二区三区视频免费看| 日韩黄色影片| 日韩成人在线电影网| 亚洲AV无码成人片在线观看 | 中文字幕欧美日韩一区| 国产5g成人5g天天爽| 日本成人在线视频网站| 亚洲乱码中文字幕久久孕妇黑人| 亚欧美无遮挡hd高清在线视频| 杨幂一区欧美专区| 成人在线视频免费观看| 日韩.欧美.亚洲| 日本一区二区三区播放| 91欧美激情另类亚洲| 成人国产精品入口免费视频| 国产成人精品日本亚洲专区61| 国模视频一区| 国产精品国产亚洲伊人久久 | 少妇精品久久久| 欧美成人蜜桃| 亚洲大片精品免费| 亚洲国产精品久久久久久女王| 精品一区亚洲| 欧美日韩一区在线视频| 欧美艳星介绍134位艳星| 日韩av一级大片| 欧美肉体xxxx裸体137大胆| 欧美福利一区二区三区| 日韩av自拍| 日本一区美女| 成人毛片免费看| 欧美 日韩 国产精品| 欧美视频亚洲视频| 亚洲国产精品成人天堂| 手机精品视频在线观看| aaaaaa亚洲| 久久精品国产99国产| 国产5g成人5g天天爽| 99久久伊人精品| 黄色av网址在线观看| 337p粉嫩大胆噜噜噜噜噜91av | 日本久久久久| 91系列在线播放| 一区二区视频| av成人综合网| 少妇精品久久久| 伊人色综合影院| 欧美丰满老妇| 少妇人妻无码专区视频| 蜜桃伊人久久| 久国产精品视频| 国产精品一区不卡| 潘金莲一级淫片aaaaaaa| 天堂在线视频免费| 日韩精品视频免费在线观看| 久草在线免费福利资源| 久久久精品国产一区二区| av影片在线| 国产成人精品日本亚洲专区61| 欧美日韩卡一| 国产亚洲欧美另类一区二区三区| 久久av免费| 亚洲国产精品综合| 亚洲理论在线| 亚洲一区二区三区四区五区| 成人午夜私人影院| 男人天堂资源网| 亚洲一区二区三区小说| 中文人妻av久久人妻18| 欧美成人欧美edvon| 日本精品一区二区在线观看| 日韩不卡中文字幕| 色www永久免费视频首页在线| 91av视频在线播放| 久久天堂久久| 蜜桃精品久久久久久久免费影院| 99久久精品国产亚洲精品| 日韩国产欧美亚洲| 麻豆精品一二三| 精品少妇人妻一区二区黑料社区| 亚洲女人小视频在线观看| www.色国产| 日韩成人激情在线| а天堂8中文最新版在线官网| 久久久久亚洲精品国产| 日韩精品视频中文字幕| 婷婷久久伊人| 香蕉精品999视频一区二区| 国产精品成人99一区无码| www一区二区| 日本学生初尝黑人巨免费视频| 欧美午夜不卡视频| 色视频在线观看免费| 久久久久久久久久久网站| 国产成人免费av一区二区午夜| 日韩色妇久久av| 日本欧美一区二区在线观看| 50一60岁老妇女毛片| 一区二区三区四区国产精品| a天堂视频在线| 日韩在线资源网| 黄色视屏在线免费观看| 91在线在线观看| 91精品国产91久久久久久密臀| 国产成人亚洲精品无码h在线| 国产成人综合在线| 欧美又粗又大又长| 在线精品视频免费播放| 秋霞av在线| 91av中文字幕| 国产一区二区三区免费观看在线| 一区二区三区在线观看www| 亚洲黄色视屏| 中文字幕99页| 亚洲欧美一区二区在线观看| 亚洲天堂网在线视频| 亚洲人永久免费| 手机在线观看av| 成人精品视频99在线观看免费| 久久精品国产www456c0m| av网站在线不卡| 国产精品天干天干在线综合| 一级特黄特色的免费大片视频| 亚洲成av人乱码色午夜| a天堂中文在线官网在线| 高清av免费一区中文字幕| 好吊一区二区三区| www.美色吧.com| 欧美午夜片欧美片在线观看| 免费黄网站在线观看| 久久天天躁日日躁| 国产精品视频一区二区三区综合| 99久久久无码国产精品性色戒| 韩国欧美国产一区| 久久久久久久久久91| 亚洲国产欧美久久| 2024最新电影免费在线观看| 久久草.com| 久久一区二区三区四区五区 | 久久伊99综合婷婷久久伊| 国产午夜麻豆影院在线观看| 中文字幕成人在线| 午夜视频在线观看精品中文| 日韩网站在线免费观看| 久久综合色综合88| 中文字幕日产av| 日韩视频免费在线| youjizz亚洲| 黄色一级在线视频| 久久蜜桃香蕉精品一区二区三区| 日韩久久久久久久久久| 爽爽爽爽爽爽爽成人免费观看| 国产亚洲观看| 91免费视频网站在线观看| 亚洲人成亚洲人成在线观看图片| 国产白浆在线观看|