一個小需求,自動重啟k8s集群中日志不刷新的POD

2022-10-07    分類: 網站建設

一個小需求,自動重啟k8s集群中日志不刷新的POD

k8s

需求

日常工作中,所有項目都不是好的,筆者就經常遇到這種情況,pod狀態是running,但是程序卻沒有響應。發生這種情況的原因有很多種,有可能是因為k8s健康檢查的原因,比如使用ps檢查進程;或者是程序內部死循環,但是不退出;再或者網絡閃斷,程序無法重連等等。

無論什么原因,都會有解決辦法,但是優化需要時間,在未完全解決之前,問題不能不解決,于是想到了一個臨時方案,因為筆者公司項目日志是直接打印在stdout的,發生了程序無響應的情況,比較簡單的一個辦法是判斷日志輸出的時間?;诖?,可以簡單寫一個小腳本,發現日志長時間不輸出的時候,重啟pod。

思路

使用kubectl logs命令查看最后一條日志輸出的時間戳,與服務器時間對比,差值大于閾值,則重啟相應POD。當然,這只是一個簡單的思路,并不適用于大部分場景,但是適合筆者公司,因為核心項目請求量很大,但凡是超過1分鐘日志不刷新,基本可以斷定100%出現問題了。

此思路其實也是拋磚引玉,希望能給大家一些靈感,如果有什么更好的辦法,也可以與筆者溝通交流。

簡單實現

shell比較簡單,直接與服務器交互也比較友好,就是用shell來寫吧。

#!/bin/sh
# 獲取當前UTC時間utc_now=`date -u`
# 將時間轉換為timestamptimestamp_now=`date -d "$utc_now" +%s`
function restart_pod() {
    for i in `kubectl get pod -n iot|grep PODNAME|awk '{print $1}'`;do
        for time in `kubectl logs  --tail=1 --timestamps $i -n iot | awk '{print $1}'`;do
            timestamp_pod=`date -d "$time" +%s`
            delay=$(($timestamp_now-$timestamp_pod))            echo $i:$delay            if [ "$delay" -ge "30" ];then
                echo "Pod $i 30S內沒有最新日志產生,重啟pod!"
                echo $i                kubectl delete pod $i -n iot --force --grace-period=0
                curlwxFunc "Pod $i 30S內沒有最新日志產生,重啟pod!(生產環境)"
            fi        done    done}function curlwxFunc() {
    JSON='{
            "msgtype": "text",
            "text": {
                "content": "'$1'"
            }
        }'
    curl 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxx'
    -H 'Content-Type:application/json'
    -d "${JSON}"
}restart_pod 

腳本很簡單,先查詢pod,然后看pod最后一條日志時間,與服務器時間對比,延遲超過30s就重啟pod,并且調用企業微信接口發一條通知。

后記

此方法也是治標不治本,治標還需要從源頭解決,不過需要時間,再沒有解決之前,先用這個小腳本抗一抗吧。也歡迎大家拍磚。

當前標題:一個小需求,自動重啟k8s集群中日志不刷新的POD
本文路徑:http://m.kartarina.com/news/203282.html

成都網站建設公司_創新互聯,為您提供靜態網站、ChatGPT、網站內鏈面包屑導航Google微信小程序

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

小程序開發
主站蜘蛛池模板: 少妇人妻无码精品视频app| 亚洲V无码一区二区三区四区观看 亚洲爆乳精品无码一区二区三区 亚洲爆乳无码一区二区三区 | 无码毛片一区二区三区视频免费播放| 亚洲Av无码精品色午夜| 日韩精品中文字幕无码一区| 人妻少妇看A偷人无码精品| 免费A级毛片无码A| 欧洲精品久久久av无码电影| av无码a在线观看| 亚洲精品av无码喷奶水糖心| 国产办公室秘书无码精品99| 亚洲 另类 无码 在线| 亚洲AV永久无码精品一福利 | 人妻AV中出无码内射| 久久久久亚洲AV片无码下载蜜桃| 精品无人区无码乱码毛片国产| 亚洲一区二区三区无码国产 | 日韩免费无码一区二区三区| 中文字幕av无码不卡| 深夜a级毛片免费无码| 69久久精品无码一区二区| 亚洲VA中文字幕无码一二三区| 日韩A无码AV一区二区三区| 亚洲精品无码不卡在线播放| 人妻丰满熟妞av无码区| 无码内射中文字幕岛国片| 亚洲中文字幕无码日韩| 中文午夜乱理片无码| 日日日日做夜夜夜夜无码| 国产亚洲精品无码拍拍拍色欲| 高清无码一区二区在线观看吞精 | 亚洲精品无码精品mV在线观看| 无码少妇一区二区浪潮av| 精品久久久无码中文字幕边打电话 | 国产乱人伦无无码视频试看| 亚洲爆乳大丰满无码专区| 亚洲国产AV无码一区二区三区| 91精品国产综合久久四虎久久无码一级| 亚洲国产a∨无码中文777| 中国无码人妻丰满熟妇啪啪软件| 日韩综合无码一区二区|