大資料集群失聯問題解決方案

2021-08-11 04:48:29 字數 1115 閱讀 8863

我們之前維護的集群經常性地出現失聯的情況,大資料集群上,還有es集群在跑,在凌晨左右集群會有隨機的機器間歇性失聯,cpu飆高,ssh登入不了。

在嘗試了諸多方法後,通過每天定時清理快取的方式解決了集群失聯的問題。生產環境的大資料集群每天會有大量快取,若不清理,就會導致記憶體使用率一直居高不下,長此以往,集群機器就容易失聯。

手工釋放linux記憶體

to free pagecache, use

echo 1 > /proc/sys

/vm/drop_caches;

to free dentries and inodes, use

echo 2 > /proc/sys

/vm/drop_caches;

to free pagecache, dentries and inodes, use

echo 3 >/proc/sys

/vm/drop_caches.

選擇echo 3 >/proc/sys/vm/drop_caches可以直接清理pagecache, dentries and inodes

在跳板機上,寫個指令碼,加入定時任務,即可

cd /etc

mkdir mission

cd mission

vim clean_cache.sh

#!/bin/bash

for i in ; do ssh 192.168.xx.$i

"echo 3 > /proc/sys/vm/drop_caches"; done

crontab -e

0

0 * * * /etc/mission/clean_cache.sh

012 * * * /etc/mission/clean_cache.sh

每天0點和12點,各跑一次,清理集群快取,可以有效解決集群失聯問題

檢視任務執行狀況

大資料問題解決方案

宣告 本文中有兩個簡單的大資料問題,只給出了解決方案的大概描述。1.給定100億個整數,設計演算法找到只出現 次的整數?問題分析 整數的範圍總共有42億左右。如果按照最原始的方法,給每乙個整數分配乙個計數器的話,計數器設為整形,建立以 42億整數作為索引和對應的計數器當成元素的陣列,然後乙個個的遍歷...

集群的session問題解決方案

同乙個ip的請求 到同乙個伺服器,太low不解釋。原理 存入session中的key value,同時存放到redis中,如果session中沒有找到,就去redis中去獲取。新增依賴 org.springframework.boot spring boot starter redis org.sp...

Jar Hell 問題解決方案

最近看到溫紹錦的jvm基礎,裡面看到這個jar hell問題的解決方法,之前遇到過一次,是乙個資源檔案,當時覺得挺麻煩,不知道還有這個方法,很棒,特地整理了下,記錄到這裡來,這個部落格開了好長時間了,一直以來也懶得寫東西,以後會堅持更新些。classloader classloader thread...