Nginx部署tomcat/wildfly集群负载均衡
1.调度器配置:
docker run -p 80:80 --name nginx --restart=always -v /root/nginx/www/:/usr/share/nginx/html -v /root/nginx/conf/conf.d:/etc/nginx/conf.d -v /root/nginx/logs:/var/log/nginx -v /etc/localtime:/etc/localtime -d nginx
将写好的default.conf的nginx配置文件写好,详见文件其中包括两台后端服务器;
放到conf.d目录,挂载到容器的/etc/nginx/conf.d;
将容器内的日志/var/log/nginx映射出到 宿主机;
将宿主机时间映射到容器内;
2.后端服务器配置:
1)搭建nfs服务器共享
后端服务器挂载该 nfs服务器资源
2)搭建mysql57数据库服务器
3)部署应用服务(tomcat8)
docker run -d -p 8080:8080 -v /opt/server.xml:/usr/local/tomcat/conf/server.xml -v /opt/tomcat应用项目:/usr/local/tomcat/webapps/应用项目名 -v /etc/localtime:/etc/localtime -v /opt/应用项目/logs:/logs -v /opt/应用项目/applog:/usr/local/tomcat/logs --name 应用项目 --restart=always tomcat:8
将tomcat配置文件server.xml文件挂载到容器;
将应用挂载到容器中的/usr/local/tomcat/webapps;
将本地时间映射到容器;
将日志映射到宿主机相应目录;
--restart=always:总是重启,便于重启主机后不能自行启动;
4)部署应用服务容器方式( jboss/wildfly)
先采用容器模式部署
docker run -d -p 80:8080 -p 9990:9990 -u root -v /etc/localtime:/etc/localtime
-v /opt/jboss/standalone.xml:/opt/jboss/wildfly/standalone/configuration/standalone.xml
-v /opt/jboss/module/mysql-connector.jar:/opt/jboss/wildfly/standalone/deployments/mysql-connector.jar
--name wildfly jboss/wildfly
将写好的 wildfly的配置文件 standalone.xml文件挂载到容器目录;
将jdbc 驱动 jar包放入容器内,以便建立jdbc 数据源使用;
编辑standalone.xml文件,
在<subsystem xmlns="urn:jboss:domain:datasources:2.0 标签内添加datasources及driver:
例如:
<datasource jndi-name="java:jboss/datasources/MysqlDs" pool-name="MysqlDs" enabled="true" use-ccm="false">
<connection-url>jdbc:mysql://ip地址及端口/数据库名称?useSSL=true&autoReconnect=true&failOverReadOnly=false</connection-url>
<driver>mysql-connector.jar</driver>mysql-connector.jar为启动容器时挂载到deployments目录的jar包
<security>
<user-name>*****</user-name>
<password>******</password>
</security>
注意修改其中的参数( url db_name username password)
3.session问题:
在nginx负载调度器中配置 ip_hash算法,它会根据ip地址去找后端服务器,session会根据ip保持;
4.采用Jenkins集成部署war包到wildfly
1)部署Jenkins
用容器方式:
docker run -d -p 8002:8080 -u root
-v /etc/profile:/etc/profile
-v /usr/local/java:/usr/local/java
-v /usr/local/ant:/usr/local/ant
-v /root/jenkins:/var/jenkins_home
--name jenkins --restart=always jenkins/jenkins
将ant及java及环境文件挂到jenkins容器中;
2)启动Jenkins及部署
添加插件
系统管理-插件管理-未安装-jboss management plugin 、wildfly
系统管理-全局工具配置-新增ant
系统管理-全局工具配置-新增java
新建项目:源码管理:https://svn服务器IP地址/相关代码目录
构建环境:with ant :ant、java
构建:ant
增加构建步骤:
Deploy War to Wildfly,此处可加入多台需要部署的后端服务器,本文有两台后端服务器;
war包所在目录:
Hostname:ip地址
Port:9990
User name:admin
Password:admin
构建项目
出现错误:FATAL: Unable to initialize command context.
解决办法:
将/Jenkins/ plugins/wildfly-deployer/WEB-INF/lib/wildfly-cli-8.2.1.Final.jar
/Jenkins/plugins/wildfly-deployer/WEB-INF/lib/wildfly-deployer.jar两个文件拷贝至
/Jenkins/war/WEB-INF/lib目录下,重新构建,成功。
3)重复部署
出现错误java.lang.OutOfMemoryError: Java heap space
在wildfly的standalone.sh文件中加入
JAVA_OPTS="-Xms256m
-Xmx2048m
-XX:NewSize=256m
-XX:MaxNewSize=512m
-XX:PermSize=128m
-XX:MaxPermSize=256m
-XX:+UseConcMarkSweepGC
-XX:+CMSPermGenSweepingEnabled
-XX:+CMSClassUnloadingEnabled
-Djboss.platform.mbeanserver"
问题解决
5.完成了nginx作为调度器,后端有两台tomcat或者wildfly的服务器集群部署,同时在调度器上部署Jenkins,完成持续集成、部署。
Nginx部署tomcat/wildfly集群负载均衡的更多相关文章
- 图文解说:Nginx+tomcat配置集群负载均衡
图文解说:Nginx+tomcat配置集群负载均衡 博客分类: appserver nginxTomcatUbuntuLinux网络应用 作者:niumd Blog:http://ari.iteye ...
- Apache+Tomcat +mod_proxy集群负载均衡及session
序言: 在玩Apache+Tomcat +mod_jk集群负载均衡及session的时候发现,还有一种方式可以实现,就是网上各位大牛们说的mod_proxy反向代理. 实在弄的我的知识细胞洋洋.实 ...
- 转】Nginx+tomcat配置集群负载均衡
原博文出自于:http://blog.csdn.net/bruce_6/article/details/38228299 感谢! 相信很多人都听过nginx,这个小巧的东西慢慢地在吞食 ...
- .net core 跨平台开发 微服务架构 基于Nginx反向代理 服务集群负载均衡
1.概述 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客 ...
- windows+nginx+tomcat实现集群负载均衡(生产环境必读)
概念理解(原文链接) 集群:多个tomcat服务器运行同一个web服务就能称之为集群 负载均衡:apache按照一定方式将不同的客户端访问分配到不同的tomcat服务器 简单负载均衡实现: 网上参考了 ...
- Nginx+tomcat配置集群负载均衡
开发的应用采用F5负载均衡交换机,F5将请求转发给5台hp unix服务器,每台服务器有多个webserver实例,对外提供web服务和socket等接口服务.之初,曾有个小小的疑问为何不采用开源的a ...
- 【nginx+tomcat集群】Nginx1.12.2+Tomcat7集群+负载均衡+Session共享
今天想着将项目优化一下,就想的实现集群分布,在本机测试:利用nginx+tomcat实现 通过上一篇博客(http://www.cnblogs.com/qlqwjy/p/8535235.html),N ...
- ngnix apache tomcat集群负载均衡配置
http://w.gdu.me/wiki/Java/tomcat_cluster.html 参考: Tomcat与Apache或Nginx的集群负载均衡设置: http://huangrs.blog. ...
- Apache + Tomcat集群 + 负载均衡
Part I: 取经处: http://www.ramkitech.com/2012/10/tomcat-clustering-series-simple-load.html http://blog ...
随机推荐
- Linux入门-7 Linux管道、重定向以及文本处理
Linux管道.重定向以及文本处理 1 Linux多命令协作:管道及重定向 管道和重定向 2 Linux命令行文本处理工具 文件浏览 基于关键字搜索-grep 基于列处理文本-cut 文本统计-wc ...
- 【转】】Vue项目部署tomcat,刷新报错404解决办法
转自[https://blog.csdn.net/g631521612/article/details/82835518] 解决方式: - 在tocmat的webapps下的项目中创建WEB-INF文 ...
- 第一个c程序和vs2017 在打开MFC rc文件时找不到rcdll.dl
第一个c程序 #include<stdio.h> int main() { ; ; printf_s("请输入两个数字:"); scanf_s("%d,%d& ...
- ArcGIS的网络分析
ArcGIS的网络分析分为两类:传输网络(Network Analyst)和效用网络(Utility Network Analyst). 一.从应用上来考虑: 1.传输网络常用于道路.地铁等交通网络分 ...
- Azure 负载均衡器的多个 VIP
您现在访问的是微软AZURE全球版技术文档网站,若需要访问由世纪互联运营的MICROSOFT AZURE中国区技术文档网站,请访问 https://docs.azure.cn. Azure 负载均衡器 ...
- December 20th 2016 Week 52nd Tuesday
With the wonder of your love, the sun above always shines. 拥有你美丽的爱情,太阳就永远明媚. To accept the love from ...
- source insight设置问题 [问题点数:20分,结帖人leecapacity]
http://cache.baiducontent.com/c?m=9f65cb4a8c8507ed4fece763104687270e54f7327d818c027fa3cf1fd5791d1c05 ...
- c++计算器后续(5)
自娱自乐: 大概是重新开始玩qt,然后MFC和第四步附加的作业大概不会去玩了.以上. QT相关: 阶段一: 原来作业里举了qt和mfc这两个做界面的东西,网上都说qt容易上手,学了mfc再来看qt简直 ...
- web自动化_浏览器驱动chromedriver安装方法(适用RF框架/Selenium/Appium)
在进行UI自动化时,打开浏览器是第一步,这就必须要安装浏览器的驱动,chrome浏览器需要安装chromedriver,下载地址:http://chromedriver.storage.googlea ...
- 实用的 CSS 小片段
看了 30 Seconds CSS,有了许多收获,所以写下了这篇文章,算是收藏一些代码小片段,留作后用. 一.手写 Loading 动画 (1)弹性加载动画 CSS 代码如下: .bounce-loa ...