摘要:解決了密碼密鑰等敏感數(shù)據(jù)的配置問(wèn)題,使用可以避免把這些敏感數(shù)據(jù)以明文的形式暴露到鏡像或者中。可以以或者環(huán)境變量的方式使用。
Secret解決了密碼、token、密鑰等敏感數(shù)據(jù)的配置問(wèn)題,使用Secret可以避免把這些敏感數(shù)據(jù)以明文的形式暴露到鏡像或者Pod Spec中。
Secret可以以Volume或者環(huán)境變量的方式使用。
使用如下命令行創(chuàng)建一個(gè)secret:
kubectl create secret generic admin-access --from-file=./username.txt --from-file=./password.txt
輸入文件username.txt和password.txt需要手動(dòng)創(chuàng)建,里面分別維護(hù)用于測(cè)試的用戶(hù)名和密碼。
創(chuàng)建成功后,發(fā)現(xiàn)secret的類(lèi)型為Opaque:
實(shí)際上,Kubernetes的secret有三種類(lèi)型:
1. Service Account:用來(lái)訪問(wèn)Kubernetes API,由Kubernetes自動(dòng)創(chuàng)建,并且會(huì)自動(dòng)掛載到Pod的 /run/secrets/kubernetes.io/serviceaccount 目錄中;
2. Opaque:base64編碼格式的Secret,用來(lái)存儲(chǔ)密碼、密鑰等;
3. kubernetes.io/dockerconfigjson :用來(lái)存儲(chǔ)私有docker registry的認(rèn)證信息。
而我們剛剛創(chuàng)建的secret的類(lèi)型為Opaque,因此在kubectl get secrets的返回結(jié)果里,能看到password和username的值均為base64編碼:
要在pod里消費(fèi)這個(gè)secret也很容易,看一個(gè)例子:
apiVersion: v1 kind: Pod metadata: name: secret-pod spec: restartPolicy: Never volumes: - name: credentials secret: secretName: admin-access defaultMode: 0440 containers: - name: secret-container image: alpine:3.8 command: [ "/bin/sh", "-c", "cat /etc/foo/username.txt /etc/foo/password.txt" ] volumeMounts: - name: credentials mountPath: "/etc/foo" readOnly: true
創(chuàng)建pod,自動(dòng)執(zhí)行,通過(guò)log命令查看pod的日志:
發(fā)現(xiàn)/bin/sh命令被執(zhí)行了,pod mount的目錄/etc/foo下的username.txt和password.txt通過(guò)cat命令顯示了輸出:
要獲取更多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://specialneedsforspecialkids.com/yun/27557.html
摘要:解決了密碼密鑰等敏感數(shù)據(jù)的配置問(wèn)題,使用可以避免把這些敏感數(shù)據(jù)以明文的形式暴露到鏡像或者中。可以以或者環(huán)境變量的方式使用。 Secret解決了密碼、token、密鑰等敏感數(shù)據(jù)的配置問(wèn)題,使用Secret可以避免把這些敏感數(shù)據(jù)以明文的形式暴露到鏡像或者Pod Spec中。 Secret可以以Volume或者環(huán)境變量的方式使用。 使用如下命令行創(chuàng)建一個(gè)secret: kubectl cre...
摘要:解決了密碼密鑰等敏感數(shù)據(jù)的配置問(wèn)題,使用可以避免把這些敏感數(shù)據(jù)以明文的形式暴露到鏡像或者中。可以以或者環(huán)境變量的方式使用。 Secret解決了密碼、token、密鑰等敏感數(shù)據(jù)的配置問(wèn)題,使用Secret可以避免把這些敏感數(shù)據(jù)以明文的形式暴露到鏡像或者Pod Spec中。 Secret可以以Volume或者環(huán)境變量的方式使用。 使用如下命令行創(chuàng)建一個(gè)secret: kubectl cre...
摘要:標(biāo)識(shí)是與操作對(duì)象間的紐帶。集群為每個(gè)對(duì)象維護(hù)三類(lèi)信息對(duì)象元數(shù)據(jù)期望狀態(tài)與實(shí)際狀態(tài)元數(shù)據(jù)指對(duì)象的基本信息,比如命名標(biāo)簽注釋等等,用于識(shí)別對(duì)象期望狀態(tài)一般由用戶(hù)配置來(lái)描述的實(shí)際狀態(tài)是由集群各個(gè)組件上報(bào)的集群實(shí)際的運(yùn)行情況。 綜述 學(xué)習(xí)Kubernetes時(shí),發(fā)現(xiàn)它的概念和術(shù)語(yǔ)還是比較多的,光靠啃官方文檔比較晦澀。所以邊學(xué)習(xí)邊整理,對(duì)主要的概念和術(shù)語(yǔ)做一下分類(lèi)及簡(jiǎn)要說(shuō)明。感覺(jué)把重要概念都理解...
摘要:對(duì)象存儲(chǔ)數(shù)據(jù)的機(jī)制及使用方式都類(lèi)似于對(duì)象,它們以鍵值方式存儲(chǔ)數(shù)據(jù),在資源中通過(guò)環(huán)境變量或存儲(chǔ)卷進(jìn)行數(shù)據(jù)訪問(wèn)。資源主要有兩種用途一是作為存儲(chǔ)卷注入對(duì)象上,供容器應(yīng)用程序使用二是用于為里的容器拉取鏡像時(shí)向私有倉(cāng)庫(kù)提供認(rèn)證信息。 出于增強(qiáng)可移植性的需求,我們應(yīng)該從容器鏡像中解耦的不僅有配置數(shù)據(jù),還有默認(rèn)口令(例如 Redis 或...
摘要:舉個(gè)例子,我們?cè)谶@種狀態(tài)下創(chuàng)建一個(gè),然后執(zhí)行在中會(huì)發(fā)現(xiàn)有了字段,并且裝載了一個(gè)是的,這個(gè)就是我們這個(gè)下的。 注:本案例在我的部署環(huán)境下是可行的,但不保證在所有環(huán)境下都可行。我盡可能講得直白而詳細(xì),因?yàn)槲易约阂膊艅傞_(kāi)始接觸,已經(jīng)做過(guò)深入研究的可以瀏覽,若有什么錯(cuò)誤,煩請(qǐng)指正,感激不盡! 我的環(huán)境: K8S1.0.0+flannel+docker1.6的分布式集群。 這里先不贅述fla...
閱讀 1958·2021-11-16 11:45
閱讀 3668·2021-09-06 15:02
閱讀 2013·2019-08-30 15:44
閱讀 2283·2019-08-30 11:21
閱讀 1845·2019-08-29 16:31
閱讀 3422·2019-08-29 13:55
閱讀 1895·2019-08-29 12:15
閱讀 3251·2019-08-28 18:05