0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

K8S集群服務訪問失敗怎么辦 K8S故障處理集錦

開關電源芯片 ? 來源:博客園 ? 作者:chalon ? 2021-09-01 11:11 ? 次閱讀

問題1:K8S集群服務訪問失???

原因分析:證書不能被識別,其原因為:自定義證書,過期等。

解決方法:更新證書即可。

問題2:K8S集群服務訪問失???

curl: (7) Failed connect to 10.103.22.158:3000; Connection refused

原因分析:端口映射錯誤,服務正常工作,但不能提供服務。

解決方法:刪除svc,重新映射端口即可。

kubectl delete svc nginx-deployment

問題3:K8S集群服務暴露失?。?/p>

Error from server (AlreadyExists): services “nginx-deployment” already exists

原因分析:該容器已暴露服務了。

解決方法:刪除svc,重新映射端口即可。

問題4:外網(wǎng)無法訪問K8S集群提供的服務?**

原因分析:K8S集群的type為ClusterIP,未將服務暴露至外網(wǎng)。

解決方法:修改K8S集群的type為NodePort即可,于是可通過所有K8S集群節(jié)點訪問服務。

kubectl edit svc nginx-deployment

問題5:pod狀態(tài)為ErrImagePull?

readiness-httpget-pod 0/1 ErrImagePull 0 10s

原因分析:image無法拉??;

解決方法:更換鏡像即可。

問題6:創(chuàng)建init C容器后,其狀態(tài)不正常?

NAME READY STATUS RESTARTS AGEmyapp-pod 0/1 Init:0/2 0 20s

原因分析:查看日志發(fā)現(xiàn),pod一直出于初始化中;然后查看pod詳細信息,定位pod創(chuàng)建失敗的原因為:初始化容器未執(zhí)行完畢。

Error from server (BadRequest): container “myapp-container” in pod “myapp-pod” is waiting to start: PodInitializing

waiting for myservice

Server: 10.96.0.10Address: 10.96.0.10:53

** server can‘t find myservice.default.svc.cluster.local: NXDOMAIN

*** Can’t find myservice.svc.cluster.local: No answer*** Can‘t find myservice.cluster.local: No answer*** Can’t find myservice.default.svc.cluster.local: No answer*** Can‘t find myservice.svc.cluster.local: No answer*** Can’t find myservice.cluster.local: No answer

解決方法:創(chuàng)建相關service,將SVC的name寫入K8S集群的coreDNS服務器中,于是coreDNS就能對POD的initC容器執(zhí)行過程中的域名解析了。

kubectl apply -f myservice.yaml

70d876ec-fc4b-11eb-9bcf-12bb97331649.png

70e26242-fc4b-11eb-9bcf-12bb97331649.png

70ee8874-fc4b-11eb-9bcf-12bb97331649.png

NAME READY STATUS RESTARTS AGE

myapp-pod 0/1 Init:1/2 0 27mmyapp-pod 0/1 PodInitializing 0 28mmyapp-pod 1/1 Running 0 28m

問題7:探測存活pod狀態(tài)為CrashLoopBackOff?

原因分析:鏡像問題,導致容器重啟失敗。

解決方法:更換鏡像即可。

71883b18-fc4b-11eb-9bcf-12bb97331649.png

問題8:POD創(chuàng)建失???

readiness-httpget-pod 0/1 Pending 0 0sreadiness-httpget-pod 0/1 Pending 0 0sreadiness-httpget-pod 0/1 ContainerCreating 0 0sreadiness-httpget-pod 0/1 Error 0 2sreadiness-httpget-pod 0/1 Error 1 3sreadiness-httpget-pod 0/1 CrashLoopBackOff 1 4sreadiness-httpget-pod 0/1 Error 2 15sreadiness-httpget-pod 0/1 CrashLoopBackOff 2 26sreadiness-httpget-pod 0/1 Error 3 37sreadiness-httpget-pod 0/1 CrashLoopBackOff 3 52sreadiness-httpget-pod 0/1 Error 4 82s

原因分析:鏡像問題導致容器無法啟動。

7192887a-fc4b-11eb-9bcf-12bb97331649.png

解決方法:更換鏡像。

719d0548-fc4b-11eb-9bcf-12bb97331649.png

71a875cc-fc4b-11eb-9bcf-12bb97331649.png

問題9:POD的ready狀態(tài)未進入?

readiness-httpget-pod 0/1 Running 0 116s

原因分析:POD的執(zhí)行命令失敗,無法獲取資源。

71b21032-fc4b-11eb-9bcf-12bb97331649.png

解決方法:進入容器內部,創(chuàng)建yaml定義的資源

71ca7816-fc4b-11eb-9bcf-12bb97331649.png

71d6c364-fc4b-11eb-9bcf-12bb97331649.png

問題10:pod創(chuàng)建失???

71f1586e-fc4b-11eb-9bcf-12bb97331649.png

原因分析:yml文件內容出錯—-使用中文字符;

解決方法:修改myregistrykey內容即可。

72000364-fc4b-11eb-9bcf-12bb97331649.png

11、kube-flannel-ds-amd64-ndsf7插件pod的status為Init:0/1?

72085e60-fc4b-11eb-9bcf-12bb97331649.png

排查思路:kubectl -n kube-system describe pod kube-flannel-ds-amd64-ndsf7 #查詢pod描述信息;

721d19a4-fc4b-11eb-9bcf-12bb97331649.png

原因分析:k8s-slave1節(jié)點拉取鏡像失敗。

解決方法:登錄k8s-slave1,重啟docker服務,手動拉取鏡像。

7234183e-fc4b-11eb-9bcf-12bb97331649.png

k8s-master節(jié)點,重新安裝插件即可。

kubectl create -f kube-flannel.yml;kubectl get nodes

72452818-fc4b-11eb-9bcf-12bb97331649.png

12、K8S創(chuàng)建服務status為ErrImagePull?

72582602-fc4b-11eb-9bcf-12bb97331649.png

排查思路:

kubectl describe pod test-nginx

72676f0e-fc4b-11eb-9bcf-12bb97331649.png

原因分析:拉取鏡像名稱問題。

解決方法:刪除錯誤pod;重新拉取鏡像;

kubectl delete pod test-nginx;kubectl run test-nginx --image=10.0.0.81:5000/nginx:alpine

13、不能進入指定容器內部?

727a2c48-fc4b-11eb-9bcf-12bb97331649.png

原因分析:yml文件comtainers字段重復,導致該pod沒有該容器。

解決方法:去掉yml文件中多余的containers字段,重新生成pod。

7285b040-fc4b-11eb-9bcf-12bb97331649.png

72917b50-fc4b-11eb-9bcf-12bb97331649.png

14、創(chuàng)建PV失?。?/p>

729ba01c-fc4b-11eb-9bcf-12bb97331649.png

原因分析:pv的name字段重復。

解決方法:修改pv的name字段即可。

72ae28d6-fc4b-11eb-9bcf-12bb97331649.png

15、pod無法掛載PVC?

72b7bb9e-fc4b-11eb-9bcf-12bb97331649.png

72c0f7d6-fc4b-11eb-9bcf-12bb97331649.png

原因分析:pod無法掛載PVC。

72cbe740-fc4b-11eb-9bcf-12bb97331649.png

73464ae4-fc4b-11eb-9bcf-12bb97331649.png

accessModes與可使用的PV不一致,導致無法掛載PVC,由于只能掛載大于1G且accessModes為RWO的PV,故只能成功創(chuàng)建1個pod,第2個pod一致pending,按序創(chuàng)建時則第3個pod一直未被創(chuàng)建;

解決方法:修改yml文件中accessModes或PV的accessModes即可。

735283a4-fc4b-11eb-9bcf-12bb97331649.png

16、問題:pod使用PV后,無法訪問其內容?

73631ee4-fc4b-11eb-9bcf-12bb97331649.png

原因分析:nfs卷中沒有文件或權限不對。

73a474fc-fc4b-11eb-9bcf-12bb97331649.png

73af9e86-fc4b-11eb-9bcf-12bb97331649.png

解決方法:在nfs卷中創(chuàng)建文件并授予權限。

73b9d2e8-fc4b-11eb-9bcf-12bb97331649.png

73c25ef4-fc4b-11eb-9bcf-12bb97331649.png

17、查看節(jié)點狀態(tài)失???

Error from server (NotFound): the server could not find the requested resource (get services http)

原因分析:沒有heapster服務。

解決方法:安裝promethus監(jiān)控組件即可。

73cf4e0c-fc4b-11eb-9bcf-12bb97331649.png

74380e9c-fc4b-11eb-9bcf-12bb97331649.png

18、pod一直處于pending’狀態(tài)?

7442c080-fc4b-11eb-9bcf-12bb97331649.png

原因分析:由于已使用同樣鏡像發(fā)布了pod,導致無節(jié)點可調度。

74c57dfe-fc4b-11eb-9bcf-12bb97331649.png

解決方法:刪除所有pod后部署pod即可。

74d0171e-fc4b-11eb-9bcf-12bb97331649.png

19、helm安裝組件失敗?

[root@k8s-master01 hello-world]# helm install

Error: This command needs 1 argument: chart nam

[root@k8s-master01 hello-world]# helm install 。/Error: no Chart.yaml exists in directory “/root/hello-world”

原因分析:文件名格式不對。

解決方法:mv chart.yaml Chart.yaml

責任編輯:haq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 容器
    +關注

    關注

    0

    文章

    490

    瀏覽量

    21986
  • 代碼
    +關注

    關注

    30

    文章

    4670

    瀏覽量

    67764

原文標題:這些 K8S 日常故障處理集錦,運維請收藏~

文章出處:【微信號:gh_3980db2283cd,微信公眾號:開關電源芯片】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    常用的k8s容器網(wǎng)絡模式有哪些?

    常用的k8s容器網(wǎng)絡模式包括Bridge模式、Host模式、Overlay模式、Flannel模式、CNI(ContainerNetworkInterface)模式。K8s的容器網(wǎng)絡模式多種多樣
    的頭像 發(fā)表于 09-19 11:29 ?51次閱讀

    基于DPU與SmartNIC的K8s Service解決方案

    遷移。 Kubernetes Service主要特性和用途 服務發(fā)現(xiàn): Service允許客戶端(如Pods中的應用程序)通過穩(wěn)定的IP地址和端口號訪問后端
    的頭像 發(fā)表于 09-02 17:01 ?694次閱讀
    基于DPU與SmartNIC的<b class='flag-5'>K8s</b> Service解決方案

    K8S集群中使用JDOS KMS服務對敏感數(shù)據(jù)安全加密

    基本概念 KMS,Key Management Service,即密鑰管理服務,在K8S集群中,以驅動和插件的形式啟用對Secret,Configmap進行加密。以保護敏感數(shù)據(jù), 驅動和插件需要
    的頭像 發(fā)表于 08-09 16:00 ?106次閱讀
    <b class='flag-5'>K8S</b><b class='flag-5'>集群</b>中使用JDOS KMS<b class='flag-5'>服務</b>對敏感數(shù)據(jù)安全加密

    K8S學習教程三:在PetaExpress KubeSphere 容器部署 Wiki 系統(tǒng) wiki.js 并啟用中文全文檢索

    K8S學習教程(三):在PetaExpress KubeSphere 容器部署 Wiki 系統(tǒng) wiki.js 并啟用中文全文檢索? 。
    的頭像 發(fā)表于 07-08 17:03 ?451次閱讀
    <b class='flag-5'>K8S</b>學習教程三:在PetaExpress KubeSphere 容器部署 Wiki 系統(tǒng) wiki.js 并啟用中文全文檢索

    K8S學習教程(二):在 PetaExpress KubeSphere容器平臺部署高可用 Redis 集群

    并且需要手動重啟節(jié)點,相較之下,使用 PetaExpress 提供的 Kubernetes(k8s) 服務 進行 Redis 集群的部署,則展現(xiàn)出了顯著的優(yōu)勢: 1、安裝便捷:使用鏡像或者 yaml 配置文件即可一件安裝,極大地
    的頭像 發(fā)表于 07-03 15:30 ?359次閱讀
    <b class='flag-5'>K8S</b>學習教程(二):在 PetaExpress KubeSphere容器平臺部署高可用 Redis <b class='flag-5'>集群</b>

     K8S學習教程一:使用PetaExpress云服務器安裝Minikube 集群

    使得開發(fā)人員能夠在本地機器上輕松創(chuàng)建一個單節(jié)點的 Kubernetes 集群,從而方便開發(fā)、測試和學習 Kubernetes。 我們看下如何使用PetaExpress云服務器安裝Minikube 集群
    的頭像 發(fā)表于 07-01 15:41 ?222次閱讀
     <b class='flag-5'>K8S</b>學習教程一:使用PetaExpress云<b class='flag-5'>服務</b>器安裝Minikube <b class='flag-5'>集群</b>

    Kubectl核心命令總結:如何快速掌握K8s

    設置 kubectl 命令交互的 kubernetes 集群并修改配置信息。參閱 使用 kubeconfig 文件進行跨集群驗證 獲取關于配置文件的詳細信息。
    的頭像 發(fā)表于 02-23 14:43 ?364次閱讀
    Kubectl核心命令總結:如何快速掌握<b class='flag-5'>K8s</b>

    淺析Ranther管理K8S集群

    Rancher 基于 Kubernetes 添加了新的功能,包括統(tǒng)一所有集群的身份驗證和 RBAC,讓系統(tǒng)管理員從一個位置控制全部集群訪問。
    的頭像 發(fā)表于 01-21 10:28 ?749次閱讀
    淺析Ranther管理<b class='flag-5'>K8S</b><b class='flag-5'>集群</b>

    K8S落地實踐經(jīng)驗分享

    k8s 即 Kubernetes,是一個開源的容器編排引擎,用來對容器化應用進行自動化部署、 擴縮和管理。
    的頭像 發(fā)表于 01-02 11:45 ?895次閱讀
    <b class='flag-5'>K8S</b>落地實踐經(jīng)驗分享

    使用Solopace.Gem遠程訪問內網(wǎng)ERP-dolibarr

    步驟一. 安裝dolibarr開源ERP系統(tǒng) dolibarr的數(shù)據(jù)存儲可選mysql或postgres,在??使用Solopace.Gem訪問k8s部署的CMS系統(tǒng)??一文中,我們在
    的頭像 發(fā)表于 12-25 11:45 ?567次閱讀
    使用Solopace.Gem遠程<b class='flag-5'>訪問</b>內網(wǎng)ERP-dolibarr

    multus cni是什么?k8s多網(wǎng)卡方案之multus用法介紹

    k8s的環(huán)境中啟動一個容器,默認情況下只存在兩個虛擬網(wǎng)絡接口(loopback 和 eth0), loopback 的流量始終都會在本容器內或本機循環(huán),對業(yè)務起到支撐作用的是 eth0,能夠滿足大部分的業(yè)務場景。
    的頭像 發(fā)表于 11-06 09:35 ?1646次閱讀
    multus cni是什么?<b class='flag-5'>k8s</b>多網(wǎng)卡方案之multus用法介紹

    K8s常見的10個問題排查

    K8S集群狀態(tài)是排查故障的關鍵起點。使用kubectl get nodes命令來檢查節(jié)點狀態(tài)。如果有節(jié)點未能就緒或出現(xiàn)異常狀態(tài),可能會對應用程序造成故障。確保基本組件,如etcd、k
    發(fā)表于 11-01 12:26 ?1196次閱讀
    <b class='flag-5'>K8s</b>常見的10個問題排查

    S32K3可以直連AWS云服務啦!

    基于S32K3的區(qū)域控制模塊和終端節(jié)點現(xiàn)可訪問AWS云服務,進一步擴展了S32汽車計算平臺的云訪問能力。
    的頭像 發(fā)表于 10-20 10:15 ?459次閱讀
    <b class='flag-5'>S32K</b>3可以直連AWS云<b class='flag-5'>服務</b>啦!

    k8s架構篇:服務部署模式是如何變遷的

    kubernetes,簡稱 K8s,是用 8 代替中間 8 個字符 “ubernete” 而成的縮寫,是一個開源的,用于管理云平臺中多個主機上的容器化的應用,Kubernetes 的目標是讓部署容器
    的頭像 發(fā)表于 10-15 15:39 ?559次閱讀
    <b class='flag-5'>k8s</b>架構篇:<b class='flag-5'>服務</b>部署模式是如何變遷的

    STM8S103K3 STM8S103F3 STM8S103F2數(shù)據(jù)手冊

    STM8S103x訪問8位微控制器提供8k字節(jié)閃存程序存儲器,加上集成的真數(shù)據(jù)EEPROM。STM8S微控制器系列參考手冊(RM0016)
    發(fā)表于 10-10 08:19