corosync.conf.in 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. # corosync - Corosync Cluster Engine
  2. #
  3. # Starts corosync
  4. expect fork
  5. env prog=corosync
  6. env initconf=@INITCONFIGDIR@/corosync
  7. env rpm_lockfile=@LOCALSTATEDIR@/lock/subsys/corosync
  8. env deb_lockfile=@LOCALSTATEDIR@/lock/corosync
  9. script
  10. [ -f "$initconf" ] && . $initconf
  11. exec $prog $COROSYNC_OPTIONS
  12. end script
  13. pre-start script
  14. mkdir -p @LOCALSTATEDIR@/run
  15. # rewrite according to environment.
  16. #[ -c /dev/watchdog ] || modprobe softdog
  17. end script
  18. post-start script
  19. wait_for_ipc()
  20. {
  21. [ -f "$initconf" ] && . $initconf
  22. try=0
  23. max_try=$((COROSYNC_INIT_TIMEOUT*2-1))
  24. [ "$max_try" -le "0" ] && max_try=120
  25. while [ "$try" -le "$max_try" ]; do
  26. if corosync-cfgtool -s > /dev/null 2>&1; then
  27. return 0
  28. fi
  29. sleep 0.5
  30. try=$((try + 1))
  31. done
  32. logger -i -t "$UPSTART_JOB" "ERROR: Any interfaces are faulty!"
  33. return 1
  34. }
  35. wait_for_ipc || { stop; exit 1; }
  36. [ -f "$initconf" ] && . $initconf
  37. [ -z "$LOCK_FILE" -a -d @SYSCONFDIR@/sysconfig ] && LOCK_FILE="$rpm_lockfile"
  38. [ -z "$LOCK_FILE" -a -d @SYSCONFDIR@/default ] && LOCK_FILE="$deb_lockfile"
  39. touch $LOCK_FILE
  40. end script
  41. post-stop script
  42. [ -f "$initconf" ] && . $initconf
  43. [ -z "$LOCK_FILE" -a -d @SYSCONFDIR@/sysconfig ] && LOCK_FILE="$rpm_lockfile"
  44. [ -z "$LOCK_FILE" -a -d @SYSCONFDIR@/default ] && LOCK_FILE="$deb_lockfile"
  45. rm -f $LOCK_FILE
  46. end script