supervisor安裝的實例+管理tomcat


Supervisor是用Python開發的一套通用的進程管理程序,能將一個普通的命令行進程變為后台daemon,並監控進程狀態,異常退出時能自動重啟。它是通過fork/exec的方式把這些被管理的進程當作supervisor的子進程來啟動,這樣只要在supervisor的配置文件中,把要管理的進程的可執行文件的路徑寫進去即可。也實現當子進程掛掉的時候,父進程可以准確獲取子進程掛掉的信息的,可以選擇是否自己啟動和報警。supervisor還提供了一個功能,可以為supervisord或者每個子進程,設置一個非root的user,這個user就可以管理它對應的進程。

 

在centos7上安裝supervisor,直接用yum進行安裝,若是不是的話,或者是其他,請准備好python2.4以上的版本環境

注意:

    1.  supervisord:supervisor的服務器端部分,用於supervisor啟動。

    2.  supervisorctl:啟動supervisor的命令行窗口,在該命令行中可執行start、stop、status、reload等操作。

    3.  每次修改配置文件后需要進入supervisorctl,執行reload,改動部分才會生效。

 

  1.  在centos7系統上進行安裝

        

 

  2.  開啟supervisor,設置supervisor的自動啟動,查看supervisor

        

        [root@ localhost ~]# systemctl start supervisord
        [root@ localhost ~]# systemctl enable supervisord
        [root@ localhost ~]# systemctl status supervisord

 

  3.  修改配置文件 /etc/supervisord.conf,進入配置文件,把所標注處,給去了注釋

      

      

      

      [inet_http_server] ; inet (TCP) server disabled by default   http服務器,提供web管理界面 
      port=0.0.0.0:9001 ; (ip_address:port specifier, *:port for all iface)  web管理后台運行的IP和端口,如果開放到公網,需要注意安全性
      username=root ; (default is no username (open server))  登錄管理后台的用戶名
      password=123456 ; (default is no password (open server))  登錄管理后台的密碼

      或者是:

          

 

  4.  重新加載配置文件,開啟supervisor的默認端口9001【這一步可以設置防火也可不設置】

      supervisorctl reload

      

 

        

        firewall-cmd --zone=public --add-port=9001/tcp --permanent    【--zone 作用域,--add-port=80/tcp 添加端口,格式為:端口/通訊協議,--permanent 永久生效,每次參數后失效】

      firewall-cmd --reload  【重新加載】

 

  5.  訪問頁面 (因為我們這里給他設置了用戶和密碼所以要進行登錄)

      

 

 

      

 

 

  6.  再次進入配置文件,/etc/supervisord.conf,的最后一行,你可以改成以 (.conf來做成后綴)【同樣如果你在安裝supervisor的時候幫supervisor創建了一個文件目錄你可以在supervisor的配置文件中的最后一行寫上你的詳細配置文件目錄】

      

      

      

      

 

  7.  supervisor管理tomcat,先安裝上tomcat並且開啟tomcat和查看頁面,查看完頁面之后記得把所有的tomcat進程停止掉,因為你使用supervisor所以當你進入supervisorctl命令行中的時候會有start命令你需要在命令行中執行。{切記:supervisor的進程只能由supervisor來開啟}

      

 

 

         

 

 

  8.  把tomcat開啟之后進入/etc/supervisord.d/conf.d編寫以.ini結尾的tomcat腳本vim /etc/supervisord.d/conf.d/tomcat.ini

        

        [program:tomcat]
        command=/root/apache-tomcat-8.5.35/bin/catalina.sh run

  9.  重新啟動一下supervisor,再進入supervisor的命令行模式(supervisorctl),要執行reload才能有反應,使用exit退出來

        

      

  10.  進行重新啟動supervisor,在第二張截圖中我們會看到tomcat進程的狀態,到這里supervisor的命令行管理tomcat完事兒了。

 

        [root@ localhost system]# systemctl daemon-reload
        [root@ localhost system]# systemctl enable supervisord.service
        [root@ localhost system]# systemctl start supervisord
        [root@ localhost system]# systemctl status supervisord

 

        

        

           

 

  11.  我們再在web端上面看看,是否可以執行成功

        

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM