精品欧美一区二区三区在线观看 _久久久久国色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视频| 26uuu国产电影一区二区| 国产成人在线一区二区| 国产中文字幕久久| 成人搞黄视频| 欧美色涩在线第一页| 91视频 - 88av| 国产精品久久一区二区三区不卡 | 无码国产伦一区二区三区视频| 米奇777在线欧美播放| 久久久精品亚洲| 欧美 变态 另类 人妖| 伊人久久综合网另类网站| 精品国产精品自拍| 正在播放一区二区三区| 日韩av视屏| 高清成人免费视频| 国产日韩欧美视频| 男人午夜免费视频| 国产综合网站| 中文字幕欧美精品在线| 黄色av网址在线观看| 欧美综合影院| 色综合久久天天| 国产黄色片免费在线观看| 好了av在线| 国产三级精品在线| 久久av一区二区| 亚洲精品国产一区二| 久久精品国产精品青草| 国产成人精品一区| 黄网在线观看视频| 91久久中文| 久久99久久99精品免观看粉嫩| 日本免费www| 欧美美乳视频| 亚洲另类激情图| 尤物网站在线观看| eeuss鲁片一区二区三区| 欧美狂野另类xxxxoooo| 亚洲综合色在线观看| 亚洲日本天堂| 一本色道久久综合亚洲精品按摩| 无码中文字幕色专区| 国产丝袜精品丝袜| 亚洲电影一区二区| 中文字幕无码精品亚洲资源网久久| av在线free| 1区2区3区精品视频| 亚洲人成77777| 视频免费一区| 中文字幕在线视频一区| 影音先锋欧美在线| 日本成a人片在线观看| 国产精品国模大尺度视频| 亚洲欧洲中文| 毛片激情在线观看| 亚洲精品精品亚洲| 人妻激情另类乱人伦人妻| 中文字幕中文字幕在线十八区 | 久久99国产精品一区| av官网在线播放| 亚洲一区av在线| 内射国产内射夫妻免费频道| 日韩激情电影免费看| 一本大道久久a久久综合| 日本精品久久久久中文字幕| 欧美日韩国产网站| 欧美精品亚洲二区| 2025中文字幕| 欧美人成在线观看ccc36| 精品一区二区三区电影| avhd101老司机| 亚洲欧美色图| 97久久伊人激情网| 精品人妻一区二区三区潮喷在线 | 欧洲天堂在线观看| 欧美—级在线免费片| 国产高潮呻吟久久久| 青春草在线免费视频| 一本到三区不卡视频| 亚洲欧洲日本精品| 999国产精品一区| 亚洲男人天堂古典| 中文乱码字幕高清一区二区| 欧美精品一卡| 热99精品只有里视频精品| 中文字幕一区二区三区免费看| 国产一区二区三区观看| 精品国产一区二区三区免费| 午夜在线视频| 五月婷婷欧美视频| 黄色小视频免费网站| 欧美电影免费网站| 色阁综合伊人av| 国产午夜精品无码| 美女久久久精品| 国产精品v欧美精品v日韩| 男人av在线| 一区二区三区在线观看欧美| 国产精品动漫网站| 中文字幕一区二区三区四区久久 | 日韩激情视频网站| 成人免费看片网站| 伊人免费在线| 欧美丝袜一区二区三区| 久久久久亚洲av无码专区首jn| 国产欧美一区二区三区精品观看 | 国产污片在线观看| 激情六月婷婷综合| 日本欧洲国产一区二区| 黄网av在线| 8v天堂国产在线一区二区| 精品人妻少妇嫩草av无码| 在线中文字幕第一区| 国产精品第一视频| 亚洲av电影一区| 亚洲最大的成人av| 91亚洲一区二区| 日韩av二区| 欧洲成人性视频| 黄色片一区二区| 亚洲麻豆国产自偷在线| 一女二男3p波多野结衣| 久草成人资源| 97久久超碰福利国产精品…| 国产综合视频在线| 亚洲欧美视频在线观看| 91女神在线观看| 操欧美老女人| 国产脚交av在线一区二区| 天堂成人在线观看| 亚洲小说欧美激情另类| av在线免费观看不卡| 外国成人免费视频| 91亚洲午夜在线| 国产在线1区| 欧美巨大另类极品videosbest | 五月花成人网| 91精品国产综合久久香蕉的特点| 亚洲色图 激情小说| 久久综合影音| 日本高清不卡一区二区三| 性感女国产在线| 精品一区二区电影| 色老头在线视频| 国产精品网站在线| 免费看涩涩视频| 青青草原综合久久大伊人精品| 国产福利视频一区二区| av二区在线| 欧美日韩www| 少妇高潮在线观看| 国产精品99久久久久久久女警| 一本二本三本亚洲码| 亚洲亚洲一区二区三区| 欧美激情精品久久久久| 男人天堂手机在线观看| 欧美午夜丰满在线18影院| 国产成人av一区二区三区不卡| 久久精品二区三区| 亚洲欧美影院| 一区中文字幕| 91精品国产91久久久久| 国产在线91| 欧美精品粉嫩高潮一区二区| 欧美三级日本三级| hitomi一区二区三区精品| 欧美性久久久久| 色天天久久综合婷婷女18| 91精品一区二区| 国产91足控脚交在线观看| 亚洲精品有码在线| 亚洲天堂手机版| 亚洲精品成人天堂一二三| 欧美xxxxx精品| 久久久久.com| 最新av网址在线观看| 精品三级av在线导航| 国产精品人成电影在线观看| 国产午夜精品久久久久免费视| 精品福利一区二区三区| 免费看污视频的网站| 亚洲视频一二区| 国产制服丝袜在线| 韩国女主播成人在线| 玩弄中年熟妇正在播放| 日韩免费高清| 国产精选在线观看91| 成人av色网站| 性色av一区二区三区红粉影视| 国产片在线观看| 精品99久久久久久| 在线观看免费高清视频| 欧美日韩亚洲激情| 午夜爱爱毛片xxxx视频免费看| 91麻豆国产福利在线观看| 国产探花在线看| 国产精品日本欧美一区二区三区| 在线观看成人av| 自拍自偷一区二区三区| 91成人免费视频| 成人精品动漫| 69av视频在线播放| 91高清在线观看视频| 永久免费毛片在线播放不卡| 人妻va精品va欧美va| 4438亚洲最大| 天天干,天天干| 亚洲国产精品久久艾草纯爱| 三级黄色在线观看| 91久色porny| 成人做爰www看视频软件| 久久国产精品区| 国产精品亚洲a| 在线亚洲欧美| 亚洲综合欧美激情| 在线播放日本| 日韩av在线网站| 精品毛片在线观看| 欧美日韩精品福利| 亚洲欧美另类在线视频| 亚洲国产精品麻豆| avove在线播放| 中文字幕色av一区二区三区| 国产精品久久久久无码av色戒| 国产91在线看| 色黄视频免费看| 久久99在线观看| 欧美日韩大尺度| 麻豆91精品| 国产精品沙发午睡系列| 成人在线观看免费播放| 欧美日韩亚洲丝袜制服| 日本熟妇成熟毛茸茸| 一区二区三区免费观看| 黄色精品视频在线观看| 中文字幕巨乱亚洲| 欧洲精品一区二区三区在线观看| 九九热最新地址| 国产精品久久久久久久久果冻传媒| 国产高清自拍视频| 99r国产精品| 中出视频在线观看| 97精品国产露脸对白| 182在线视频| a在线欧美一区| 国产日韩视频一区| 北条麻妃国产九九精品视频| 国产免费a级片| 丁香激情综合五月| 亚洲av成人无码一二三在线观看| 99热99精品| a天堂视频在线观看| 97se亚洲国产综合自在线观| 人妻丰满熟妇aⅴ无码| 国产日韩欧美高清| 国产成人在线网址| 亚洲免费成人av| 国产一级淫片免费| 黑人欧美xxxx| 高潮无码精品色欲av午夜福利| 欧美日韩国产精品自在自线| 国产露脸91国语对白| 日韩亚洲欧美综合| 婷婷开心激情网| 亚洲欧美在线免费| 天堂资源在线中文| 欧美激情xxxxx| 一级毛片久久久| 国产欧美一区二区| 亚洲视频国产精品| 欧美不卡1区2区3区| 日韩中文字幕高清在线观看| 高清无码视频直接看| 亚洲欧美大片| 成人日韩在线视频| 成人亚洲一区二区一| 能免费看av的网站| 综合欧美一区二区三区| 香蕉视频一区二区| 欧美午夜精品一区二区三区| 国产a级免费视频| 日韩精品视频在线播放| 最新97超碰在线| 国产+人+亚洲| 日韩成人在线一区| 久久亚洲高清| 91精品国产91久久综合| 黄色www网站| 国产美女一区二区| 人妻精品久久久久中文字幕| 亚洲天堂成人网| www欧美在线| 日韩一区二区三区精品视频| 日av在线播放| 欧美激情精品久久久久| 欧洲成人一区| 国产日韩在线一区二区三区| 四季av在线一区二区三区| 免费在线观看亚洲视频| 国产一区二区三区不卡在线观看| 女人又爽又黄免费女仆| 亚洲一区二区美女| 一区二区三区精| 亚洲欧美中文字幕| 国产精品一区二区日韩| 91最新在线免费观看| 精品国产91久久久久久浪潮蜜月| 国产色一区二区三区| 国产一区二区三区观看| 国产极品视频在线观看| 欧美性xxxxxxx| 欧美综合视频在线| 欧美裸体男粗大视频在线观看| 国产精品99| 欧美日韩一区二区视频在线 | 亚洲性无码av在线| 青青青免费在线视频| 国产精品久久久久久久久久久久午夜片| 区一区二视频| 能看的毛片网站| 久久网站最新地址| 中文字幕亚洲精品一区| 亚洲第一免费网站| 欧美家庭影院| 亚洲一区免费网站| 亚洲国产一区二区三区在线播放| 中文字幕一区二区三区四区在线视频| proumb性欧美在线观看| 精品无码人妻一区二区三区品| 日韩亚洲国产中文字幕欧美| 国产超级va在线视频| 91最新在线免费观看| 在线观看国产精品入口| 成人免费播放视频| 一区二区三区日韩精品| www.麻豆av| 欧美国产日韩一区| 日韩精品视频在线看| 国产91在线亚洲| 成人污视频在线观看| 国产精品99无码一区二区| 精品国产一区二区精华| 丰满诱人av在线播放| 精品伦精品一区二区三区视频 | 97在线观看免费| 欧美一区自拍| 欧美日韩亚洲一| 久久蜜桃一区二区| 国产午夜无码视频在线观看 | 粉嫩精品久久99综合一区| 欧美吻胸吃奶大尺度电影| av在线二区| 91在线观看免费网站| 国产精品av久久久久久麻豆网| 久久久久国产免费| 精品久久久久国产| 精品推荐蜜桃传媒| 国产欧美最新羞羞视频在线观看| 欧美独立站高清久久| 永久免费看片在线观看| 午夜影院在线观看欧美| 男女污污视频在线观看| 成人a级免费视频| 国产精品v欧美精品v日本精品动漫| 老熟女高潮一区二区三区| 天天av天天翘天天综合网| 国产在线资源| 91色p视频在线| 国产欧美精品| 91免费在线看片| 欧美成人精品福利| 亚洲精品福利电影| 青青草免费在线视频观看| 成人av手机在线观看| 国产男人搡女人免费视频| 久久电影一区二区| 日韩成人av在线资源| 亚洲激情在线看| 精品国产鲁一鲁一区二区张丽| 大胆av不用播放器在线播放| 亚洲综合一区二区不卡| 小嫩嫩精品导航| 国产免费久久久久| 亚洲毛片在线观看| 欧美一区一区| 国产xxxxx在线观看| 亚洲欧美另类久久久精品| 外国精品视频在线观看 | 毛片在线播放a| 久久精品人成| 国产一区二区三区在线观看精品 | 一本一道久久a久久精品综合| 成人午夜视频网站| 国产又黄又粗又长| 欧美亚洲免费电影| 国产精品多人| 手机在线中文字幕|