版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
《容器技術(shù)實(shí)戰(zhàn)》廣州白云工商技師學(xué)院云計(jì)算和大數(shù)據(jù)人才培養(yǎng)規(guī)劃教材項(xiàng)目任務(wù)使用kubernetes編排網(wǎng)絡(luò)服務(wù)(通過(guò)nfs網(wǎng)絡(luò)卷部署kubernetesnginx集群服務(wù))計(jì)算機(jī)網(wǎng)絡(luò)教研室復(fù)習(xí)回顧回顧與作業(yè)點(diǎn)評(píng)回顧:
1、創(chuàng)建kubernets集群2、查看kubernets集群狀態(tài)
作業(yè)點(diǎn)評(píng):
創(chuàng)建kubernets集群,查看kubernets集群狀態(tài)任務(wù)要求學(xué)習(xí)編寫(xiě)編排kubernetes集群服務(wù)的yaml文件,通過(guò)kubernetes實(shí)現(xiàn)nginx集群的創(chuàng)建,查看工作狀態(tài),然后根據(jù)用戶(hù)流量的需求測(cè)試nginx集群的伸縮,并測(cè)試在節(jié)點(diǎn)故障的情況下kubernetes如何實(shí)現(xiàn)用戶(hù)的期望。我要努力學(xué)習(xí)目標(biāo)1.能編寫(xiě)kubernetes部署服務(wù)的yaml文件2.能運(yùn)用kubernetes部署nginx服務(wù)3.能實(shí)現(xiàn)nginx進(jìn)行伸縮測(cè)試4.能查看和測(cè)試節(jié)點(diǎn)故障時(shí)kubernetes處理方法5、體驗(yàn)研究問(wèn)題的快樂(lè),養(yǎng)成良好工作學(xué)習(xí)的習(xí)慣。重點(diǎn)難點(diǎn)重點(diǎn):1、能編寫(xiě)kubernetes部署服務(wù)的yaml文件2、能運(yùn)用kubernetes部署nginx服務(wù)3、能實(shí)現(xiàn)nginx進(jìn)行伸縮測(cè)試難點(diǎn):編寫(xiě)kubernetes部署服務(wù)的yaml文件學(xué)習(xí)內(nèi)容通過(guò)nfs網(wǎng)絡(luò)卷部署kubernetesnginx集群服務(wù)架構(gòu)設(shè)計(jì)01編寫(xiě)配置文件02測(cè)試集群伸縮服務(wù)03測(cè)試集群故障自愈04任務(wù)流程任務(wù)流程編寫(xiě)NGINX配置文件編寫(xiě)集群配置文件測(cè)試nfs卷網(wǎng)頁(yè)測(cè)試集群自愈功能測(cè)試集群NGINX服務(wù)測(cè)試集群伸縮功能學(xué)習(xí)總結(jié)評(píng)價(jià)擴(kuò)展設(shè)計(jì)部署環(huán)境通過(guò)nfs卷部署nginx集群服務(wù)演示示例1:方案設(shè)計(jì)學(xué)習(xí)步驟本案例仍采用三個(gè)節(jié)點(diǎn)的架構(gòu)環(huán)境,通過(guò)kubernetes資源配置文件的方式部署nginx集群,達(dá)到高可用的web服務(wù)環(huán)境。網(wǎng)頁(yè)文件采用nfs服務(wù)器卷的方式直接提供pod,供pod中的容器使用。本案例通過(guò)配置網(wǎng)頁(yè),部署web服務(wù),測(cè)試和查看結(jié)果,節(jié)點(diǎn)故障模擬,副本數(shù)量伸縮學(xué)習(xí)kubernetes基本功能一、方案設(shè)計(jì)通過(guò)nfs卷部署nginx集群服務(wù)演示示例2:配置nfs網(wǎng)頁(yè)文件學(xué)習(xí)步驟利用前期nfs配置的共享目錄,例如32上的/root/nfs-share/wwwroot共享文件夾。adminroot@blockchain:~$showmount--exports32Exportlistfor32:/root/nfs-share/wordpress/db192.168.47.*/root/nfs-share/wwwroot192.168.47.*/root/nfs-share192.168.47.*下面創(chuàng)建一個(gè)測(cè)試網(wǎng)頁(yè)。adminroot@blockchain:~$suPassword:root@blockchain:/home/adminroot#cd/root/nfs-share/wwwrootroot@blockchain:~/nfs-share/wwwroot#lstest.phproot@blockchain:~/nfs-share/wwwroot#echo"這是一個(gè)kubernetsnginx集群測(cè)試頁(yè)">index.html二、配置nfs網(wǎng)頁(yè)文件通過(guò)nfs卷部署nginx集群服務(wù)演示示例2:配置nfs網(wǎng)頁(yè)文件學(xué)習(xí)步驟二、配置nfs網(wǎng)頁(yè)文件完成時(shí)間:15分鐘學(xué)生練習(xí),教師巡回指導(dǎo)通過(guò)nfs卷部署nginx集群服務(wù)演示示例3:配置nginx集群配置文件學(xué)習(xí)步驟1、創(chuàng)建配置文件(1)創(chuàng)建kubernetesnginx集群配置文件文件夾root@blockchain:/home/adminroot#mkdirk8s-nginxroot@blockchain:/home/adminroot#cdk8s-nginx/root@blockchain:/home/adminroot/k8s-nginx#三、配置kubernetesnginx集群配置文件通過(guò)nfs卷部署nginx集群服務(wù)演示示例3:配置nginx集群配置文件學(xué)習(xí)步驟1、創(chuàng)建配置文件(2)編寫(xiě)配置文件編寫(xiě)配置文件,文件名命名web-nginx.yml三、配置kubernetesnginx集群配置文件root@blockchain:/home/adminroot/k8s-nginx#viweb-nginx.ymlapiVersion:apps/v1kind:Deploymentmetadata:name:web-nginxspec:selector:matchLabels:app:web-nginxreplicas:2#副本數(shù)量template:metadata:labels:app:web-nginxspec:containers:-name:webimage:nginximagePullPolicy:Never#如果已經(jīng)有鏡像,就不需要再拉取鏡像ports:-name:webcontainerPort:80#hostPort:80#將容器的80端口映射到宿主機(jī)的80端口volumeMounts:-name:nfs#指定名稱(chēng)必須與下面一致mountPath:"/usr/share/nginx/html"#容器內(nèi)的掛載點(diǎn)volumes:-name:nfs#指定名稱(chēng)必須與上面一致nfs:#nfs存儲(chǔ)server:32#nfs服務(wù)器ip或是域名path:"/root/nfs-share/wwwroot"#nfs服務(wù)器共享的目錄通過(guò)nfs卷部署nginx集群服務(wù)演示示例3:配置nginx集群配置文件學(xué)習(xí)步驟三、配置kubernetesnginx集群配置文件完成時(shí)間:45分鐘學(xué)生練習(xí),教師巡回指導(dǎo)通過(guò)nfs卷部署nginx集群服務(wù)演示示例4:部署和測(cè)試學(xué)習(xí)步驟1、部署nginx集群運(yùn)用kubectlapply命令進(jìn)行部署nginx集群。root@blockchain:/home/adminroot/k8s-nginx#kubectlapply-fweb-nginx.ymldeployment.apps/web-nginxcreated從命令執(zhí)行結(jié)果上看,創(chuàng)建成功。2、查看deployment狀態(tài)運(yùn)用kubectlgetdeployment命令查看當(dāng)前deployment資源部署情況。root@blockchain:/home/adminroot/k8s-nginx#kubectlgetdeploymentNAMEREADYUP-TO-DATEAVAILABLEAGEweb-nginx2/2228s從命令執(zhí)行結(jié)果上看,共有2個(gè)副本,2個(gè)有效副本,正是配置文件中定義的副本數(shù)量。四、部署和測(cè)試通過(guò)nfs卷部署nginx集群服務(wù)演示示例4:部署和測(cè)試學(xué)習(xí)步驟3、查看pod運(yùn)行情況用kubectlgetpod命令查看pod運(yùn)行情況,本命令省去了NOMINATEDNODE和READINESSGATES項(xiàng)。root@blockchain:/home/adminroot/k8s-nginx#kubectlgetpod-owideNAMEREADYSTATUSRESTARTSAGEIPNODEweb-nginx-66c8b4f869-bt55x1/1Running015s3ubuntu-chain1web-nginx-66c8b4f869-qtrwj1/1Running015s0ubuntu-chain0
從命令執(zhí)行結(jié)果上看,2個(gè)pod分別是web-nginx-66c8b4f869-bt55x和web-nginx-66c8b4f869-qtrwj,IP地址分別是3和0,分別分布在ubuntu-chain1和ubuntu-chain0節(jié)點(diǎn)。4、測(cè)試網(wǎng)頁(yè)用curl測(cè)試pod地址查看網(wǎng)頁(yè)內(nèi)容,執(zhí)行的結(jié)果可以看出顯示nfs上網(wǎng)頁(yè)文件內(nèi)容正確。root@blockchain:/home/adminroot/k8s-nginx#curl3這是一個(gè)kubernetsnginx集群測(cè)試頁(yè)root@blockchain:/home/adminroot/k8s-nginx#curl0這是一個(gè)kubernetsnginx集群測(cè)試頁(yè)四、部署和測(cè)試通過(guò)nfs卷部署nginx集群服務(wù)演示示例4:部署和測(cè)試學(xué)習(xí)步驟四、部署和測(cè)試完成時(shí)間:10分鐘學(xué)生練習(xí),教師巡回指導(dǎo)通過(guò)nfs卷部署nginx集群服務(wù)演示示例5:測(cè)試kubernetes的伸縮功能學(xué)習(xí)步驟1、修改配置文件增加副本數(shù)量修改web-nginx.yml文件,將replicas:2改成4。2、重新執(zhí)行部署命令root@blockchain:/home/adminroot/k8s-nginx#kubectlapply-fweb-nginx.ymldeployment.apps/web-nginxconfigured3、查看deployment狀態(tài)root@blockchain:/home/adminroot/k8s-nginx#kubectlgetdeploymentNAMEREADYUP-TO-DATEAVAILABLEAGEweb-nginx4/44411m從命令執(zhí)行結(jié)果上看,共有4個(gè)副本,4個(gè)有效副本,由原來(lái)的2個(gè)擴(kuò)展成4個(gè)。五、測(cè)試kubernetes的伸縮功能通過(guò)nfs卷部署nginx集群服務(wù)演示示例5:測(cè)試kubernetes的伸縮功能學(xué)習(xí)步驟3、查看pod運(yùn)行情況root@blockchain:/home/adminroot/k8s-nginx#kubectlgetpod-owideNAMEREADYSTATUSRESTARTSAGEIPNODENOMINATEDNODEREADINESSGATESweb-nginx-66c8b4f869-2fh8t1/1Running02m23s4ubuntu-chain1<none><none>web-nginx-66c8b4f869-khb491/1Running012m3ubuntu-chain1<none><none>web-nginx-66c8b4f869-nl9qt1/1Running02m23s1ubuntu-chain0<none><none>web-nginx-66c8b4f869-scnjm1/1Running012m0ubuntu-chain0<none><none>從命令執(zhí)行的結(jié)果上看,在ubuntu-chain0和ubuntu-chain1上分別有2個(gè)pod,符合預(yù)期。五、測(cè)試kubernetes的伸縮功能通過(guò)nfs卷部署nginx集群服務(wù)演示示例5:測(cè)試kubernetes的伸縮功能學(xué)習(xí)步驟4、測(cè)試網(wǎng)頁(yè)執(zhí)行curl命令測(cè)試4個(gè)pod中容器的網(wǎng)頁(yè),顯示正常。root@blockchain:/home/adminroot/k8s-nginx#curl0這是一個(gè)kubernetsnginx集群測(cè)試頁(yè)root@blockchain:/home/adminroot/k8s-nginx#curl1這是一個(gè)kubernetsnginx集群測(cè)試頁(yè)root@blockchain:/home/adminroot/k8s-nginx#curl3這是一個(gè)kubernetsnginx集群測(cè)試頁(yè)root@blockchain:/home/adminroot/k8s-nginx#curl4這是一個(gè)kubernetsnginx集群測(cè)試頁(yè)。五、測(cè)試kubernetes的伸縮功能通過(guò)nfs卷部署nginx集群服務(wù)演示示例5:測(cè)試kubernetes的伸縮功能學(xué)習(xí)步驟五、測(cè)試kubernetes的伸縮功能完成時(shí)間:15分鐘閱讀教材操作,教師巡回指導(dǎo)通過(guò)nfs卷部署nginx集群服務(wù)演示示例6:測(cè)試kubernetes的故障自愈功能學(xué)習(xí)步驟Kubernetes可以自動(dòng)發(fā)現(xiàn)節(jié)點(diǎn)故障,會(huì)將不可用節(jié)點(diǎn)上的pod調(diào)度到可用的節(jié)點(diǎn)上,保持pod數(shù)量符合用戶(hù)預(yù)期數(shù)量,下面測(cè)試以u(píng)buntu-chain1故障為例查看Kubernetes自愈結(jié)果。1、將ubuntu-chain1主機(jī)關(guān)閉root@ubuntu-chain1:~#halt-h2、查看節(jié)點(diǎn)狀況root@blockchain:/home/adminroot/k8s-nginx#kubectlgetnodeNAMESTATUSROLESAGEVERSIONblockchainReadymaster3h29mv1.18.3ubuntu-chain0Ready<none>3h20mv1.18.3ubuntu-chain1NotReady<none>3h20mv1.18.3可以看到ubuntu-chain1處于NotReady狀態(tài),不可提供服務(wù)。六、測(cè)試kubernetes的故障自愈功能通過(guò)nfs卷部署nginx集群服務(wù)演示示例6:測(cè)試kubernetes的故障自愈功能學(xué)習(xí)步驟3、查看deployment狀態(tài)root@blockchain:/home/adminroot/k8s-nginx#kubectlgetdeploymentNAMEREADYUP-TO-DATEAVAILABLEAGEweb-nginx2/44224m可以看到,web-nginx資源只有2個(gè)有效。六、測(cè)試kubernetes的故障自愈功能通過(guò)nfs卷部署nginx集群服務(wù)演示示例6:測(cè)試kubernetes的故障自愈功能學(xué)習(xí)步驟4、查看pod狀態(tài)root@blockchain:/home/adminroot/k8s-nginx#kubectlgetpod-owideNAMEREADYSTATUSRESTARTSAGEIPNODENOMINATEDNODEREADINESSGATESweb-nginx-66c8b4f869-2fh8t1/1Terminating018m4ubuntu-chain1<none><none>web-nginx-66c8b4f869-2hwkl1/1Running053s3ubuntu-chain0<none><none>web-nginx-66c8b4f869-khb491/1Terminating028m3ubuntu-chain1<none><none>web-nginx-66c8b4f869-nl9qt1/1Running018m1ubuntu-chain0<none><none>web-nginx-66c8b4f869-scnjm1/1Running028m0ubuntu-chain0<none><none>web-nginx-66c8b4f869-xcmfq1/1Running053s2ubuntu-chain0<none><none>從命令執(zhí)行結(jié)果上看,web-nginx-66c8b4f869-2fh8t和web-nginx-66c8b4f869-khb49兩個(gè)pod都處于Terminating狀態(tài),共有4個(gè)pod處于Running狀態(tài),說(shuō)明仍然保持4個(gè)pod副本運(yùn)行,但這4個(gè)pod都是在ubuntu-chain0上運(yùn)行。六、測(cè)試kubernetes的故障自愈功能通過(guò)nfs卷部署nginx集群服務(wù)演示示例6:測(cè)試kubernetes的故障自愈功能學(xué)習(xí)步驟5、查看重新啟動(dòng)ubuntu-chain1主機(jī)后deployment和pod狀態(tài)(1)查看deployment狀態(tài)root@blockchain:/home/adminroot/k8s-nginx#kubectlgetdeploymentNAMEREADYUP-TO-DATEAVAILABLEAGEweb-nginx4/44439m從命令執(zhí)行結(jié)果上看,恢復(fù)正常。六、測(cè)試kubernetes的故障自愈功能通過(guò)nfs卷部署nginx集群服務(wù)演示示例6:測(cè)試kubernetes的故障自愈功能學(xué)習(xí)步驟5、查看重新啟動(dòng)ubuntu-chain1主機(jī)后deployment和pod狀態(tài)(2)查看pod狀態(tài)root@blockchain:/home/adminroot/k8s-nginx#kubectlgetpod-owideNAMEREADYSTATUSRESTARTSAGEIPNODENOMINATEDNODEREADINESSGATESweb-nginx-66c8b4f869-2hwkl1/1Running012m3ubuntu-chain0<none><none>web-nginx-66c8b4f869-nl9qt1/1Running029m1ubuntu-chain0<none><none>web-nginx-66c8b4f869-scnjm1/1Running039m0ubuntu-chain0<none><none>web-nginx-66c8b4f869-xcmfq1/1Running012m2ubuntu-chain0<none><none>從命令執(zhí)行結(jié)果上看,4個(gè)pod正常運(yùn)行,但是仍在ubuntu-chain0上運(yùn)行,并不會(huì)調(diào)度到ubuntu-chain1上運(yùn)行。六、測(cè)試kubernetes的故障自愈功能通過(guò)nfs卷部署nginx集群服務(wù)演示示例6:測(cè)試kubernetes的故障自愈功能學(xué)習(xí)步驟5、查看重新啟動(dòng)ubuntu-chain1主機(jī)后deployment和pod狀態(tài)(3)增加副本數(shù)量測(cè)試將副本數(shù)量增加為5個(gè)測(cè)試。root@blockchain:/home/adminroot/k8s-nginx#kubectlgetpod-owideNAMEREADYSTATUSRESTARTSAGEIPNODENOMINATEDNODEREADINESSGATESweb-nginx-66c8b4f869-2hwkl1/1Running015m3ubuntu-chain0<none><none>web-nginx-66c8b4f869-n9q4j1/1Running08s5ubuntu-chain1<none><none>web-nginx-66c8b4f869-nl9qt1/1Running033m1ubuntu-chain0<none><none>web-nginx-66c8b4f869-scnjm1/1Running043m0ubuntu-chain0<none><none>web-nginx-66c8b4f869-xcmfq1/1Running015m2ubuntu-chain0<none><none>六、測(cè)試kubernetes的故障自愈功能通過(guò)nfs卷部署nginx集群服務(wù)演示示例6:測(cè)試kubernetes的故障自愈功能學(xué)習(xí)步驟5、查看重新啟動(dòng)ubuntu-chain1主機(jī)后deployment和pod狀態(tài)(3)增加副本數(shù)量測(cè)試將副本數(shù)量增加為7個(gè)測(cè)試。root@blockchain:/home/adminroot/k8s-nginx#kubectlgetpod-owideNAMEREADYSTATUSRESTARTSAGEIPNODENOMINATEDNODEREADINESSGATESweb-nginx-66c8b4f869-2hwkl1/1Running019m3ubuntu-chain0<none><none>web-nginx-66c8b4f869-2hxss1/1Running07s6ubuntu-chain1<none><none>web-nginx-66c8b4f869-9qlrd1/1Running07s7ubuntu-chain1<none><none>web-nginx-66c8b4f869-n9q4j1/1Running03m38s5ubuntu-chain1<none><none>web-nginx-66c8b4f869-nl9qt1/1Running036m1ubuntu-chain0<none><none>web-nginx-66c8b4f869-scnjm1/1Running046m0ubuntu-chain0<none>
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版家屬區(qū)整體改造裝修服務(wù)合同3篇
- 江蘇省南通市如皋市 2024-2025學(xué)年九年級(jí)上學(xué)期1月期末道德與法治試題(含答案)
- 二零二五年度企業(yè)并購(gòu)合同法操作指南3篇
- 保健品批發(fā)商的社區(qū)健康宣傳效果評(píng)估考核試卷
- 家居布藝的智能化窗簾控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)考核試卷
- 二零二五年度造紙機(jī)械租賃施工合同2篇
- 2025年新能源車(chē)位租賃與維護(hù)保養(yǎng)一體化服務(wù)合同2篇
- 2025年新能源產(chǎn)品銷(xiāo)售業(yè)績(jī)達(dá)標(biāo)合同范本2篇
- 2025年信息安全技術(shù)協(xié)議
- 2025年度智能設(shè)備維修個(gè)人勞務(wù)合同模板3篇
- 我的家鄉(xiāng)瓊海
- (2025)專(zhuān)業(yè)技術(shù)人員繼續(xù)教育公需課題庫(kù)(附含答案)
- 《互聯(lián)網(wǎng)現(xiàn)狀和發(fā)展》課件
- 【MOOC】計(jì)算機(jī)組成原理-電子科技大學(xué) 中國(guó)大學(xué)慕課MOOC答案
- 2024年上海健康醫(yī)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)及答案解析
- 2024年湖北省武漢市中考語(yǔ)文適應(yīng)性試卷
- 非新生兒破傷風(fēng)診療規(guī)范(2024年版)解讀
- EDIFIER漫步者S880使用說(shuō)明書(shū)
- 皮膚惡性黑色素瘤-疾病研究白皮書(shū)
- 從心理學(xué)看現(xiàn)代家庭教育課件
- C語(yǔ)言程序設(shè)計(jì)PPT(第7版)高職完整全套教學(xué)課件
評(píng)論
0/150
提交評(píng)論