我在一个数据中心(linode)中有一个cpanel VPS,其中我有很多客户端帐户,我想使用与私有IP连接的同一数据中心中的另外两个VPS来平衡负载。
我正在考虑设置这个来平衡负载:
VPS 1: Cpanel,mail server,Apache (代理)。收到请求,公开知识产权。
VPS 2: Mysql。
VPS 3: Tomcat。
现在我的首要任务是设置VPS 3。
Cpanel架构通过apache加载(包括虚拟主机定义中的mod_jk )加载Java模块,我正在考虑将servlet更改为tomcat,并将其位置更改为如下所示:
DocumentRoot IP_OF_VPS:/home/didactac/public_html我怎么也不确定这会不会好!
下面是apache中的虚拟主机:
<VirtualHost 173.230.130.64:80>
ServerName danielakosanstore.com
ServerAlias www.danielakosanstore.com
DocumentRoot /home/danielak/public_html
ServerAdmin webmaster@danielakosanstore.com
UseCanonicalName Off
CustomLog /usr/local/apache/domlogs/danielakosanstore.com combined
CustomLog /usr/local/apache/domlogs/danielakosanstore.com-bytes_log "%{%s}t %I .\n%{%s}t %O ."
## User danielak # Needed for Cpanel::ApacheConf
<IfModule mod_suphp.c>
suPHP_UserGroup danielak danielak
</IfModule>
<IfModule !mod_disable_suexec.c>
SuexecUserGroup danielak danielak
</IfModule>
ScriptAlias /cgi-bin/ /home/danielak/public_html/cgi-bin/
Include "/usr/local/apache/conf/userdata/*.conf"
Include "/usr/local/apache/conf/userdata/*.owner-root"
Include "/usr/local/apache/conf/userdata/std/*.conf"
Include "/usr/local/apache/conf/userdata/std/*.owner-root"
Include "/usr/local/apache/conf/userdata/std/2/*.conf"
Include "/usr/local/apache/conf/userdata/std/2/*.owner-root"
Include "/usr/local/apache/conf/userdata/std/2/danielak/*.conf"
Include "/usr/local/apache/conf/userdata/std/2/danielak/danielakosanstore.com/*.conf"最后一行中包含的配置文件,它加载servlet:
</VirtualHost>
<IfModule mod_jk.c>
JkMount /*.jsp ajp13
JkMount /* ajp13
JkUnmount /*.php* ajp13
JkUnmount /*.cgi ajp13
JkUnmount /*.shtm* ajp13
JkUnmount /*.pl ajp13
JkMount /servlet/* ajp13
JkMount /servlets/* ajp13
</IfModule>你们觉得怎么样?我需要能够添加一堆客户端-帐户-servlet,或者自动删除它们。
非常感谢!
本节旨在根据评论中量子的反馈和问题,对问题提供更多的详细信息:
quanta:当VPS3上只有一个Tomcat实例时,您想要负载平衡吗?“添加一群客户-帐户-servlet”是什么意思?
答:我可能没有正确地使用负载平衡这个术语,你看,我每个帐户都安装了一个java应用程序,一个帐户是一个基于这个java应用程序运行的网站,每个网站都有一个linux用户,http.cnf (apache)中有一个虚拟主机,server.xml中有一个虚拟主机。Apache充当当前VPS上tomcat的代理。现在只有一个VPS。我需要的是同样的设置,但是在不同的机器上运行tomcat。这样,如果tomcat机器的内存不保持,我可以设置一台新的tomcat机器,把新的客户端放在那里。我称之为负载平衡。但我有一种感觉,我没有用正确的方式使用这个词。
发布于 2011-09-05 17:29:33
我每个帐户安装一个java应用程序,一个帐户是一个基于这个java应用程序运行的网站,每个网站都有一个linux用户,http.cnf (apache)中有一个虚拟主机,server.xml中有一个虚拟主机。Apache充当当前VPS上tomcat的代理。现在只有一个VPS。我需要的是同样的设置,但是在不同的机器上运行tomcat。
当然,您可以通过将worker.<worker_name>.host更改为workers.properties中的后端Tomcat实例的IP地址来做到这一点,如下所示:
worker.worker1.host=backend.Tomcat's.IP.address我可以链接一个特定的客户端(网站,虚拟主机,帐户.(在这种情况下)对特定的工作人员也是如此。
可以,停那儿吧。将JkMount放入VirtualHost部分:
<VirtualHost *:80>
ServerName ...
ServerAdmin ...
JkMount /*.jsp ajp13
JkMount /* ajp13
...
</VirtualHost>https://serverfault.com/questions/307797
复制相似问题