nginx实现tomcat的负载均衡及企业内部应用的代理
192.168.3.87 mysql+redis+tomcat
192.168.3.112 nginx:6688
192.168.3.86 nginx+h5
环境准备
a.安装包
open jdk 1.8
tomcat 8.0
nginx 1.1.13.tar.gz
mysql5.5.48.tar.gz
b.解析域名admin.chinasoft.com和ops.chinasoft.com到nginx负载均衡服务器
①后端3.87和3.112jdk的部署
yum install -y java-1.8.0-openjdk
yum install -y redis
验证是否安装成功
java -version
openjdk version "1.8.0_91"
OpenJDK Runtime Environment (build 1.8.0_91-b14)
OpenJDK 64-Bit Server VM (build 25.91-b14, mixed mode
②tomcat的部署
tar -zxvf apache-tomcat-8.0.36.tar.gz
mv apache-tomcat-8.0.36 /usr/local/tomcat
将tomcat的命令加入环境变量中
# vim /etc/profile.d/tomcat.sh
export CATALINA_HOME=/usr/local/tomcat
export PATH=$CATALINA_HOME/bin:$PATH
source /etc/profile.d/tomcat.sh
修改http的web端口为8888
vim /usr/local/tomcat/conf/server.xml
<Connector port="8888" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
启动服务并验证是否正常启动
startup.sh
ss -tunlp|grep 8888
③将war包放入webapps目录下,重新启动tomcat,验证是否成功,错误日志可以查看catalina.out文件
将域名解析指向nginx负载均衡器:192.168.8.86 admin.chinasoft.com
配置nginx负载均衡器
将具体的定义防止到/etc/nginx/conf文件目下
在nginx.conf中定义目录包含:
include /etc/nginx/conf/*.conf;
在conf目录下分别定义后端服务器,nginx中h5和zabbix等内部管理系统的定义
cat h5.conf
server {
access_log /data/logs/h5_acc.log; #访问日志
error_log /data/logs/h5_error.log info; #错误日志
server_name localhost; #因为是放置在本机,所以直接用Localhost
root /web/h5; #自定义存放web文件目录
}
cat flow_admin.conf
# 定义后端负载均衡的两台机器
upstream flows {
server 192.168.3.87:8888 weight=1;
server 192.168.3.112:6688 weight=1;
}
server {
server_name admin.chinasoft.com; #定义servername即指向nginx的域名
access_log /data/logs/flowadm_acc.log;
error_log /data/logs/flowadm_error.log info;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-Ip $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_pass http://flows/;
}
}
负载均衡效果:
cat ops.conf
# 定义zabbix等内部服务
server {
server_name ops.chinasoft.com;
location /zabbix/ {
proxy_set_header Host $host;
proxy_set_header X-Real-Ip $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_pass http://192.168.3.108/zabbix/;
}
}
几段生产环境的例子:
ops.conf
server{
server_name ss.chinasoft.com;
index index.html index.htm index.php;
#zabbix server access by nginx proxy
location /zabbix/ {
proxy_pass http://u04zbx01.yaya.corp/zabbix/;
}
location /ldap/ {
proxy_pass http://u04dns01.yaya.corp/ldap/;
}
}
flow.conf
server {
server_name flowadm.chinasoft.com;
access_log /data/logs/flowadm_access.log;
error_log /data/logs/flowadm_error.log info;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-Ip $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
#proxy_pass http://flows_admin;
proxy_pass http://u04flow01.yaya.corp:8888/;
}
}
h5.conf
upstream flows {
server u04flow01.yaya.corp:8080;
server u04flow02.yaya.corp:8080;
}
server {
server_name flow.chinasoft.com;
error_log /data/logs/flow_h5.log info;
access_log /data/logs/flow_h5.log;
location /h5/flow/{
alias /data/h5/flow/;
index index.html;
}
location /sdkApi/{
proxy_set_header Host $host;
proxy_set_header X-Real-Ip $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
#proxy_pass http://u04flow01.yaya.corp:8080/;
proxy_pass http://flows;
}
#error_page 404 /404.html;
}
web.conf
server {
server_name 1.1.1.1;
server_name www.baidu.com www.aaa.com
error_log /data/logs/web-acccess.log info;
access_log /data/logs/web-error.log;
location /{
alias /home/hailitao/; #这里为代码存放路径
index views/index/index.html;
}
location /api/{
proxy_set_header Host $host;
proxy_set_header X-Real-Ip $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_pass http://192.168.3.85:9783/; #这里为服务端所部署的地址
}
}
share.conf
upstream bills {
server u04tv01.chinasoft.com:6643;
server u04tv02.chinasoft.com:6643;
}
server {
server_name fx.chinasoft.com;
error_log /data/logs/share_error.log info;
access_log /data/logs/share_access.log;
location /{
alias /data/haili_share/;
index room.html;
}
location /hailishare/{
# proxy_set_header Host $host;
# proxy_set_header X-Real-Ip $remote_addr;
# proxy_set_header X-Forwarded-For $remote_addr;
proxy_pass http://bills/;
}
}
nginx实现tomcat的负载均衡及企业内部应用的代理的更多相关文章
- Nginx 服务器 之Nginx与tomcat实现负载均衡
本文讲解我们如何使用Nginx做反向带服务器,实现nginx与tomcat服务器集群做负载均衡. 一.nginx与tomcat实现负载均衡 1.在/usr/local/ngnix/conf 创建 ...
- Tomcat(五):nginx/httpd + tomcat及负载均衡tomcat
*/ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...
- nginx和tomcat配置负载均衡和session同步
一.背景 因业务需求,现需配置多台服务器,实现负载均衡. 二.解决方案 使用 nginx + tomcat,在这一台应用服务器部署一个nginx和两个tomcat.通过nginx修改配置后reload ...
- 基于nginx与Tomcat实现负载均衡
server1:192.168.200.113(nginx服务端) server2:192.168.200.111(Tomcat服务端) server1中nginx的配置文件 nginx.conf h ...
- 利用httpd对tomcat进行负载均衡配置
实验系统:CentOS 6.6_x86_64 实验前提:提前准备好编译环境,防火墙和selinux都关闭 实验说明:本实验共有2台主机,IP分配如拓扑 实验软件:jdk-8u60-linux-x64 ...
- 使用 Nginx + Tomcat 搭建负载均衡
负载均衡 建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽.增加吞吐量.加强网络数据处理能力.提高网络的灵活性和可用性. 负载均衡,英文名称为Load Balance, ...
- Nginx+Tomcat+Memcached负载均衡集群服务搭建
操作系统:CentOS6.5 本文档主要讲解,如何在CentOS6.5下搭建Nginx+Tomcat+Memcached负载均衡集群服务器,Nginx负责负载均衡,Tomcat负责实际服务,Memc ...
- nginx+tomcat+redis负载均衡及session共享
概述 本文档是用来详细描述 nginx+tomcat+redis负载均衡实现session共享 所需软件及下载地址 软件名称 下载地址 功能说明 Nginx-v1.6.0 http://nginx.o ...
- java:tomcat(负载均衡)nginx的应用配置
http://mini.eastday.com/mobile/180627012211514.html 1.什么是负载均衡 由于系统各个核心部分随着业务量的提高,访问量和数据流量的快速增长,单一的服务 ...
随机推荐
- 【洛谷P3586】LOG
题目大意:维护一个集合,支持单点修改.查询小于 X 的数的个数.查询小于 X 的数的和. 题解:学习到了动态开点线段树.对于一棵未经离散化的权值线段树来说,对于静态开点来说,过大的值域会导致不能承受的 ...
- ztree删除某个节点下的全部子节点后,父节点图标还是文件夹
<script type="text/javascript"> //删除节点 zTree.removeNode(treeNode); //获取删除节点的父节点 var ...
- Hibernate_事务管理
今天学习Hibernate,发现当我在执行下面操作时,不会对数据库产生任何效果,就是说Customer对象并不会保存到数据库中 Session session = HibernateUtils.ope ...
- MYSQL增加tmp_table_size 的操作
最近有张表经常损坏,修复后还是会出现损坏. dba分析有可能是临时表空间太小导致的.以下是设置临时表空间大小的操作. 设置 tmp_table_size的大小 mysql> set global ...
- System.Runtime.InteropServices.COMException:“服务器出现意外情况。 (异常来自
.Net MVC导出Excel的时候,一直报错,如题.原因是因为福昕阅读器,这样设置 execl->点击文件>选项>加载项,选择com加载项,把祈福阅读器勾掉.
- 学习windows编程 day4 之视口和窗口
LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { HDC hdc; PAINTSTRU ...
- java内存模型及内存与cpu之间的关系
主内存和cpu之间的关系,因为cpu是在是处理速度太快了.所以一般cpu都有一个cpu缓存,上图的意思是主内存--->cpu缓存--->cpu寄存器--->cpu执行处理,写的时候反 ...
- Ubuntu 下 Tomcat7 的安装和配置
tomcat下载地址:http://tomcat.apache.org/download-70.cgi 声明:下面的内容和原创笔者的博文的内容差不多,不一样的只是tomcat7的安装目录不同,我按照我 ...
- 数据库索引实现(B+,B-,hash)
★ B-Tree索引:每一个叶子节点都包含指向下一个叶子节点的指针,从而方便叶子节点的范围遍历.B-Tree通常意味着所有的值都是按顺序存储的,并且每一个叶子页到根的距离相同,很适合查找范围数据. ★ ...
- Gitlab部署
前言 因部门业务整顿,需将原有的多部门共用的Gitlab环境遗弃,新建部门独立的Gitlab环境! 安装 CE版本安装操作:https://about.gitlab.com/install/#cent ...