yanhe.fuint 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. #!/bin/bash
  2. #
  3. # yanhe-fuint
  4. #
  5. # chkconfig: 2345 80 20
  6. # description: Starts and stops a single elasticsearch instance on this system
  7. #
  8. ### BEGIN INIT INFO
  9. # Provides: yanhe-fuint
  10. # Required-Start: $network $named
  11. # Required-Stop: $network $named
  12. # Default-Start: 2 3 4 5
  13. # Default-Stop: 0 1 6
  14. ### END INIT INFO
  15. # Source function library.
  16. if [ -f /etc/rc.d/init.d/functions ]; then
  17. . /etc/rc.d/init.d/functions
  18. fi
  19. # Sets the default values for yanhe-fuint variables used in this script
  20. FUINT_HOME="/opt/yanhe/fuint-server/target/"
  21. LOG_DIR="/var/log/"
  22. PID_DIR="/var/run/"
  23. prog="fuint-server"
  24. pidfile="$PID_DIR/${prog}.pid"
  25. export FUINT_JAVA_OPTS
  26. export JAVA_HOME
  27. lockfile=/var/lock/subsys/$prog
  28. checkJava() {
  29. if [ -x "$JAVA_HOME/bin/java" ]; then
  30. JAVA="$JAVA_HOME/bin/java"
  31. else
  32. JAVA=`which java`
  33. fi
  34. if [ ! -x "$JAVA" ]; then
  35. echo "Could not find any executable java binary. Please install java in your PATH or set JAVA_HOME"
  36. exit 1
  37. fi
  38. }
  39. start() {
  40. checkJava
  41. # Ensure that the PID_DIR exists (it is cleaned at OS startup time)
  42. if [ -n "$PID_DIR" ] && [ ! -e "$PID_DIR" ]; then
  43. mkdir -p "$PID_DIR"
  44. fi
  45. if [ -n "$pidfile" ] && [ ! -e "$pidfile" ]; then
  46. touch "$pidfile"
  47. fi
  48. cd $FUINT_HOME
  49. echo -n $"Starting $prog: "
  50. # if not running, start it up here, usually something like "daemon $exec"
  51. java -Dfile.encoding=UTF-8 -Xmx2048m -Xms2048m -Xss256k -Xmn1024m -jar fuint-application.jar >> $LOG_DIR/yanhe-fuint.log
  52. echo $! > $pidfile
  53. retval=$?
  54. echo
  55. [ $retval -eq 0 ] && touch $lockfile
  56. return $retval
  57. }
  58. stop() {
  59. echo -n $"Stopping $prog: "
  60. # stop it here, often "killproc $prog"
  61. killproc -p $pidfile -d 86400 $prog
  62. retval=$?
  63. echo
  64. [ $retval -eq 0 ] && rm -f $lockfile
  65. return $retval
  66. }
  67. restart() {
  68. stop
  69. start
  70. }
  71. reload() {
  72. restart
  73. }
  74. force_reload() {
  75. restart
  76. }
  77. rh_status() {
  78. # run checks to determine if the service is running or use generic status
  79. status -p $pidfile $prog
  80. }
  81. rh_status_q() {
  82. rh_status >/dev/null 2>&1
  83. }
  84. case "$1" in
  85. start)
  86. rh_status_q && exit 0
  87. $1
  88. ;;
  89. stop)
  90. rh_status_q || exit 0
  91. $1
  92. ;;
  93. restart)
  94. $1
  95. ;;
  96. reload)
  97. rh_status_q || exit 7
  98. $1
  99. ;;
  100. force-reload)
  101. force_reload
  102. ;;
  103. status)
  104. rh_status
  105. ;;
  106. condrestart|try-restart)
  107. rh_status_q || exit 0
  108. restart
  109. ;;
  110. *)
  111. echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
  112. exit 2
  113. esac
  114. exit $?