httpd.service 被重新加载或终止

httpd.service 被重新加载或终止

在新的 CentOS7 服务器上,我遇到了一个问题,即每天晚上 httpd.service 都会重新加载。有时,大约在同一时间,它会被终止。

systemctl 状态 httpd

● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
   Active: active (running) since Sun 2017-04-09 12:54:33 CEST; 2 days ago
     Docs: man:httpd(8)
           man:apachectl(8)
 Main PID: 27968 (/usr/sbin/httpd)
   Status: "Total requests: 0; Current requests/sec: 0; Current traffic:   0 B/sec"
   CGroup: /system.slice/httpd.service
           ├─  897 /usr/sbin/httpd -DFOREGROUND
           ├─  898 /usr/sbin/httpd -DFOREGROUND
           ├─  900 /usr/sbin/httpd -DFOREGROUND
           ├─  901 /usr/sbin/httpd -DFOREGROUND
           ├─  907 /usr/sbin/httpd -DFOREGROUND
           ├─  992 /usr/sbin/httpd -DFOREGROUND
           ├─ 1051 /usr/sbin/httpd -DFOREGROUND
           ├─ 4168 /usr/sbin/httpd -DFOREGROUND
           ├─ 6680 /usr/sbin/httpd -DFOREGROUND
           ├─19528 /usr/sbin/httpd -DFOREGROUND
           ├─23513 /usr/sbin/httpd -DFOREGROUND
           ├─24482 /usr/sbin/httpd -DFOREGROUND
           └─27968 /usr/sbin/httpd -DFOREGROUND

Apr 09 12:54:32 server445 systemd[1]: Starting The Apache HTTP Server...
Apr 09 12:54:33 server445 systemd[1]: Started The Apache HTTP Server.
Apr 10 03:47:49 server445 systemd[1]: Reloaded The Apache HTTP Server.
Apr 11 03:17:44 server445 systemd[1]: Reloaded The Apache HTTP Server.

journalctl _SYSTEMD_UNIT=httpd.service

-- Logs begin at Thu 2015-05-21 16:37:24 CEST, end at Tue 2017-04-11 15:37:27 CEST. --
Mar 26 03:38:39 server445 kill[27169]: kill: cannot find process ""
Apr 03 03:41:01 server445 kill[28645]: kill: cannot find process ""
Apr 09 03:35:21 server445 kill[23157]: kill: cannot find process ""

是否有可能更深入地研究,

  • 是什么导致了重新加载?
  • 是什么导致了死亡?

重新加载和终止总是发生在晚上 3:17 到 3:47 之间,所以我猜它们之间有某种联系。也许是某个 cron 作业有时在工作(==重新加载),但有时失败(==终止)?

自从systemctl 状态 httpdjournalctl _SYSTEMD_UNIT=httpd.service不显示任何详细信息,我该怎么办?

答案1

如果您的内核正在杀死它,它会将所有信息转储到 dmesg 中。在您的系统上执行dmesg以查看是什么在执行此操作。

如果它不在那里,很有可能另一个服务正在重新启动该服务以便您执行某些特定操作。例如编排包、cron 等。

相关内容