找回密码
 注册
查看: 995|回复: 0

keepalived 配置文件中 shell 脚本中case选择语句写法

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2022-2-25 09:51:19 | 显示全部楼层 |阅读模式
cat /etc/init.d/keepalived
* a0 N, L& g# l#! /bin/sh
1 O* T- J- F3 J3 h#
( c! l) _- U  A5 i! C# keepalived   LVS cluster monitor daemon.
1 k* r9 j: s1 D% K& {#
( o$ C4 S) I3 y$ A* u. M( R1 Y#              Written by Andres Salomon <dilinger@voxel.net>6 Z3 K. V* L! b8 x: p" _, U
#0 G* B+ a, J  D1 a2 J
### BEGIN INIT INFO4 T* E  j, I1 z7 z# y; `+ Y& g
# Provides:          keepalived% [; V/ n8 t' ?: H2 X
# Required-Start:    $syslog $network $remote_fs- R7 L& y" u3 Q0 D4 q- P
# Required-Stop:     $syslog $network $remote_fs
4 n0 a) z& @9 V$ H+ c) y1 ?# Default-Start:     2 3 4 55 p  ^" w( m7 B; H# C$ L( q
# Default-Stop:      0 1 6
3 F5 ~: v8 ]. P# Short-Description: Starts keepalived
3 z7 j. M  T+ K4 g' ?+ P# Description:       Starts keepalived lvs loadbalancer
, a, J% k9 S2 F4 l$ m6 Y### END INIT INFO3 ?8 `( @% {. h7 J* @
PATH=/sbin:/bin:/usr/sbin:/usr/bin6 |" F) `) k1 n( _, k# B3 O' L
DAEMON=/usr/sbin/keepalived' {* K# N' D6 ^) F2 D! b
NAME=keepalived
& M4 A3 @) p; u" A  k! d. [DESC=keepalived
4 s7 C; F6 r( m) }9 ]0 p, a+ C. Z" qCONFIG=/etc/keepalived/keepalived.conf
, S9 G5 M; P( K+ vTMPFILES="/tmp/.vrrp /tmp/.healthcheckers"& R& \- p/ r2 N2 J4 w
#includes lsb functions / }  N( ]% C; P0 O1 I
. /lib/lsb/init-functions# C% {5 T; ]7 N! F
test -f $CONFIG || exit 0
( H* Q! B# o+ n; }  l" n( ^  e# w7 P3 Ntest -f $DAEMON || exit 0) g' [' @4 f( l. [8 A

0 y. X/ Z% x# k9 G1 j  C7 z; L# Read configuration variable file if it is present
7 I1 `4 b( I" p' q6 J. }8 ]$ c8 p% C[ -r /etc/default/$NAME ] && . /etc/default/$NAME
6 J) l7 |! F2 n, a$ ocase "$1" in
- v# g" W8 X5 K0 w: j: z8 N  start)$ V1 q9 G! s/ j6 e1 O2 K6 g+ d
        log_daemon_msg "Starting $DESC" "$NAME"' q$ C/ E/ w& f9 d
for file in $TMPFILES$ n% K% a- F2 r
do % B5 Q2 N4 D& E, r9 n
         test -e $file && test ! -L $file && rm $file
2 s! m7 N  t8 L* C; [ done4 c  X$ _# x# _6 ^7 }2 _
if start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \& R7 L2 P* K9 x  Q8 c" O
               --exec $DAEMON -- $DAEMON_ARGS; then
' K+ _7 ~3 C! w8 y6 x) O9 C4 R  log_end_msg 0
. J( c6 H& g! t% ] else
: Z, H+ e7 a0 F% E- H7 B  log_end_msg 1
( z1 V& [3 n! e8 j: S! \ fi* c* a! M4 Z. Q" v6 ?) z' y$ ?
       ;;
3 v! o4 F1 e( @* l9 b3 {  stop)
) E' L0 w" t5 }! ^7 g log_daemon_msg "Stopping $DESC" "$NAME"
: P- d* a* T* C" S+ \$ p1 J5 j  t# n if start-stop-daemon --oknodo --stop --quiet --pidfile /var/run/$NAME.pid \+ ^! g, l' |  Y$ s/ t
         --exec $DAEMON; then4 y- i' K! R+ |2 {5 K
  log_end_msg 0
4 f' w- |% n' U0 o else
2 q' z8 f, T. n4 \1 d' k  log_end_msg 1
$ i& t9 m" ~* b" {* T0 } fi
4 j. m- a& f& ~& m- [! m/ O' X       ;;
* \* B6 M# s' K' g% @  reload|force-reload); H2 O$ C5 j6 S
log_action_begin_msg "Reloading $DESC configuration..."5 z- p5 |" Z( S8 j: Z) [; \/ R6 b
       if start-stop-daemon --stop --quiet --signal 1 --pidfile \! |# H2 Z4 d, [$ G
               /var/run/$NAME.pid --exec $DAEMON; then
6 |7 x! s$ _, ~! F* L4 X: m        log_end_msg 0
+ [, L2 s& W9 l1 Y8 H4 [& @ else
- k. m# t/ O' V% L) }  T  log_action_end_msg 15 M' K" ?' f: I) @' v/ X
fi
, M7 }* _/ f9 e) x+ O: H       ;;0 R3 z9 y- v9 V" \; Z
  restart)% s3 K: r# F& j5 s& Q$ d
   log_action_begin_msg "Restarting $DESC" "$NAME"
! \) i! {, I1 q8 [7 {3 x        start-stop-daemon --stop --quiet --pidfile \/ U1 S; Z4 P3 o
  /var/run/$NAME.pid --exec $DAEMON || true
% s4 j8 ]$ c- `/ R  j% v; o" Y       sleep 1
- q" ?( y6 P' @% U* Y& P# X" I9 A       if start-stop-daemon --start --quiet --pidfile \
0 b, P% R1 d) M! w, Z' k8 R               /var/run/$NAME.pid --exec $DAEMON -- $DAEMON_ARGS; then
/ t. O2 J  {* l8 E( L/ V0 Y        log_end_msg 0
( N5 q3 W' D1 ^ else, b1 Y+ u" [' {
  log_end_msg 1
' ^( p" w5 g8 ^  ?) K fi
3 I) V# Q: V, u7 K3 V9 \5 A       ;;
& H; W) ?% J5 {  *)
2 V6 @3 K7 O2 j9 J; W       echo "Usage: /etc/init.d/$NAME {start|stop|restart|reload|force-reload}" >&2
6 q; S8 W: z. P, a$ E. ]+ o       exit 1- F. m" p5 X$ A% L% E
       ;;1 K1 \3 F! N4 w6 P0 K2 l. W! @
esac3 g* }6 i) h& H, g. x: f
exit 0) F6 x2 q  `6 |  d2 s
您需要登录后才可以回帖 登录 | 注册

本版积分规则

返回首页|Archiver|手机版|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )

GMT+8, 2026-6-12 03:21 , Processed in 0.025028 second(s), 23 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表