再一次ingress沒有IP出現的故障處理


1.背景信息

  本案例測試環境下發生。

  本次問題環境比較復雜,只能說解決了問題,但是還沒精准定位到是哪個原因導致,這里還是做一個記錄。

  接到web項目小伙的求助,說是訪問域名網頁空白,發現調試界面的url路由到了其它項目的地址,懷疑是ingress路由問題。

  但是后端pod查看日志,日志正常,我看也沒有什么異常問題出現。只有一個304的狀態碼。

  但是網頁訪問空白,返回其它域名信息。比如原本訪問www.baidu.com。結果百度的網頁是一篇空白,使用瀏覽器調試,結果代碼的index返回的卻是www.google.com信息。

 

2.排錯以及解決 

  這里也只能按照排錯思路去解決問題。

  第一步查看ingress,發現ingress又不正常,再次出現沒有IP的情況,以為是改變了pod時間,還是以前的bug。(參考ingress nginx出現404錯誤)。但是這次也沒出現404代碼,但是,ingress顯示沒有IP分配,而日志可以正常捕獲到。(之前出現404是沒有請求到pod的)。

  然后按照之前的思路,以為是ingress的bug,於是刪除了ingress控制器pod,問題還是沒有得到解決。

  於是突然發現,這個小伙子從來不看告警,會不會集群狀態出現了問題,便登錄騰訊雲tke,查看node信息,果然,cpu和內存基本滿了。

  於是擴容node節點以及同時刪除了pod的ingress文件,重新apply,最后ip出現,訪問也正常。

  由於這個問題出現比較急,沒有時間做更多的排查,是為了解決問題為主,所以具體什么原因導致尚不清楚,主要做了以下幾部,這里做一個簡單的記錄,后期碰到了文檔再次補充。

  1. 刪除ingress 控制器pod。
  2. 刪除pod的ingress文件。
  3. 擴容node節點。

 

 

3.2022年4月2日更新

  問題得到解決,首先第一個問題是訪問出現其他項目的網址,比如www.baidu.com,結果訪問到了www.google.com,原因是負載均衡默認的80www.google.com,443www.baidu.com,訪問的時候沒有加https,一個大烏龍,麻了。

  第二個問題就是網頁還是會莫名其妙的報錯,有的人報錯,有的人不報錯,報錯的人訪問的代碼也是以前的,檢查pod這回是絕對沒有問題的,果然詢問了研發,一天之內,頻繁的更新cdn資源,緩存沒有刷新,CDN手動刷新一次就好了。

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM