摘要:實(shí)際上就是一系列鍵值對(duì),存儲(chǔ)于里。在區(qū)域,我給該注入一個(gè)名為的環(huán)境變量,值從鍵值對(duì)的鍵名稱為的值中取。創(chuàng)建這個(gè)使用命令查看這個(gè)運(yùn)行生成的日志,發(fā)現(xiàn)輸出的環(huán)境變量列表中,出現(xiàn)了,這個(gè)是我在文件里注入的環(huán)境變量名稱,而就來自里的值。
在Kubernetes官網(wǎng)里,有這樣一篇文章,提到了Kubernetes里的一個(gè)最佳實(shí)踐就是把應(yīng)用代碼同配置信息分開,一種方式就是使用Kubernetes 1.2里引入的configmap概念。
https://kubernetes.io/blog/20...
configmap實(shí)際上就是一系列鍵值對(duì),存儲(chǔ)于etcd里。etcd的官網(wǎng)有這樣一句話:
etcd is a distributed key-value store designed to reliably and quickly preserve and provide access to critical data.
https://github.com/etcd-io/et...
etcd是一個(gè)高性能的分布式鍵值對(duì)存儲(chǔ)庫(kù),用于存儲(chǔ)和訪問關(guān)鍵數(shù)據(jù)。
使用下面的命令行創(chuàng)建一個(gè)Kubernetes config map:
kubectl create configmap test-config --from-literal=test.type=unit --from-literal=test.exec=always
創(chuàng)建一個(gè)名為test-config的鍵值對(duì),key為test.type,值為unit,key為test.exec, 值為always。
下面我打算創(chuàng)建一個(gè)pod,消費(fèi)這個(gè)名為test-config的configmap。
創(chuàng)建一個(gè)內(nèi)容如下的yaml文件:
apiVersion: v1 kind: Pod metadata: name: test-configmap spec: containers: - name: test-container image: alpine:3.8 command: [ "/bin/sh", "-c", "env" ] env: - name: TEST_TYPE valueFrom: configMapKeyRef: name: test-config key: test.type - name: TEST_EXEC valueFrom: configMapKeyRef: name: test-config key: test.exec restartPolicy: Never
這個(gè)yaml文件定義的pod基于docker鏡像alpine,執(zhí)行shell命令/bin/sh -c env查看環(huán)境變量。
在env區(qū)域,我給該pod注入一個(gè)名為TEST_TYPE的環(huán)境變量,值從configMap鍵值對(duì)的鍵名稱為test.type的值中取。
kubectl create -f 創(chuàng)建這個(gè)pod:
使用命令kubectl logs test-configmap查看這個(gè)pod運(yùn)行生成的日志,發(fā)現(xiàn)輸出的環(huán)境變量列表中,出現(xiàn)了TEST_TYPE=unit,這個(gè)TEST_TYPE是我在yaml文件里注入的環(huán)境變量名稱,而unit就來自configmap里test-config的值unit。
要獲取更多Jerry的原創(chuàng)文章,請(qǐng)關(guān)注公眾號(hào)"汪子熙":
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/32782.html
摘要:實(shí)際上就是一系列鍵值對(duì),存儲(chǔ)于里。在區(qū)域,我給該注入一個(gè)名為的環(huán)境變量,值從鍵值對(duì)的鍵名稱為的值中取。創(chuàng)建這個(gè)使用命令查看這個(gè)運(yùn)行生成的日志,發(fā)現(xiàn)輸出的環(huán)境變量列表中,出現(xiàn)了,這個(gè)是我在文件里注入的環(huán)境變量名稱,而就來自里的值。 在Kubernetes官網(wǎng)里,有這樣一篇文章,提到了Kubernetes里的一個(gè)最佳實(shí)踐就是把應(yīng)用代碼同配置信息分開,一種方式就是使用Kubernetes 1...
摘要:實(shí)際上就是一系列鍵值對(duì),存儲(chǔ)于里。在區(qū)域,我給該注入一個(gè)名為的環(huán)境變量,值從鍵值對(duì)的鍵名稱為的值中取。創(chuàng)建這個(gè)使用命令查看這個(gè)運(yùn)行生成的日志,發(fā)現(xiàn)輸出的環(huán)境變量列表中,出現(xiàn)了,這個(gè)是我在文件里注入的環(huán)境變量名稱,而就來自里的值。 在Kubernetes官網(wǎng)里,有這樣一篇文章,提到了Kubernetes里的一個(gè)最佳實(shí)踐就是把應(yīng)用代碼同配置信息分開,一種方式就是使用Kubernetes 1...
摘要:使用很多應(yīng)用程序的配置需要通過配置文件,命令行參數(shù)和環(huán)境變量的組合配置來完成。舉個(gè)例子,思考以下的我們可以像這樣在一個(gè)中來使用這個(gè)的鍵當(dāng)這個(gè)運(yùn)行的時(shí)候,它的輸出將包括以下幾行使用案例用設(shè)置命令行參數(shù)也可以被使用來設(shè)置容器中的命令或者參數(shù)值。 使用ConfigMap 很多應(yīng)用程序的配置需要通過配置文件,命令行參數(shù)和環(huán)境變量的組合配置來完成。這些配置應(yīng)該從image內(nèi)容中解耦,以此來保持容...
摘要:資源用于在運(yùn)行時(shí)將配置文件命令行參數(shù)環(huán)境變量端口號(hào)以及其他配置工件綁定至的容器和系統(tǒng)組件。是標(biāo)準(zhǔn)的資源類型,它隸屬名稱空間級(jí)別,支持命令式命令命令式對(duì)象配置及聲明式對(duì)象配置種管理接口。 ConfigMap 和 Secret 是 Kubernetes 系統(tǒng)上兩種特殊類型的存儲(chǔ)卷,前者用于為容器中的應(yīng)用提供配置數(shù)據(jù)以定制程序的...
摘要:對(duì)象存儲(chǔ)數(shù)據(jù)的機(jī)制及使用方式都類似于對(duì)象,它們以鍵值方式存儲(chǔ)數(shù)據(jù),在資源中通過環(huán)境變量或存儲(chǔ)卷進(jìn)行數(shù)據(jù)訪問。資源主要有兩種用途一是作為存儲(chǔ)卷注入對(duì)象上,供容器應(yīng)用程序使用二是用于為里的容器拉取鏡像時(shí)向私有倉(cāng)庫(kù)提供認(rèn)證信息。 出于增強(qiáng)可移植性的需求,我們應(yīng)該從容器鏡像中解耦的不僅有配置數(shù)據(jù),還有默認(rèn)口令(例如 Redis 或...
閱讀 3216·2021-11-24 09:39
閱讀 2944·2021-11-23 09:51
閱讀 900·2021-11-18 10:07
閱讀 3550·2021-10-11 10:57
閱讀 2757·2021-10-08 10:04
閱讀 3010·2021-09-26 10:11
閱讀 1056·2021-09-23 11:21
閱讀 2798·2019-08-29 17:28