zoukankan      html  css  js  c++  java
  • elasticsearch开机启动脚本

    最近搭建了一个elasticsearch服务,其中机器重启而ES服务没有重启是问题,就有下面的脚本

    #!/bin/sh
    #chkconfig: 2345 80 05
    #description: es
     
    export JAVA_HOME=/path/to/jdk1.8.0_131
    export JAVA_BIN=/path/to/jdk1.8.0_131/bin
    export PATH=$PATH:$JAVA_HOME/bin
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    export JAVA_HOME JAVA_BIN PATH CLASSPATH
    
    case $1 in
    start)
    #下面的“<<!”是切换用户后,待执行的命令,执行完后使用“!”来进行结束
        su es<<!
        cd /home/es/elasticsearch-5.5.1
        ./bin/elasticsearch -d
    exit
    !
    #上面的“!”是以上面的对应起来,并且顶格放置,这是语法
        echo "es startup" #将该行替换成你自己的服务启动命令
        ;;  
    stop)
        es_pid=`ps aux|grep elasticsearch | grep -v 'grep elasticsearch' | awk '{print $2}'`#注意这个号“`”
        kill -9 $es_pid
        echo "es stopup" #将该行替换成你自己的服务启动命令
        ;;  
    restart)
        es_pid=`ps aux|grep elasticsearch | grep -v 'grep elasticsearch' | awk '{print $2}'` #“grep -v”过滤掉本身的执行命令,获取准确的pid
        kill -9 $es_pid
        echo "es stopup" #将该行替换成你自己的服务启动命令
        su es<<!
        cd /home/es/elasticsearch-5.5.1
        ./bin/elasticsearch -d
    !
        echo "es startup" #将该行替换成你自己的服务启动命令
        ;;  
    *)
        echo "start|stop|restart" #将该行替换成你自己的服务启动命令
        ;;  
    esac

    保存为es,放在/etc/init.d下面,并执行下面命令赋予执行权限

    chmod +x es

    最后在/etc/init.d下执行
    chkconfig -add es

  • 相关阅读:
    C#趣味程序---车牌号推断
    使用 C# 开发智能手机软件:推箱子(十四)
    【Oracle错误集锦】:ORA-12154: TNS: 无法解析指定的连接标识符
    java中你确定用对单例了吗?
    linux tty设置详解
    tty linux 打开和设置范例
    C和C++之间库的互相调用
    Android 编译参数 LOCAL_MODULE_TAGS
    pthread_once 和 pthread_key
    Android系统root破解原理分析
  • 原文地址:https://www.cnblogs.com/jiangzuo/p/8000423.html
Copyright © 2011-2022 走看看