【问题标题】:mod_slotmem_shm is causing error in apache2.4.29 loadingmod_slotmem_shm 导致 apache2.4.29 加载错误
【发布时间】:2018-08-28 00:00:33
【问题描述】:

我正在从 apache 2.2 升级到 2.4.29,而没有 ssl 和 ssl 一切正常。但是,当我尝试将代理模块与 slotmem_shm 模块一起使用时,根据我的理解,现在在使用负载平衡器模块时这是强制性的,我在 error_log 中收到以下错误:

[Fri Mar 16 17:52:12.073931 2018] [lbmethod_heartbeat:notice] [pid 15571:tid 1] AH02282: No slotmem from mod_heartmonitor
[Fri Mar 16 17:52:12.275257 2018] [slotmem_shm:error] [pid 15571:tid 1] (17)File exists: AH02611: create: apr_shm_create(/usr/local/apache_QA_New/logs/slotmem-shm-p9cbf72c_check.shm) failed
[Fri Mar 16 17:52:12.275543 2018] [proxy_balancer:emerg] [pid 15571:tid 1] (17)File exists: AH01185: worker slotmem_create failed
[Fri Mar 16 17:52:12.275721 2018] [:emerg] [pid 15571:tid 1] AH00020: Configuration Failed, exiting

过去两周我一直在进行头脑风暴。我尝试了不同的解决方案,比如增加内核信号量内存,它们大约是 128K,我已经增加到 16384K,但是这个解决方案似乎仍然不起作用,它似乎也不是正确的解决方案。

我的平衡器文件中有近 30 个平衡器条目,httpd-vhosts.conf 中有超过 50 个虚拟主机条目,每次重新启动时,apache 都会为 shm 创建一些文件,然后关闭,它会一直这样做,直到创建所有文件为此我必须一次又一次地重新启动它。

【问题讨论】:

  • 我尝试了不同的解决方案,比如增加内核信号量内存,它们大约是 128K,我已经增加到 16384K 这与创建共享内存文件无关。失败的代码可以在这里找到:github.com/apache/apr/blob/trunk/shmem/unix/shm.c#L144 在不知道您的 Apache 版本是如何编译的情况下,几乎不可能知道我链接到的源代码中采用了哪个代码路径。
  • 这是我的配置 enable-mods-shared=all" enable-ssl" enable-modules=all" enable-autoindex" enable-setenvif" enable-alias" enable-so" enable-cache=共享“启用状态”启用重写“启用代理”启用代理连接“启用代理 ftp”启用代理 http“启用代理平衡器”启用内存缓存 =共享“启用文件- cache=shared" enable-headers=shared" enable-usertrack=shared" enable-expires=shared" enable-deflate" enable-proxy-ajp" enable-nonportable-atomics=yes" disable-charset-lite" with-mpm= worker" with-ssl-lib=/usr/sfw/lib" with-ssl=/usr/sfw" with-included-apr"
  • 注意:apr和apr-util是放在apache的srclib中
  • 您找到解决此问题的方法了吗?我正在处理在 RHEL 8 (httpd-2.4.37) 上安装 apache 的类似操作,其中包含许多平衡器/虚拟主机的配置。
  • 是的,我在运行配置时使用“--enable-posix-shm”解决了这个问题。

标签: module solaris apache2.4


【解决方案1】:

这与底层 SHM 无关,而是与多个平衡器(全局和虚拟主机外部)的初始化方式和有时持久化方式有关。这在 2.4.29 中发生了很大变化。

您应该在 issues.apache.org 上找到重现错误的最小平衡器集并打开一个错误。这可能与重复的虚拟主机或重复的代理“工作者”有关。

【讨论】:

    猜你喜欢
    • 2014-01-08
    • 2017-01-03
    • 1970-01-01
    • 1970-01-01
    • 2020-03-05
    • 1970-01-01
    • 2013-01-29
    • 1970-01-01
    • 2013-08-31
    相关资源
    最近更新 更多