用於Nagios中監控伺服器處理序的最大線程數

來源:互聯網
上載者:User

標籤:90-nproc.conf   nagios   processes   

    最近在剛好一些業務經常把線程跑滿,導致伺服器資源用完,所以就寫了一個指令碼用於Nagios下相關進程的最大線程數的監控,Unix的伺服器上最大的線程數預設的是1024,當然在業務繁忙的伺服器中這樣肯定是不夠用的,當然在實際生產環境中做初始化調優時一般都會有做過修改,如開啟開啟檔案的最大控制代碼數等等,一般情況下我們都是修改/etc/security/limits.conf檔案,但是要修改最大線程樹就要修改/etc/security/limits.d/90-nproc.conf檔案了,修改就和修改limits.conf檔案檔案的方式一樣,在此就不做過多的解釋,我一般把所有使用者的最大的線程數都調大

*          soft    nproc     65535

在調整好後線程數的預警值可以根據實際情況調整,,指令碼實現也很簡單,如下:

#!/bin/bash#check_pstree.sh#Used for pstree process monitoring#writer jim#history 2017.07.01# Nagios 傳回值STATE_OK=0STATE_WARNING=1STATE_CRITICAL=2STATE_UNKNOWN=3#對傳遞進來的參數判斷if [ $# -lt 1 ];then    echo "Please enter the process string"    echo "ex> $0 java"    exit $STATE_UNKNOWNfiif [ $# -gt 1 ]; then        echo "The input parameters are too much"    echo "ex> $0 java"    exit $STATE_UNKNOWNfireg_name=$1process_pid=$(ps -ef | grep "$reg_name " | grep -v grep | awk ‘{print $2}‘)declare -i max_process_num=$(ulimit -an | grep "max user processes" | awk ‘{print $5}‘)declare -i warning_num=$max_process_num/2#在此預警值取最大線程數的50%,具體可以根據實際生產環境修改pstree_num=$(pstree -p $process_pid | wc -l)if [ $pstree_num -le $warning_num ];then        echo "$reg_name pstree number is:$pstree_num;warning_num is:$warning_num;max user processes is:$max_process_num,OK"        exit $STATE_OKelse         echo "error!!!The number of pstree is too much.the number is:$pstree_num"        exit $STATE_CRITICALfi

當然在這個指令碼也可以修改後用cron任務中做定時檢查,不過在Nagios中不知為何線程數的值在Nagios的監控頁面下顯示總有異常,不過直接執行是沒有問題的。

本文出自 “技術隨筆” 部落格,謝絕轉載!

用於Nagios中監控伺服器處理序的最大線程數

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.