AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-7221

Peter Sankauskas's questions

Martin Hope
Peter Sankauskas
Asked: 2010-03-27 15:59:15 +0800 CST

Tomcat over AJP 的 Apache 负载均衡器限制

  • 6

我让 Apache 在 3 个 Tomcat 服务器前充当负载平衡器。有时,Apache 会返回 503 响应,我想将其完全删除。就 CPU、内存或磁盘而言,所有 4 台服务器都没有承受很大的负载,所以我有点不确定是什么达到了它的限制或为什么。当所有工作人员都处于错误状态时返回 503 - 不管这意味着什么。以下是详细信息:

阿帕奇配置:

<IfModule mpm_prefork_module>
  StartServers           30
  MinSpareServers        30
  MaxSpareServers        60
  MaxClients            200
  MaxRequestsPerChild  1000
</IfModule>

...

<Proxy *>
  AddDefaultCharset Off
  Order deny,allow
  Allow from all
</Proxy>

# Tomcat HA cluster
<Proxy balancer://mycluster>
  BalancerMember ajp://10.176.201.9:8009 keepalive=On retry=1 timeout=1 ping=1
  BalancerMember ajp://10.176.201.10:8009 keepalive=On retry=1 timeout=1 ping=1
  BalancerMember ajp://10.176.219.168:8009 keepalive=On retry=1 timeout=1 ping=1
</Proxy>

# Passes thru track. or api.
ProxyPreserveHost On
ProxyStatus On

# Original tracker
ProxyPass /m  balancer://mycluster/m
ProxyPassReverse /m balancer://mycluster/m

Tomcat 配置:

<Server port="8005" shutdown="SHUTDOWN">
  <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
  <Listener className="org.apache.catalina.core.JasperListener" />
  <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />

  <Service name="Catalina">
    <Connector port="8080" protocol="HTTP/1.1" 
               connectionTimeout="20000" 
               redirectPort="8443" />

    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

    <Engine name="Catalina" defaultHost="localhost">
      <Host name="localhost"  appBase="webapps"
          unpackWARs="true" autoDeploy="true"
          xmlValidation="false" xmlNamespaceAware="false">
    </Engine>
  </Service>
</Server>

阿帕奇错误日志:

[2010 年 3 月 22 日星期一 18:39:47] [错误] (70007) 指定的超时已过期:代理:AJP:尝试连接到 10.176.201.10:8009 (10.176.201.10) 失败
[2010 年 3 月 22 日星期一 18:39:47] [错误] ap_proxy_connect_backend 禁用(10.176.201.10)的工作人员
[2010 年 3 月 22 日星期一 18:39:47] [错误] 代理:AJP:无法连接到后端:10.176.201.10
[2010 年 3 月 22 日星期一 18:39:47] [错误](70007)指定的超时已过期:代理:AJP:尝试连接到 10.176.201.9:8009(10.176.201.9)失败
[2010 年 3 月 22 日星期一 18:39:47] [错误] ap_proxy_connect_backend 禁用 (10.176.201.9) 的工作人员
[2010 年 3 月 22 日星期一 18:39:47] [错误] 代理:AJP:无法连接到后端:10.176.201.9
[2010 年 3 月 22 日星期一 18:39:47] [错误] (70007) 指定的超时已过期:代理:AJP:尝试连接到 10.176.219.168:8009 (10.176.219.168) 失败
[2010 年 3 月 22 日星期一 18:39:47] [错误] ap_proxy_connect_backend 禁用(10.176.219.168)的工作人员
[2010 年 3 月 22 日星期一 18:39:47] [错误] 代理:AJP:无法连接到后端:10.176.219.168
[2010 年 3 月 22 日星期一 18:39:47] [错误] 代理:BALANCER:(balancer://mycluster)。所有工作人员都处于错误状态
[2010 年 3 月 22 日星期一 18:39:47] [错误] 代理:BALANCER:(balancer://mycluster)。所有工作人员都处于错误状态
[2010 年 3 月 22 日星期一 18:39:47] [错误] 代理:BALANCER:(balancer://mycluster)。所有工作人员都处于错误状态
[2010 年 3 月 22 日星期一 18:39:47] [错误] 代理:BALANCER:(balancer://mycluster)。所有工作人员都处于错误状态
[2010 年 3 月 22 日星期一 18:39:47] [错误] 代理:BALANCER:(balancer://mycluster)。所有工作人员都处于错误状态
[2010 年 3 月 22 日星期一 18:39:47] [错误] 代理:BALANCER:(balancer://mycluster)。所有工作人员都处于错误状态

负载均衡器top信息:

top - 23:44:11 up 210 天,4:32,1 个用户,平均负载:0.10、0.11、0.09
任务:总共 135 个,运行 2 个,睡眠 133 个,停止 0 个,僵尸 0 个
中央处理器:0.1%us、0.2%sy、0.0%ni、99.2%id、0.1%wa、0.0%hi、0.1%si、0.3%st
内存:总共 524508k,已使用 517132k,空闲 7376k,9124k 缓冲区
交换:总计 1048568k,已使用 352k,免费 1048216k,缓存 334720k

雄猫top信息:

top - 23:47:12 up 210 天,3:07,1 个用户,平均负载:0.02、0.04、0.00
任务:总共 63 个,1 个正在运行,62 个正在睡眠,0 个停止,0 个僵尸
中央处理器:0.2%us、0.0%sy、0.0%ni、99.8%id、0.1%wa、0.0%hi、0.0%si、0.0%st
内存:总共 2097372k,已使用 2080888k,可用 16484k,21464k 缓冲区
交换:总计 4194296k,已使用 380k,免费 4193916k,缓存 1520912k

Catalina.out 中没有任何错误消息。

根据 Apache 的服务器状态,它似乎达到了 143 个请求/秒的最大值。我相信服务器可以处理比它们实际更多的负载,因此任何有关低默认限制或其他原因导致此设置最大化的提示将不胜感激。

tomcat apache-2.2 load-balancing mod-proxy-ajp mod-balancer
  • 7 个回答
  • 43522 Views
Martin Hope
Peter Sankauskas
Asked: 2009-10-14 09:22:03 +0800 CST

Exim:将退回的消息转换回原始消息

  • 1

我们在 Debian 上设置了 exim4 作为智能主机,通过 Google 的邮件服务器发送邮件。我们将 Google Apps 用于其他一切,所以这是有道理的。问题是,智能主机帐户的密码已更改,导致 exim 退回邮件然后冻结它们。现在我有大量未发送的邮件/var/spool/exim4/[input|msglog]。

我试过运行:

exim -d -M 1Mx6IS-0006bC-3h

但这会导致发送退回的消息,而不是原始消息。/var/spool/exim4/input/1Mx6IS-0006bC-3h-D我可以在该行下方看到原始消息的副本

------ This is a copy of the message, including all the headers. ------

...但我还没有找到一种方法来接收这个冻结的退回邮件,并将其转换回原始邮件,以便可以重试。

有任何想法吗?

email
  • 2 个回答
  • 929 Views
Martin Hope
Peter Sankauskas
Asked: 2009-09-10 13:24:01 +0800 CST

如何禁用 LDAP 上的匿名访问

  • 8

我需要保护我的 LDAP 服务器,但我不太确定最好的方法。我正在运行 Debian "Lenny",并使用 OpenLDAP (slapd)。

我注意到,如果我运行:

ldapsearch -x -W -b 'dc=example,dc=com' -H 'ldap://127.0.0.1:389/' 'objectclass=*'

并在提示输入密码时按 ENTER,我会得到一个目录条目列表。如果我将其向 Internet 开放,匿名访问是不可接受的,但无法找到禁用匿名访问的方法。

我尝试修改/etc/ldap/slapd.conf为以下内容:

进入 *
    由 dn="cn=admin,dc=example,dc=com" 写
    由 * 无

...但这并不能解决问题。

在此之后,我将让它在 TLS 上运行,但是在仍然允许匿名访问的同时执行该步骤是没有意义的。

有任何想法吗?

security
  • 3 个回答
  • 25984 Views
Martin Hope
Peter Sankauskas
Asked: 2009-08-19 21:15:29 +0800 CST

Linux 上的网络路由问题

  • 0

我希望那里的人能够看到这个并让我知道我错过了什么。我有 4 台机器,出于某种原因,其中只有 1 台可以通过它们的私有 IP 地址(在 eth1 上)与另外 3 台通信。

这4台机器是:

    mach01 10.176.193.17
    马赫02 10.176.193.92
    马赫03 10.176.193.27
    马赫04 10.176.195.9

所有的机器都是 Debian lenny。从mach02 可以ping 其他3 台机器没问题,从其他机器可以ping 通mach02。但是,从 mach01、mach03 和 mach04 我只能 ping mach02。

所有机器上“iptables --list”的结果是:

    链输入(策略接受)
    目标 prot opt 源目标

    Chain FORWARD(政策接受)
    目标 prot opt 源目标

    链输出(策略接受)
    目标 prot opt 源目标

所以我不相信有防火墙问题。所有机器上 eth1 的路由表是:

    10.176.192.0 * 255.255.224.0 U 0 0 0 eth1
    10.191.192.0 10.176.192.1 255.255.192.0 UG 0 0 0 eth1
    10.176.0.0 10.176.192.1 255.248.0.0 UG 0 0 0 eth1

所以看起来也不错。由于某种原因,从 mach03 到 mach02 以外的任何地方的 ARP 请求都失败了,对于其他机器也是如此。

    mach03$ arping -c 1 -I eth1 10.176.193.17
    ARPING 10.176.193.17

    --- 10.176.193.17 统计 ---
    发送 1 个数据包,接收 0 个数据包,100% 未应答

我看不出 ARP 会像这样失败的任何原因,并且已经没有想法和地方可以查看。在网络故障排除方面有更多经验的其他人有什么想法吗?

谢谢

编辑

尝试从 mach03 ping mach01 后,ARP 缓存中出现以下内容:

    $ arp -a
    ? (10.176.193.17) 在 eth1 上的 <incomplete>
    ? (67.23.45.1) 在 00:00:0C:07:AC:01 [ether] 在 eth0

反之亦然(从 mach03 到 mach01):

    ? (10.176.193.92) 在 40:40:FA:77:D7:94 [ether] 在 eth1
    ? (10.176.193.27) 在 eth1 上的 <incomplete>
    ? (67.23.45.1) 在 00:00:0C:07:AC:01 [ether] 在 eth0

以及有关 eth1 的更多详细信息:

    $ ip addr 显示 dev eth1
    3: eth1: mtu 1500 qdisc pfifo_fast 状态 UNKNOWN qlen 1000
        链接/以太 40:40:16:e0:f3:dd brd ff:ff:ff:ff:ff:ff
        inet 10.176.193.17/19 brd 10.176.223.255 范围全局 eth1
        inet6 fe80::4240:16ff:fee0:f3dd/64 范围链接
           valid_lft 永远首选_lft 永远
linux
  • 6 个回答
  • 9748 Views
Martin Hope
Peter Sankauskas
Asked: 2009-08-03 19:41:37 +0800 CST

LDAP 结构:dc=example,dc=com vs o=Example

  • 19

我对 LDAP 比较陌生,并且已经看到了两种类型的示例来说明如何设置您的结构。

一种方法是基数为:dc=example,dc=com而其他示例的基数为o=Example。继续,您可以有一个如下所示的组:

    dn: cn=team,ou=Group,dc=example,dc=com
    中文:团队
    对象类:posixGroup
    memberUid:用户1
    memberUid:用户 2

...或使用“O”样式:

    dn:cn=团队,o=示例
    对象类:posixGroup
    memberUid:用户1
    memberUid:用户 2

我的问题是:

  1. 是否有任何最佳实践要求使用一种方法而不是另一种方法?
  2. 您使用哪种风格只是偏好问题吗?
  3. 使用其中一个有什么优势吗?
  4. 一种方法是旧式的,一种是新的和改进的方法吗?

到目前为止,我已经采用了这种dc=example,dc=com风格。社区可以就此事提供的任何建议将不胜感激。

ldap openldap
  • 1 个回答
  • 19579 Views
Martin Hope
Peter Sankauskas
Asked: 2009-07-24 13:43:47 +0800 CST

如何判断公共 SSH 密钥是否有密码

  • 14

这可能是一个菜鸟问题,但我如何确定某人给我的公共 SSH 密钥是否有密码?

我们有一种情况,我没有为用户生成 SSH 密钥,但我想确保我放在服务器上的每个 SSH 密钥都有一个密码,但我觉得密码只是私钥的一部分。

谢谢!

linux security ssh
  • 3 个回答
  • 4746 Views
Martin Hope
Peter Sankauskas
Asked: 2009-07-22 12:41:22 +0800 CST

我应该采取哪些步骤来保护 Tomcat 6.x?

  • 10

我正在设置新的 Tomcat 部署,并希望它尽可能安全。

我创建了一个“jakarta”用户并让 jsvc 作为守护进程运行 Tomcat。关于目录权限等限制对Tomcat文件的访问的任何提示?

我知道我需要删除默认的 webapps - 文档、示例等......我应该在这里使用任何最佳实践吗?那么所有的配置 XML 文件呢?那里有什么提示吗?

是否值得启用安全管理器以便 web 应用程序在沙箱中运行?有没有人有设置这个的经验?

我见过有人在 Apache 后面运行两个 Tomcat 实例的例子。看来这可以使用 mod_jk 或 mod_proxy 来完成……两者都有什么优点/缺点?值得麻烦吗?

如果重要的话,操作系统是 Debian lenny。我没有使用 apt-get 因为 lenny 只提供 tomcat 5.5 而我们需要 6.x。

谢谢!

tomcat linux debian security
  • 5 个回答
  • 10902 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve