zabbix-server卡死不動


關於zabbix-server 卡死問題有幾種,但是在網上搜索都不是我的問題,寫個總結給各位如有遇到並解決在好不過。

問題描述 

systemctl start zabbix-server.serivce  啟動無果,另開窗口查看日志。

tail -999f /var/log/zabbix/zabbix_server.log

12377:20190117:182738.777 [Z3001] connection to database 'zabbix' failed: [1040] Too many connections
12386:20190117:182738.777 [Z3001] connection to database 'zabbix' failed: [1040] Too many connections
12377:20190117:182738.777 Cannot connect to the database. Exiting...
12386:20190117:182738.777 Cannot connect to the database. Exiting...
12378:20190117:182738.778 [Z3001] connection to database 'zabbix' failed: [1040] Too many connections
12378:20190117:182738.778 Cannot connect to the database. Exiting...
12327:20190117:182738.779 One child process died (PID:12386,exitcode/signal:1). Exiting ...
zabbix_server [12327]: Error waiting for process with PID 12384: [4] Interrupted system call
zabbix_server [12327]: Error waiting for process with PID 12386: [10] No child processes
12327:20190117:182855.614 syncing history data...
12327:20190117:182855.614 syncing history data done
12327:20190117:182855.615 syncing trend data...
12327:20190117:182855.615 syncing trend data done
12327:20190117:182855.615 Zabbix Server stopped. Zabbix 4.0.0rc3 (revision 85283).  

發現日志卡死在這就不在動了,檢查下服務是否還在。

ps -ef | grep zabbix-server
root   22304 13466 0 19:48 pts/6 00:00:00 grep --color=auto zabbix-server

發現並沒有,用status命令檢查下看看狀態

systemctl status zabbix-server.service
● zabbix-server.service - Zabbix Server
Loaded: loaded (/usr/lib/systemd/system/zabbix-server.service; enabled; vendor preset: disabled)
Active: deactivating (final-sigterm) since 四 2019-01-17 18:28:55 CST; 1h 23min ago
Process: 14797 ExecStop=/bin/kill -SIGTERM $MAINPID (code=exited, status=0/SUCCESS)
Process: 12316 ExecStart=/usr/sbin/zabbix_server -c $CONFFILE (code=exited, status=0/SUCCESS)
Main PID: 12327 (code=exited, status=0/SUCCESS)
Tasks: 1
CGroup: /system.slice/zabbix-server.service
└─12384 /usr/sbin/zabbix_server -c /etc/zabbix/zabbix_server.conf

1月 17 18:27:38 server1 systemd[1]: Starting Zabbix Server...
1月 17 18:27:38 server1 systemd[1]: Started Zabbix Server.
1月 17 18:28:55 server1 systemd[1]: Stopping Zabbix Server...

確實是不在,但是為什么會啟動不了,百思不得其解, 最后我發現 CGroup 下進程號對應對是啟動命令,於是我百度了下CGgroup百度文章是這樣說的。

作用

編輯
Cgroups最初的目標是為 資源管理提供的一個統一的框架,既整合現有的cpuset等子系統,也為未來開發新的子系統提供接口。現在的cgroups適用於多種應用場景,從單個進程的資源控制,到實現操作系統層次的虛擬化(OS Level Virtualization)。Cgroups提供了以下功能:
1.限制進程組可以使用的資源數量(Resource limiting )。比如:memory子系統可以為進程組設定一個memory使用上限,一旦進程組使用的內存達到限額再申請內存,就會觸發OOM(out of memory)。
2.進程組的優先級控制(Prioritization )。比如:可以使用cpu子系統為某個進程組分配特定cpu share。
3.記錄進程組使用的資源數量(Accounting )。比如:可以使用cpuacct子系統記錄某個進程組使用的cpu時間
4.進程組隔離(Isolation)。比如:使用ns子系統可以使不同的進程組使用不同的 namespace,以達到隔離的目的,不同的進程組有各自的進程、網絡、文件系統掛載空間。
5.進程組控制(Control)。比如:使用freezer子系統可以將進程組掛起和恢復。
--------------------------------------------------------------------------------------------------------------------------
第5條解釋給了我啟發,於是乎我果斷的kill -9  12327,果不其然,立馬被鎖死的進程被釋放。

systemctl status zabbix-server.service
zabbix-server.service - Zabbix Server
Loaded: loaded (/usr/lib/systemd/system/zabbix-server.service; enabled; vendor preset: disabled)
Active: active (running) since 四 2019-01-17 19:53:10 CST; 4s ago
Process: 14797 ExecStop=/bin/kill -SIGTERM $MAINPID (code=exited, status=0/SUCCESS)
Process: 33547 ExecStart=/usr/sbin/zabbix_server -c $CONFFILE (code=exited, status=0/SUCCESS)
Main PID: 33555 (zabbix_server)
Tasks: 69
CGroup: /system.slice/zabbix-server.service
├─33555 /usr/sbin/zabbix_server -c /etc/zabbix/zabbix_server.conf
├─33556 /usr/sbin/zabbix_server: configuration syncer [waiting 60 sec for processes]
├─33557 /usr/sbin/zabbix_server: alerter #1 started
├─33558 /usr/sbin/zabbix_server: alerter #2 started
├─33559 /usr/sbin/zabbix_server: alerter #3 started
├─33561 /usr/sbin/zabbix_server: housekeeper [startup idle for 30 minutes]

 
 
 

 


免責聲明!

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



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