51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

tomcat 集群实战

tomcat集群架构图

| lb01 | 10.0.0.6 172.16.1.6 | |----------|-----------------------------| | web1 | 172.16.1.7 | | web2 | 172.16.1.8 |

之前在web02上做了一台了,我们再在 web01 上 扩展一套

就需要在web01上安装 jdk, tomcat

步骤参考 :

JDK 安装: https://www.baimeidashu.com/9023.html

tomcat 安装: https://www.baimeidashu.com/9055.html

接下来我们 迁移zrlog 服务了

在web02 上操作如下:

scp -rp /code/  10.0.0.7:/

scp -rp /soft/  10.0.0.7:/  这里要在 web01 手动做个软连接

scp /usr/lib/systemd/system/tomcat.service  172.16.1.7:/usr/lib/systemd/system/tomcat.service

接下来在web01上操作如下:

[root@web01 /soft]#systemctl daemon-reload 
[root@web01 /soft]#systemctl start tomcat
[root@web01 /soft]#systemctl enable  tomcat

第3步: 配置 代理

在lb01上 做负载均衡的分发:

注意: 在Nginx做代理时

Nginx代理后端Nginx头部信息默认丢弃

Nginx代理后端Tomcat 头部信息自动携带 不管前面任何域名解析到负载 始终携带代理文件的头部信息

[root@lb01 /etc/nginx/conf.d]#cat  zrlog.conf 

upstream zrlog {
	server 172.16.1.7:8080;
	server 172.16.1.8:8080;
}

server {
	listen 80;
	server_name zrlog.blog.com;


	location / {
		proxy_pass http://zrlog;    	#tomcat启动的java程序,可以直接通过proxy_pass进行负载均衡
		include proxy_params;
	}
}

携带参数:

cat /etc/nginx/proxy_params
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_http_version 1.1;
proxy_connect_timeout 30;
proxy_send_timeout 60;
proxy_read_timeout 60;
proxy_buffering on;
proxy_buffer_size 32k;
proxy_buffers 4 128k;

为tomcat日志,获取http的Header信息

<Host name="zrlog.baimeidashu.com"  appBase="/code/tomcat/zrlog"

​	unpackWARs="true" autoDeploy="true">

<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"

   prefix="zrlog_access_log" suffix=".txt"

   pattern="%h %l %u %t &quot;%r&quot; %s %b  %{User-Agent}i %{X-Forwarded-For}i" />

</Host>

重启 nginx:

systemctl restart nginx

做hosts 解析:

访问网站: 这个时候不需要 加端口8080. 因为默认从80 转发到8080 了。

http://zrlog.baimei.com/

这样我们做好了 负载均衡(用的nginx 的反向代理功能)

赞(2)
未经允许不得转载:工具盒子 » tomcat 集群实战