k8s常見問題

以下是 Kubernetes 常見問題(FAQ)的整理,涵蓋了初學者和運維人員常遇到的痛點:


?一、部署與安裝問題?

  1. ?安裝太復雜???

    • 解決方案:使用 ?kubeadm?(官方工具)、Minikube?(單節點本地開發)、Kind?(Docker容器模擬集群)或云托管的K8s服務(如EKS/AKS/GKE)。
    • 避坑:國內環境注意鏡像源替換(如阿里云鏡像倉庫)。
  2. ?節點狀態 NotReady???

    • ?檢查方向?:
      • 網絡插件未安裝(如Calico/Flannel運行異常)。
      • kubelet 服務崩潰(systemctl status kubelet)。
      • 節點資源不足(內存/CPU耗盡)。

?二、日常操作問題?

  1. ?如何快速查看資源狀態???

    kubectl get pods -n <namespace>          # 查看Pod
    kubectl describe pod <pod-name>          # 排查Pod詳情(事件、錯誤日志)
    kubectl logs <pod-name> -c <container>   # 查看容器日志
    kubectl top nodes/pods                   # 監控資源占用
  2. ?誤刪了資源怎么辦???

    • K8s部分資源支持優雅刪除(如Deployment會重建Pod),但關鍵數據(如未備份的PersistentVolume)可能永久丟失。
    • ?預防措施?:
      • 啟用 ?命名空間隔離? 和 ?RBAC權限控制
      • 使用 ?Velero? 定期備份整個集群。

?三、配置與調試問題?

  1. ?Pod卡在 Pending 狀態???

    • ?常見原因?:
      • 資源不足(節點無足夠CPU/內存)。
      • 未匹配NodeSelector/Affinity(如指定了GPU節點但不存在)。
      • PersistentVolumeClaim(PVC)綁定失敗(存儲類不可用或容量不足)。
  2. ?Service無法訪問???

    • ?排查步驟?:
      1. 檢查Service的Endpoints是否正常:
        kubectl get endpoints <service-name>
      2. 驗證Pod是否Ready(Readiness Probe可能失敗)。
      3. 網絡策略(NetworkPolicy)是否攔截流量。

?四、存儲與數據問題?

  1. ?PV/PVC綁定失敗???

    • 檢查StorageClass配置(如AWS EBS需IAM權限)。
    • 動態存儲需云提供商支持,靜態PV需手動創建。
  2. ?容器內文件修改后丟失???

    • 默認容器文件系統是臨時的!?必須用Volume持久化數據?:
      • 臨時存儲:emptyDir
      • 持久存儲:PersistentVolumeClaim
      • 配置掛載:ConfigMap/Secret

?五、升級與運維問題?

  1. ?滾動更新卡住???

    • ?原因?:
      • 新版本Pod啟動失敗(如配置錯誤)。
      • maxUnavailable設得過低(默認25%)。
    • ?強制回滾?:
      kubectl rollout undo deployment/<deployment-name>
  2. ?如何安全擴縮容???

    • 手動:kubectl scale deployment/<name> --replicas=5
    • 自動(HPA):基于CPU/內存或自定義指標自動擴縮。

?六、概念混淆問題?

  1. ?Deployment vs StatefulSet vs DaemonSet???

    類型用途典型場景
    ?Deployment?無狀態應用Web服務、API
    ?StatefulSet有狀態應用(需穩定網絡/存儲)MySQL、Elasticsearch
    ?DaemonSet?每個節點運行一個副本日志收集(Fluentd)、節點監控
  2. ?ConfigMap vs Secret???

    • ConfigMap:存儲非敏感配置(如環境變量)。
    • Secret:存儲敏感數據(密碼/TLS證書),?需加密存儲?(啟用Etcd加密)。

?七、高級問題?

  1. ?如何調試網絡???

    • 工具鏈:
      • kubectl exec進入Pod測試DNS解析。
      • calicoctl診斷網絡策略。
      • 集群級工具:Weave Scope、Istio可視化。
  2. ?K8s集群性能瓶頸在哪???

    • ?監控方案?:
      • 內置工具:Metrics Server + kubectl top
      • 完整方案:Prometheus + Grafana(監控APIServer/Etcd/節點資源)。

?避坑指南?

  • ?鏡像拉取失敗?:檢查imagePullSecrets(私有倉庫認證)。
  • ?Pod不斷重啟?:查看CrashLoopBackOff日志(通常應用啟動錯誤)。
  • ?資源限制泄漏?:為Pod設置resources.limits,避免節點雪崩。

💡 ?學習建議?:

  • 實驗環境:用 Minikube 快速嘗試基礎操作。
  • 官方文檔:查看 kubernetes.io/docs 的 ?Tasks? 和 ?Troubleshooting? 板塊。
  • 實戰工具:k9s(終端管理工具)、Lens(桌面IDE)。

遇到具體問題時可結合kubectl describe和事件日志精準定位!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/92111.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/92111.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/92111.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

RK Android14 新建分區恢復出廠設置分區數據不擦除及開機動畫自定義(一)

文章目錄 前言 一、分區創建與參數配置 二、分區掛載配置 三、SELinux 安全策略 四、系統初始化配置 五、開機動畫路徑重定向 總結 前言 本方案通過在 RK3568 Android 14 系統中創建一個獨立的 rk_partition 分區(128MB),實現以下核心功能: 出廠設置保護:該分區在恢復出廠…

如何快速給PDF加書簽--保姆級教程

買的電子書沒有目錄書簽看著不舒服&#xff0c;手動加書簽加到想吐。想有沒有辦法快速加書簽。這要分為PDF目錄部分可以被復制和不可被復制兩種情況。不可復制時&#xff0c;要用到工具把目錄提取出來&#xff0c;變成文字。 工具&#xff1a;Foxit Phantom福昕閱讀器&#xff…

Redis面試精講 Day 9:Redis模塊開發與擴展

【Redis面試精講 Day 9】Redis模塊開發與擴展 文章標簽 Redis,模塊開發,擴展機制,面試技巧,Redis模塊,Redis插件 文章簡述 本文是"Redis面試精講"系列第9天&#xff0c;聚焦Redis模塊開發與擴展機制。文章詳細解析Redis模塊系統的架構設計&#xff0c;包括模塊加…

八股訓練--Spring

目錄 一、引言 二、Spring 1.Spring框架的特性 2.介紹一下IOC和AOP 3.IOC和AOP都是如何實現的 4.怎么實現依賴注入 5.為什么AOP不用靜態代理 6.介紹一下反射 7.Spring如何解決循環依賴問題 8.Spring常用注解 9.Spring事務什么情況會失效 10.Bean的生命周期 11.Bean…

無公網環境下在centos7.9上使用kk工具部署k8s平臺(amd64架構)

文章目錄前言一、環境列表二、思路三、環境準備四、有網環境下準備文件1.下載所需的rpm包2.準備harbor需要用到的鏡像3. k8s的鏡像文件4、 生成離線安裝包5、harbor創建項目腳本五、無公網環境部署單點集群1、基礎環境安裝2、安裝harbor3 、 準備k8s鏡像4、安裝k8s六、無公網環…

Objective-C中非傳統設計模式的探索與實踐

本文還有配套的精品資源&#xff0c;點擊獲取 簡介&#xff1a;Objective-C的設計模式不僅僅局限于經典模式&#xff0c;還可以利用其動態特性實現一些非傳統的模式。本文介紹了一系列基于Objective-C動態特性的設計模式&#xff0c;包括使用協議代替類繼承、通過分類擴展類…

【筆記】重學單片機(51)(下)

中斷系統 正常運行過程中&#xff0c;被打斷進行另外工作&#xff0c;結束后回到原有進程。 5個中斷源 外部中斷源&#xff08;2個&#xff09;&#xff1a;INT0——由P3.2端口線引入&#xff0c;低電平或下降沿引起。INT1——由P3.3端口線引入&#xff0c;低電平或下降沿引起。…

Go實現程序啟動器進而實現隱藏真實內容

注意&#xff1a; 本文內容于 2025-08-03 01:10:35 創建&#xff0c;可能不會在此平臺上進行更新。如果您希望查看最新版本或更多相關內容&#xff0c;請訪問原文地址&#xff1a;Go實現程序啟動器進而實現隱藏真實內容。感謝您的關注與支持&#xff01; 突發奇想&#xff0c;…

Fiddler 中文版怎么用 實現接口抓包調試與前后端聯調閉環

API調試在現代開發流程中的地位愈發重要&#xff1a;接口數量激增、請求邏輯復雜、數據結構多變、安全校驗機制加嚴……一個小小的參數錯誤、一次隱蔽的跨域問題、一個環境配置疏漏&#xff0c;都可能導致長時間的排查成本。而擁有一款既強大又易用的調試工具&#xff0c;尤其是…

ollama 多實例部署

如果我們需要在一臺服務器上使用多個ollama服務&#xff0c;那么我們需要進行將ollama前端和ollama后端對應連接的操作&#xff0c;否則就會出現如下場景&#xff1a;我們可以在當前端口設置&#xff0c;這句話就是指明當前ollama實例使用哪個后端進行請求&#xff1a;export O…

orchestrator部署

場景&#xff1a; 用于管理MySQL高可用 下載jq包 每臺orchestrator集群機器上都進行下載。 # wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm # rpm -ivh epel-release-latest-7.noarch.rpm # yum repolist ###檢查是否已經添加到源列表 # yum i…

CentOS 6.4 上安裝 Oracle 10.2.0.1 并升級到 10.2.0.4

目錄 一、系統檢查與設置 1. 檢查系統版本與磁盤空間 2. 修改系統參數 3. 創建組和用戶 4. 設置主機名 5. 檢查安裝軟件包 6. 設置 oracle 用戶環境變量 二、安裝 Oracle 軟件包 1. 安裝 10.2.0.1 安裝包 2. 安裝 10.2.0.4 補丁 三、建庫 四、配置監聽器 1. 編輯配…

【基于C# + HALCON的工業視系統開發實戰】二十六、車規級PCB全自動質檢:3D SPI+AI光學檢測融合方案

摘要&#xff1a;本文詳細闡述基于C# .NET Core 6與HALCON 24.11開發的車規級PCB板AOI智能檢測系統&#xff0c;提出3D SPI與AI光學檢測融合方案。系統通過結構光3D測量技術實現錫膏印刷質量檢測&#xff0c;結合多算法融合的自動光學檢測完成元件缺陷識別&#xff0c;構建SPI與…

Go源碼解讀——互斥鎖與讀寫鎖

互斥鎖Mutextype Mutex struct {// 表示互斥鎖狀態state int32// 表示信號量&#xff0c;協程阻塞等待該信號量&#xff0c;解鎖的協程釋放信號量從而喚醒等待信號量的協程sema uint32 }Locked: 表示該Mutex是否已被鎖定&#xff0c;0&#xff1a;沒有鎖定 1&#xff1a;已被鎖…

Linux(centos)安全狗

sdui進入操作頁面 [rootlocalhost safedog_an_linux64_2.8.32947]# sdui維護 查看、啟動或停止服務。 [rootiZbp1f0xuq9rc41s6gdvfyZ /]# systemctl status safedog [rootiZbp1f0xuq9rc41s6gdvfyZ /]# systemctl start safedog [rootiZbp1f0xuq9rc41s6gdvfyZ /]# systemct…

ES9 / ES2018 正則表達式增強

? 一、命名捕獲組&#xff08;Named Capture Groups&#xff09;給捕獲結果起名字&#xff0c;更易讀、更易維護。&#x1f539; 傳統寫法&#xff08;位置識別&#xff09;&#xff1a;const result /(\d{4})-(\d{2})-(\d{2})/.exec("2025-07-31"); console.log(…

深入Java開發:Token的全方位解析與實戰指南(下)

深入Java開發&#xff1a;Token的全方位解析與實戰指南&#xff08;下&#xff09; 上一篇 深入Java開發&#xff1a;Token的全方位解析與實戰指南&#xff08;上&#xff09; 五、Token 的生命周期與管理 5.1 Token 的生命周期狀態 Token 的生命周期涵蓋了從創建到最終失效…

第二十四天(數據結構:棧和隊列)隊列實踐請看下一篇

棧和隊列棧 &#xff1a; 是限定在表尾進行插入和刪除操作的線性表實現是一回事&#xff0c;但是必須要滿足棧的基本特點它的設計思路是:先進后出&#xff0c;后進先出棧有兩端1 棧頂(top) &#xff1a;插入數據刪除數據都只能在這一端訪問也只能訪問棧頂2 棧底(bottom) : 棧底…

三、Spark 運行環境部署:全面掌握四種核心模式

作者&#xff1a;IvanCodes 日期&#xff1a;2025年7月25日 專欄&#xff1a;Spark教程 Apache Spark 作為統一的大數據分析引擎&#xff0c;以其高性能和靈活性著稱。要充分利用Spark的強大能力&#xff0c;首先需要根據不同的應用場景和資源環境&#xff0c;正確地部署其運行…

【Django】-2- 處理HTTP請求

一、request 請求 先理解&#xff1a;Request 是啥&#xff1f;用戶訪問你的網站時&#xff0c;會發一個 “請求包” &#x1f4e6; &#xff0c;里面裝著&#xff1a;想訪問啥路徑&#xff1f;用啥方法&#xff08;GET/POST 等&#xff09;&#xff1f;帶了啥頭信息&#xff0…