真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Kubernetes上對應(yīng)用程序進(jìn)行故障排除的技巧有哪些

這篇文章主要講解了“Kubernetes上對應(yīng)用程序進(jìn)行故障排除的技巧有哪些”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Kubernetes上對應(yīng)用程序進(jìn)行故障排除的技巧有哪些”吧!

創(chuàng)新互聯(lián)建站主要從事成都網(wǎng)站制作、網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)梅江,十載網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):028-86922220

1.kubectl get deployment/pods

這個(gè)命令如此重要的原因是它無需顯示大量內(nèi)容即可顯示很有用的信息。

如果要為工作負(fù)載使用部署,則有兩種選擇:

kubectl get deploy  kubectl get deploy -n 名稱空間  kubectl get deploy –all-namespaces [或“ -A”]

理想情況下,您希望看到的是1/1或等值的2/2,以此類推。這表明您的部署已被接受,并已嘗試進(jìn)行部署。

接下來,您可能需要查看kubectl get pod,以查看部署的后備Pod是否正確啟動(dòng)。

2. kubectl get events

我感到驚訝的是,我不得不經(jīng)常向與Kubernetes有問題的人們解釋這個(gè)小技巧。此命令將打印出給定名稱空間中的事件,非常適合查找關(guān)鍵問題,例如崩潰的pod或無法pull容器鏡像。

Kubernetes中的日志是“未排序的”,因此,您將需要添加以下內(nèi)容,這些內(nèi)容取自O(shè)penFaaS文檔。

$ kubectl get events --sort-by=.metadata.creationTimestamp

kubectl get事件的另一個(gè)接近的命令是是kubectl  describe,就像get deploy / pod一樣,它與對象的名稱一起工作:

kubectl describe deploy/figlet -n openfaas

您會(huì)在這里獲得非常詳細(xì)的信息。您可以描述大多數(shù)事情,包括節(jié)點(diǎn),這些節(jié)點(diǎn)將顯示由于資源限制或其他問題而無法啟動(dòng) Pod。

3. kubectl logs

這個(gè)命令肯定經(jīng)常大家經(jīng)常使用,但很多人使用了錯(cuò)誤的方式。

如果您進(jìn)行了部署,比方說cert-manager命名空間中的cert-manager,那么很多人認(rèn)為他們首先必須找到Pod的長(唯一)名稱并將其用作參數(shù)。不對。

kubectl logs deploy/cert-manager -n cert-manager

要跟蹤日志,請?zhí)砑?f

kubectl logs deploy/cert-manager -n cert-manager -f

您可以將所有三個(gè)結(jié)合起來。

如果您的 Deployment 或 Pod 有任何標(biāo)簽,則可以使用 -l app = name 或任何其他標(biāo)簽集來附加到一個(gè)或多個(gè)匹配Pod的日志中。

kubectl logs -l app=nginx

有一些工具,例如 stern 和 kail,可以幫助您匹配模式并節(jié)省一些鍵入操作,但我發(fā)現(xiàn)它們會(huì)分散您的注意力。

4.kubectl get -o yaml

當(dāng)您開始使用由另一個(gè)項(xiàng)目或諸如Helm之類的其他工具生成的YAML時(shí),您將很快需要它。在生產(chǎn)中檢查鏡像的版本或您在某處設(shè)置的注釋也很有用。

kubectl run nginx-1 --image=nginx --port=80 --restart=Always

輸出yaml

kubectl get deploy/nginx-1 -o yaml

現(xiàn)在我們知道了。而且,我們可以添加–export并將YAML保存在本地以進(jìn)行編輯并再次應(yīng)用。

實(shí)時(shí)編輯YAML的另一個(gè)選項(xiàng)是kubectl edit,如果您對vim感到困惑,不知道如何使用,請?jiān)诿钋凹由蟅ISUAL = nano,使用這個(gè)簡化編輯器。

5. kubectl scale  您打開和關(guān)閉它了嗎?

Kubectl scale可用于將Deployment及其Pod縮小為零個(gè)副本,實(shí)際上殺死了所有副本。當(dāng)您將其縮放回1/1時(shí),將創(chuàng)建一個(gè)新的Pod,重新啟動(dòng)您的應(yīng)用程序。

語法非常簡單,您可以重新啟動(dòng)代碼并再次進(jìn)行測試。

kubectl scale deploy/nginx-1 --replicas=0  kubectl scale deploy/nginx-1 --replicas=1

6. Port forwarding

我們需要這個(gè)技巧, 通過kubectl進(jìn)行的端口轉(zhuǎn)發(fā)使我們可以在我們自己計(jì)算機(jī)上的本地或遠(yuǎn)程群集上公開一項(xiàng)服務(wù),以便在任何已配置的端口上訪問它,而無需在Internet上公開它。

以下是在本地訪問Nginx部署的示例:

kubectl port-forward deploy/nginx-1 8080:80

有人認(rèn)為這僅適用于部署或Pod,這是錯(cuò)誤的。服務(wù)間是公平的,通常是轉(zhuǎn)發(fā)的選擇,因?yàn)樗鼈儗⒛M生產(chǎn)集群中的配置。

如果您確實(shí)想在Internet上公開服務(wù),通常會(huì)使用LoadBalancer服務(wù),或運(yùn)行kubectl暴露:

kubectl expose deployment nginx-1 --port=80 --type=LoadBalancer

感謝各位的閱讀,以上就是“Kubernetes上對應(yīng)用程序進(jìn)行故障排除的技巧有哪些”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對Kubernetes上對應(yīng)用程序進(jìn)行故障排除的技巧有哪些這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!


網(wǎng)頁名稱:Kubernetes上對應(yīng)用程序進(jìn)行故障排除的技巧有哪些
網(wǎng)頁路徑:http://weahome.cn/article/gjsjoj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部