Debian上WebLogic集群负载均衡配置
架构与前置条件
方案一 使用Nginx进行HTTP(S)反向代理与负载均衡
sudo apt update && sudo apt install nginxsudo systemctl enable --now nginxupstream weblogic_cluster {
server weblogic1.example.com:7001;
server weblogic2.example.com:7001;
# 可按需增加更多实例
}
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://weblogic_cluster;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
sudo nginx -t && sudo systemctl reload nginxupstream weblogic_cluster {
least_conn; # 最少连接
server weblogic1.example.com:7001 weight=3;
server weblogic2.example.com:7001 weight=1;
ip_hash; # 会话保持(慎用跨网段NAT)
}
upstream weblogic_cluster {
server weblogic1.example.com:7001 max_fails=3 fail_timeout=30s;
server weblogic2.example.com:7001 max_fails=3 fail_timeout=30s;
}
proxy_pass 指向 HTTPS 端口(如 7002),并设置 X-Forwarded-Proto $scheme 以便后端生成正确重定向与协议判断。方案二 使用HAProxy进行四层/七层负载均衡(可选)
sudo apt update && sudo apt install haproxyfrontend weblogic_front
bind *:80
default_backend weblogic_back
backend weblogic_back
balance roundrobin
server wls1 weblogic1.example.com:7001 check
server wls2 weblogic2.example.com:7001 check
frontend weblogic_http
bind *:80
mode http
default_backend weblogic_http_back
backend weblogic_http_back
balance leastconn
option httpchk GET /console
server wls1 weblogic1.example.com:7001 check
server wls2 weblogic2.example.com:7001 check
sudo systemctl restart haproxyWebLogic域与集群关键配置
验证与运维要点
curl -I 或浏览器开发者工具观察响应头与跳转是否符合预期(含 X-Forwarded-For/Proto 传递)。