一、
創(chuàng)新互聯(lián)建站作為成都網(wǎng)站建設(shè)公司,專(zhuān)注重慶網(wǎng)站建設(shè)公司、網(wǎng)站設(shè)計(jì),有關(guān)成都企業(yè)網(wǎng)站建設(shè)方案、改版、費(fèi)用等問(wèn)題,行業(yè)涉及高空作業(yè)車(chē)租賃等多個(gè)領(lǐng)域,已為上千家企業(yè)服務(wù),得到了客戶(hù)的尊重與認(rèn)可。
Secret資源對(duì)象:解決了密碼、token、密鑰等敏感數(shù)據(jù)的配置問(wèn)題,而不需要把這些敏感數(shù)據(jù)暴露到鏡像或者Pod Spec中。Secret可以以Volume或者環(huán)境變量的方式使用。
用來(lái)保存一些敏感信息,比如數(shù)據(jù)庫(kù)的用戶(hù)名密碼或者密鑰。
Secret有三種類(lèi)型:
1.Service Account:用來(lái)訪(fǎng)問(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)證信息。
二,以實(shí)驗(yàn)測(cè)試的方式,創(chuàng)建4種secret資源。
姓名:class=lbs
密碼:password=www.com
創(chuàng)建2個(gè)Pod,分別以?huà)燧dVolume的方式,和以環(huán)境變量env的方式去使用,secret2,和secret4.
1)通過(guò) --from-literal(文字的):
kubectl?create?secret?generic?**lbssecret1 (創(chuàng)建secret資源的名)**--from-literal=class=lbs?--from-literal=password=www.comww.com
Generic:通用的、一般的。加密方式。
查看secret資源
5.?kubectl?get?secrets???
6.NAME??????????????????TYPE??????????????????????????????????DATA???AGE??
7.lbssecret1????????????Opaque????????????????????????????????2??????24s??
使用describe可以查看secret資源的詳細(xì)信息。**(可以看到是以密文的方式存儲(chǔ))**
1kubectl?describe?secrets?lbssecret1???
2.Name:?????????lbssecret1??
3.Namespace:????default??
4.Labels:???????<none>??
5.Annotations:??<none>??
6.??
7.Type:??Opaque??
8.??
9.Data??
10.====??
11.class:?????3?bytes?? #只能查看到數(shù)據(jù)的大小,無(wú)法查看到數(shù)據(jù)內(nèi)容。
12.password:??7?bytes??
2)通過(guò) --from-file(文件):(**這種方式不推薦使用,需要將存儲(chǔ)的數(shù)據(jù)寫(xiě)入到文件中,注意每個(gè)文件只能存儲(chǔ)一個(gè)數(shù)據(jù)。)**
echo lbs >class
echo www.com >password
kubectl create secret generic lbssecret2 --from-file=class --from-file=password
查看:
1.kubectl?describe?secrets?lbssecret2???
2.Name:?????????lbssecret2??
3.Namespace:????default??
4.Labels:???????<none>??
5.Annotations:??<none>??
6.??
7.Type:??Opaque??
8.??
9.Data??
10.====??
11.class:?????4?bytes??
12.password:??8?bytes??
3)通過(guò) --from-env-file:**(這種方式可以在同一個(gè)文件內(nèi)寫(xiě)入多個(gè)數(shù)據(jù)。)**
vim lbs.txt
class=lbs
password=www.com(保存退出)
kubectl create secret generic mysecret3 --from-env-file=lbs.txt
查看:
1.kubectl?describe?secrets?lbssecret3???
2.Name:?????????lbssecret3??
3.Namespace:????default??
4.Labels:???????<none>??
5.Annotations:??<none>??
6.??
7.Type:??Opaque??
8.??
9.Data??
10.====??
11.class:?????3?bytes??
12.password:??7?bytes??
4)通過(guò)yaml配置文件的方式。(把需要保存的數(shù)據(jù)加密)
echo?lbs?|?base64
echo?www.com?|?base64??
vim lbssecret4.yaml
apiVersion: v1
kind: Secret
metadata:
name: mysecret4
data:
class: #編譯的lbs
password: #編譯的www.com
執(zhí)行文件:
kubectl?apply?-f?lbssecret4.yaml
1.kubectl?describe?secrets?lbhsecret4???
2.Name:?????????lbhsecret4??
3.Namespace:????default??
4.Labels:???????<none>??
5.Annotations:????
6.Type:?????????Opaque??
7.??
8.Data??
9.====??
10.password:??8?bytes??
11.class:?????4?bytes??
創(chuàng)建2個(gè)Pod,分別以?huà)燧d的方式,和以環(huán)境變量的方式去使用,secret2,和secret4.
1)以Volume掛載的方式:使用lbssecret2.
vim pod1.yaml
apiVersion: v1
kind: Pod
metadata:
name: lbspod1
spec:
containers:
- name: lbspod
image: busybox
args:
- /bin/sh
- -c
- sleep 300000
volumeMounts:
- name: secret-lbs
mountPath: "/etc/secret-lbs" 掛在到pod容器內(nèi)的路徑
readOnly: true
volumes:
- name: secret-lbs
secret:
secretName: lbssecret2
執(zhí)行yaml文件,查看Pod狀態(tài):1.[root@master?lbhsecret]#?kubectl?apply?-f?pod1.yaml???
br/>1.[root@master?lbhsecret]#?kubectl?apply?-f?pod1.yaml???
查看:
3.?kubectl?get?pod??
4.NAME??????READY???STATUS??????????????RESTARTS???AGE??
5.lbspod1???1/1?????Running???0??????????26s??
進(jìn)入pod內(nèi),掛載的路徑中。使用cat 查看class姓名,密碼(cat class)查看數(shù)據(jù)是否掛載成功。(可以發(fā)現(xiàn)會(huì)自動(dòng)幫助解密)
2)以環(huán)境變量的方式:使用lbssecret4.
vim pod2.yaml
apiVersion: v1
kind: Pod
metadata:
name: lbspod2
spec:
containers:
- name: lbspod
image: busybox
args:
- /bin/sh
- -c
- sleep 300000
env:
- name: SECRET_CLASS#容器內(nèi)的變量名
valueFrom:
secretKeyRef:#提取環(huán)境變量的值
name: lbssecret4#調(diào)用secret資源的lbssecret4
key: class#調(diào)用lbssecret4對(duì)應(yīng)class的值
- name: SECRET_PASSWORD
valueFrom:
secretKeyRef:
name: lbssecret2
key: password
執(zhí)行yaml文件,查看Pod狀態(tài):1.[root@master?lbhsecret]#?kubectl?apply?-f?pod2.yaml???
br/>1.[root@master?lbhsecret]#?kubectl?apply?-f?pod2.yaml???
查看:
3.?kubectl?get?pod??
4.NAME??????READY???STATUS????RESTARTS???AGE??
5.lbspod1???1/1?????Running???0??????????10m??
6.lbspod2???1/1?????Running???0??????????39s??
進(jìn)入pod中查看數(shù)據(jù)??墒褂胑cho的方式(echo容器內(nèi)的變量名)
例如:echo $SECRET_CLASS查看保存的姓名,密碼。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線(xiàn),公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。
網(wǎng)站題目:k8s數(shù)據(jù)持久化之Secret-創(chuàng)新互聯(lián)
網(wǎng)站地址:http://m.rwnh.cn/article36/dggepg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動(dòng)態(tài)網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)、用戶(hù)體驗(yàn)、品牌網(wǎng)站建設(shè)、定制網(wǎng)站、網(wǎng)站維護(hù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容
網(wǎng)頁(yè)設(shè)計(jì)公司知識(shí)