亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 課堂 > 基礎知識 > 正文

使用supervisor監控mha masterha_manager進展

2024-09-12 20:30:10
字體:
來源:轉載
供稿:網友
  我們在用mha自帶的masterha_manager腳本做mysql主庫故障自動切換時,需要考慮如何讓masterha_manager監控進程一直處于正常運行的狀態。而supervisor可以很好地解決這個問題,它可以將一個普通的命令行進程變為后臺daemon,并監控進程狀態,異常退出時能自動重啟。
 
  這里列一下部署要點和管理命令
 
  一,supervisor 安裝:
  sudo pip install supervisor
 
  二,supervisor配置:
 
  mkdir -p /etc/supervisor/conf.d/
 
  生成配置文件
 
  # echo_supervisord_conf > /etc/supervisor/supervisord.conf
 
  這一步可能會遇到以下報錯
 
  Traceback (most recent call last):
    File "/usr/bin/echo_supervisord_conf", line 5, in <module>
      from pkg_resources import load_entry_point
    File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 2655, in <module>
      working_set.require(__requires__)
    File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 648, in require
      needed = self.resolve(parse_requirements(requirements))
    File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 546, in resolve
      raise DistributionNotFound(req)
  pkg_resources.DistributionNotFound: meld3>=0.6.5
  在網上查了一下原因,大概和python或者pip版本相關,通過源碼安裝一次meld3好了,簡單三步搞定:
 
  git clone https://github.com/Supervisor/meld3
  cd meld3
  python setup.py install
  查看配置文件
 
  cat /etc/supervisor/supervisord.conf
 
  [unix_http_server]
  file=/tmp/supervisor.sock ; the path to the socket file
 
  [supervisord]
  logfile=/tmp/supervisord.log ; main log file; default $CWD/supervisord.log
  logfile_maxbytes=50MB ; max main logfile bytes b4 rotation; default 50MB
  logfile_backups=10 ; # of main logfile backups; 0 means none, default 10
  loglevel=info ; log level; default info; others: debug,warn,trace
  pidfile=/tmp/supervisord.pid ; supervisord pidfile; default supervisord.pid
  nodaemon=false ; start in foreground if true; default false
  minfds=1024 ; min. avail startup file descriptors; default 1024
  minprocs=200 ; min. avail process descriptors;default 200
  user=dbadmin ; default is current user, required if root
 
  [rpcinterface:supervisor]
  supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
 
  [supervisorctl]
  serverurl=unix:///tmp/supervisor.sock ; use a unix:// URL for a unix socket
 
  [include]
  files = /etc/supervisor/conf.d/*.conf
 
  配置要點:
  1,其它的配置將可以使用生成的默認配置,但是user需要改成做免密碼登陸的用戶,比如這里的dbadmin,不然masterha_manager啟動會出錯,因為mha的免密碼登陸全部是用的dbadmin的帳號
  2,管理進程的配置可以直接放在supervisor的主配置文件中的[program:xxx]段,但是最好每個進程準備一個配置文件,以方便管理,通過[include]段的file配置指定配置文件目錄。
 
  三,以masterha_manager監控test為例來看supervisor的操作
  1,準備masterha_manager監控test的配置文件
  cat /etc/supervisor/conf.d/masterha_manager_test.conf
  [program:masterha_manager_test]
  command=masterha_manager --conf=/etc/mha/test.cnf --ignore_last_failover ; 啟動命令
  stdout_logfile=/tmp/manager.log ; stdout 日志輸出位置
  stderr_logfile=/tmp/manager.log ; stderr 日志輸出位置
  autostart=true ; 在 supervisord 啟動的時候自動啟動
  autorestart=true ; 程序異常退出后自動重啟
  startsecs=10 ; 啟動 10 秒后沒有異常退出,就當作已經正常啟動
 
  2,啟動supervisord進程
  # supervisord -c /etc/supervisor/supervisord.conf
  # ps -ef | grep super
  dbadmin 11892 1 0 02:56 ? 00:00:00 /usr/bin/python /usr/bin/supervisord
  root 13340 31610 0 02:56 pts/0 00:00:00 grep super
 
  3,查看監控的進程狀態
  # supervisorctl status
 
  masterha_manager_test RUNNING pid 11912, uptime 0:03:08
 
  # ps -ef | grep master
  root 1343 31610 0 02:59 pts/0 00:00:00 grep master
  root 3228 1 0 2016 ? 00:01:33 /usr/libexec/postfix/master
  dbadmin 11912 11892 0 02:56 ? 00:00:00 perl /usr/local/bin/masterha_manager --conf=/etc/mha/test.cnf --ignore_last_failover
  可以看到masterha_manager已經啟起來了
 
 
  4,測試
  直接殺掉masterha_manager進程模擬masterha_manager異常退出:
  # ps -ef | grep master
  root 1343 31610 0 02:59 pts/0 00:00:00 grep master
  root 3228 1 0 2016 ? 00:01:33 /usr/libexec/postfix/master
  dbadmin 11912 11892 0 02:56 ? 00:00:00 perl /usr/local/bin/masterha_manager --conf=/etc/mha/test.cnf --ignore_last_failover
 
  # kill -9 11912
 
  # ps -ef | grep master
  dbadmin 1707 11892 5 03:30 ? 00:00:00 perl /usr/local/bin/masterha_manager --conf=/etc/mha/test.cnf --ignore_last_failover
  root 2054 31610 0 03:30 pts/0 00:00:00 grep master
  root 3228 1 0 2016 ? 00:01:33 /usr/libexec/postfix/master
 
  可以看到supervisor又重新啟了masterha_manager監控進程
 
  5,常用管理命令
  supervisord: 初始啟動Supervisord,啟動、管理配置中設置的進程;
  supervisorctl stop(start, restart) xxx,停止(啟動,重啟)某一個進程(xxx);
  supervisorctl reread: 只載入最新的配置文件, 并不重啟任何進程;
  supervisorctl reload: 載入最新的配置文件,停止原來的所有進程并按新的配置啟動管理所有進程;
  supervisorctl update: 根據最新的配置文件,啟動新配置或有改動的進程,配置沒有改動的進程不會受影響而重啟;
 
  6,添加supervisord為Linux系統服務,開機自動啟動
  準備啟動腳本supervisord.sh
 
  # chmod +x supervisord.sh
  # mv supervisord.sh  /etc/init.d/supervisord
  # chkconfig --add  supervisord
  # chkconfig --level 345 supervisord on
 
 
  cat /etc/rc.d/init.d/supervisord
  #!/bin/sh
  #
  # /etc/rc.d/init.d/supervisord
  #
  # Supervisor is a client/server system that
  # allows its users to monitor and control a
  # number of processes on UNIX-like operating
  # systems.
  #
  # chkconfig: - 64 36
  # description: Supervisor Server
  # processname: supervisord
  # Source init functions
  . /etc/rc.d/init.d/functions
  prog="supervisord"
  prog_bin="/usr/bin/supervisord"
  PIDFILE="/tmp/supervisord.pid"
  CONFILE="/etc/supervisor/supervisord.conf"
  start()
  {
   echo -n $"Starting $prog: "
   daemon $prog_bin -c $CONFILE --pidfile $PIDFILE
   [ -f $PIDFILE ] && success $"$prog startup" || failure $"$prog startup"
   echo
  }
    
  stop()
  {
   echo -n $"Shutting down $prog: "
   [ -f $PIDFILE ] && killproc $prog || success $"$prog shutdown"
   echo
  }
    
  case "$1" in
   start)
   start
   ;;
   stop)
   stop
   ;;
   status)
   status $prog
   ;;
   restart)
   stop
   start
   ;;
   *)
   echo "Usage: $0 {start|stop|restart|status}"
   ;;
  esac

(編輯:武林網)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品丝袜久久久久久高清| 欧美日韩激情美女| 欧美国产精品人人做人人爱| 亚洲专区国产精品| 91精品视频观看| 久久成人精品一区二区三区| 成人国产精品一区二区| 一区二区三区视频在线| 中文字幕精品视频| 欧美日韩亚洲视频一区| 欧美精品久久久久久久免费观看| 欧美精品第一页在线播放| 亚洲国产日韩欧美在线动漫| 国产精品激情av电影在线观看| 国产精品主播视频| 亚洲乱码一区二区| 精品中文字幕久久久久久| www.日韩系列| 97国产真实伦对白精彩视频8| 亚洲国产91精品在线观看| 亚洲999一在线观看www| 国产日韩欧美在线视频观看| 欧美高清视频一区二区| 日本精品一区二区三区在线播放视频| 午夜精品一区二区三区在线| 成人欧美在线视频| 欧美又大又硬又粗bbbbb| 亚洲一区二区中文字幕| 在线观看欧美日韩| 97碰碰碰免费色视频| 欧美亚洲另类激情另类| 日韩美女中文字幕| 成人福利视频网| 综合国产在线观看| 久久久成人的性感天堂| 久久久国产视频91| 久久国产天堂福利天堂| 国产一区二区三区网站| 欧美肥婆姓交大片| 日韩av网站大全| 精品女同一区二区三区在线播放| 亚洲福利视频专区| 日韩最新在线视频| 欧美性生交xxxxxdddd| 欧美性高潮在线| 96pao国产成视频永久免费| 精品欧美激情精品一区| 国产91在线高潮白浆在线观看| 一区二区欧美在线| 欧美中文字幕第一页| 日韩精品亚洲精品| 综合国产在线观看| www.日韩视频| 国产精品视频在线观看| 亚洲电影在线看| 国内精品视频在线| 亚洲精品综合久久中文字幕| 久久精品视频va| 精品久久久999| 欧美在线视频在线播放完整版免费观看| 91沈先生作品| 国产精品永久免费在线| 国产精品96久久久久久又黄又硬| 久久久久久久久中文字幕| 亚洲日本欧美日韩高观看| 成人精品视频久久久久| 97婷婷大伊香蕉精品视频| 成人激情视频网| 精品激情国产视频| 91免费国产视频| 日韩在线观看免费全| 神马国产精品影院av| 久久视频在线直播| 秋霞成人午夜鲁丝一区二区三区| 国产主播精品在线| 亚洲aaaaaa| 国产一区二中文字幕在线看| 日韩的一区二区| 国产精品美女www| 日韩欧美精品中文字幕| 自拍偷拍亚洲在线| 亚洲欧美中文字幕| 8090理伦午夜在线电影| 亚洲精品第一页| 欧美电影在线免费观看网站| 国产精品美女视频网站| 欧美在线日韩在线| 亚洲欧洲在线观看| 狠狠躁夜夜躁人人爽天天天天97| 久久福利视频导航| 亚洲国产日韩欧美在线图片| 亚洲成人黄色网址| 俺去亚洲欧洲欧美日韩| 亚洲欧美日韩另类| 中文国产亚洲喷潮| 日本高清+成人网在线观看| 久久国产天堂福利天堂| 国内久久久精品| 亚洲区免费影片| 91久久精品久久国产性色也91| 狠狠爱在线视频一区| 久久91亚洲人成电影网站| 亚洲18私人小影院| 日韩欧美在线视频日韩欧美在线视频| 欧美区二区三区| 欧美成人免费视频| 国产美女精品视频免费观看| 国产精品丝袜久久久久久不卡| 亚洲国产精品va在线看黑人动漫| 伊人伊成久久人综合网站| 久久精品99久久久香蕉| 日韩欧美一区二区三区久久| 欧美老肥婆性猛交视频| 国产欧美日韩精品专区| 日产日韩在线亚洲欧美| 91九色精品视频| 欧美黑人狂野猛交老妇| 欧美另类在线播放| 亚洲自拍在线观看| 中文国产亚洲喷潮| 久久99久国产精品黄毛片入口| 亚洲欧美日韩中文在线制服| 日韩中文在线不卡| 亚洲欧洲日产国产网站| 久久久久久久国产| 亚洲国产精品专区久久| 亚洲女人初尝黑人巨大| 午夜精品一区二区三区在线视| 久久久精品一区二区三区| 久久精品2019中文字幕| 国产精品亚洲美女av网站| 国产精品久久久久91| 亚洲午夜精品久久久久久久久久久久| 国产性色av一区二区| 亚洲专区国产精品| 久久99热精品这里久久精品| 国产精品久久9| 日韩成人在线电影网| 国产精品福利无圣光在线一区| 91香蕉国产在线观看| 精品国产成人av| 国产综合久久久久久| 国产精品丝袜久久久久久不卡| 97免费中文视频在线观看| 国产一区二区丝袜| 91精品国产高清久久久久久91| 国产精品亚洲一区二区三区| 欧美黑人视频一区| 69国产精品成人在线播放| 久久在线视频在线| 懂色av一区二区三区| 欧美另类精品xxxx孕妇| 精品伊人久久97| 成人国产精品久久久| 亚洲mm色国产网站| www.99久久热国产日韩欧美.com| 超在线视频97| 51久久精品夜色国产麻豆| 久久久久久久久久亚洲| yw.139尤物在线精品视频| 国产精品亚发布| 国内偷自视频区视频综合| 国产视频精品在线| 欧美在线视频观看|