欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

一個(gè)小需求,自動(dòng)重啟k8s集群中日志不刷新的POD

2022-10-07    分類(lèi): 網(wǎng)站建設(shè)

一個(gè)小需求,自動(dòng)重啟k8s集群中日志不刷新的POD

k8s

需求

日常工作中,所有項(xiàng)目都不是好的,筆者就經(jīng)常遇到這種情況,pod狀態(tài)是running,但是程序卻沒(méi)有響應(yīng)。發(fā)生這種情況的原因有很多種,有可能是因?yàn)閗8s健康檢查的原因,比如使用ps檢查進(jìn)程;或者是程序內(nèi)部死循環(huán),但是不退出;再或者網(wǎng)絡(luò)閃斷,程序無(wú)法重連等等。

無(wú)論什么原因,都會(huì)有解決辦法,但是優(yōu)化需要時(shí)間,在未完全解決之前,問(wèn)題不能不解決,于是想到了一個(gè)臨時(shí)方案,因?yàn)楣P者公司項(xiàng)目日志是直接打印在stdout的,發(fā)生了程序無(wú)響應(yīng)的情況,比較簡(jiǎn)單的一個(gè)辦法是判斷日志輸出的時(shí)間。基于此,可以簡(jiǎn)單寫(xiě)一個(gè)小腳本,發(fā)現(xiàn)日志長(zhǎng)時(shí)間不輸出的時(shí)候,重啟pod。

思路

使用kubectl logs命令查看最后一條日志輸出的時(shí)間戳,與服務(wù)器時(shí)間對(duì)比,差值大于閾值,則重啟相應(yīng)POD。當(dāng)然,這只是一個(gè)簡(jiǎn)單的思路,并不適用于大部分場(chǎng)景,但是適合筆者公司,因?yàn)楹诵捻?xiàng)目請(qǐng)求量很大,但凡是超過(guò)1分鐘日志不刷新,基本可以斷定100%出現(xiàn)問(wèn)題了。

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

簡(jiǎn)單實(shí)現(xiàn)

shell比較簡(jiǎn)單,直接與服務(wù)器交互也比較友好,就是用shell來(lái)寫(xiě)吧。

#!/bin/sh
# 獲取當(dāng)前UTC時(shí)間utc_now=`date -u`
# 將時(shí)間轉(zhuǎn)換為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內(nèi)沒(méi)有最新日志產(chǎn)生,重啟pod!"
                echo $i                kubectl delete pod $i -n iot --force --grace-period=0
                curlwxFunc "Pod $i 30S內(nèi)沒(méi)有最新日志產(chǎn)生,重啟pod!(生產(chǎn)環(huán)境)"
            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 

腳本很簡(jiǎn)單,先查詢pod,然后看pod最后一條日志時(shí)間,與服務(wù)器時(shí)間對(duì)比,延遲超過(guò)30s就重啟pod,并且調(diào)用企業(yè)微信接口發(fā)一條通知。

后記

此方法也是治標(biāo)不治本,治標(biāo)還需要從源頭解決,不過(guò)需要時(shí)間,再?zèng)]有解決之前,先用這個(gè)小腳本抗一抗吧。也歡迎大家拍磚。

本文名稱(chēng):一個(gè)小需求,自動(dòng)重啟k8s集群中日志不刷新的POD
分享URL:http://chinadenli.net/news32/203282.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開(kāi)發(fā)、網(wǎng)站設(shè)計(jì)網(wǎng)站內(nèi)鏈、軟件開(kāi)發(fā)全網(wǎng)營(yíng)銷(xiāo)推廣、網(wǎng)站營(yíng)銷(xiāo)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)
人妻少妇av中文字幕乱码高清| 欧美在线观看视频免费不卡| 内射精品欧美一区二区三区久久久| 免费黄色一区二区三区| 草草草草在线观看视频| 午夜福利直播在线视频| 99久久精品午夜一区| 精品国产品国语在线不卡| 中文字幕日产乱码一区二区| 尤物天堂av一区二区| 亚洲中文字幕亲近伦片| 五月婷日韩中文字幕四虎| 国产黄色高清内射熟女视频| 日本在线视频播放91| 午夜视频成人在线观看| 丝袜破了有美女肉体免费观看| 日韩精品日韩激情日韩综合| 黄色国产自拍在线观看| 香蕉久久夜色精品国产尤物| 欧美日韩在线第一页日韩| 大香蕉久久精品一区二区字幕| 内用黄老外示儒术出处| 1024你懂的在线视频| 国产av一区二区三区四区五区| 中文字幕亚洲精品在线播放| 久久热在线视频免费观看| 99久久成人精品国产免费| 欧美美女视频在线免费看| 99久久国产综合精品二区| 日韩成人h视频在线观看| 日本精品视频一二三区| 亚洲中文字幕日韩在线| 国产亚洲中文日韩欧美综合网| 少妇熟女精品一区二区三区| 国产精品不卡一区二区三区四区| 日韩成人午夜福利免费视频 | 日本久久中文字幕免费| 成人精品日韩专区在线观看| 国产在线观看不卡一区二区| 国产大屁股喷水在线观看视频 | 中文字幕精品少妇人妻|