2012-10-19 28 views
0

任何人都可以幫助我瞭解如何增加Debian中彈性搜索的最大打開文件數量? 關於如何增加內存限制? 以及如何檢查內存限制是否適用? 我有一個文件「/etc/init.d/elasticsearch」,它有一個像設置:如何增加debian中elasticsearch打開文件的數量限制?

`#! /bin/sh` 
`### BEGIN INIT INFO` 
`# Provides:   elasticsearch` 
`# Required-Start: $all` 
`# Required-Stop:  $all` 
`# Default-Start:  2 3 4 5` 
`# Default-Stop:  0 1 6` 
`# Short-Description: Starts elasticsearch` 
`# Description:  Starts elasticsearch using start-stop-daemon` 
`### END INIT INFO` 

`ES_HOME=/usr/local/elasticsearch` 
`ES_MIN_MEM=256m` 
`ES_MAX_MEM=2g` 
`DAEMON=$ES_HOME/bin/elasticsearch` 
`NAME=elasticsearch` 
`DESC=elasticsearch` 
`PID_FILE=/var/run/$NAME.pid` 
`LOG_DIR=/var/log/$NAME` 
`DATA_DIR=/var/lib/$NAME` 
`WORK_DIR=/tmp/$NAME` 
`CONFIG_FILE=/etc/$NAME/elasticsearch.yml` 
`DAEMON_OPTS="-p $PID_FILE -Des.config=$CONFIG_FILE -Des.path.home=$ES_HOME -Des.path.logs=$LOG_DIR -Des.path.data=$DATA_DIR -Des.path.work=$WORK_DIR"` 


`test -x $DAEMON || exit 0 
set -e 
case "$1" in 
    start) 
    echo -n "Starting $DESC: " 
    mkdir -p $LOG_DIR $DATA_DIR $WORK_DIR 
    if start-stop-daemon --start --pidfile $PID_FILE --startas $DAEMON -- $DAEMON_OPTS 
    then 
     echo "started." 
    else 
     echo "failed." 
    fi 
    ;; 
    stop) 
    echo -n "Stopping $DESC: " 
    if start-stop-daemon --stop --pidfile $PID_FILE 
    then 
     echo "stopped." 
    else 
     echo "failed." 
    fi 
    ;; 
    restart|force-reload) 
    ${0} stop 
    sleep 0.5 
    ${0} start 
    ;; 
    *) 
    N=/etc/init.d/$NAME 
    echo "Usage: $N {start|stop|restart|force-reload}" >&2 
    exit 1 
    ;; 
esac 

exit 0 

這些任何幫助將不勝感激.. 在此先感謝..

回答

0

嘗試開始elasticsearch與-Des.max開放檔案= TRUE啓動打印多少文件可以在系統上打開或做

cat /proc/sys/fs/file-max 

注數

sudo vi /etc/sysctl.conf 

添加,最大文件行(以前的號碼):

fs.file-max = 100000 

註銷並重新登錄。它應該工作。

內存,只需編輯ES_MIN_MEM和ES_MAX_MEM並把相同的值兩個(你的總RAM的60%上選中此複選框)

HTH

+0

我加入這個'-Des.max - 開路files' = true'到末尾代碼 'DAEMON_OPTS =「 - p $ PID_FILE -Des.config = $ CONFIG_FILE -Des.path.home = $ ES_HOME -Des.path.logs = $ LOG_DIR -Des.path.data = $ DATA_DIR -Des.path.work = $ WORK_DIR「' 它顯示的最大打開文件數爲:」** [bootstrap] max_open_files [996] **「 而當我運行命令** cat/proc/sys/fs/file-max **,它給了我這個數字** 819013 ** – Rajni

+0

so shal l我將'fs.file-max = 819013'這一行添加到**/etc/sysctl.conf中**也可以解釋一下這是什麼意思或者它如何影響elasticsearch?它是否將打開文件的最大數量從** 996 **增加到** 819013 **? – Rajni

+0

還需要將** ES_MIN_MEM **和** ES_MAX_MEM **的內存大小設置爲相同的值嗎?我的Debian系統也有其他程序安裝在它像RabbitMQ服務器,我的SQL,以及其他一些...它總共有8GB內存...所以如果我將彈性搜索內存設置爲總內存的60%它影響其他程序? PLZ解釋。 – Rajni

相關問題