站長資訊網
最全最豐富的資訊網站

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&amp;autoReconnect=true&amp;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,完成持續集成、部署。

贊(0)
分享到: 更多 (0)
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
日韩一区精品视频一区二区| 一本久久a久久精品综合夜夜| 多人伦精品一区二区三区视频| 久久亚洲精品无码观看不卡| 狠狠精品干练久久久无码中文字幕| 99久久精品毛片免费播放| 天堂一区二区三区精品| 精品国产一区二区三区四区| 中文国产成人精品久久app| 精品国产AV色欲果冻传媒| 久久精品亚洲一区二区 | 国产精品素人福利| 小辣椒福利视频精品导航| 日韩免费高清视频| 国产精品69白浆在线观看免费 | 国产精品视频免费观看| 99re热视频这里只精品| vvvv99日韩精品亚洲| 韩国精品一区二区三区无码视频| 国产精品一二三区| 久久亚洲精品专区蓝色区| 亚洲人精品午夜射精日韩| 日韩中文字幕一区| 久久久午夜精品福利内容| 国产在线精品一区二区不卡| 日韩一区二区三区射精| 久久久g0g0午夜无码精品| 99re热这里有精品首页视频| 久久精品无码av| 亚洲综合国产精品第一页| 国产伦精品一区二区三区四区 | 无码国模国产在线无码精品国产自在久国产| 97视频精品视频人人一二区| 久久久久精品国产亚洲AV无码| 91精品国产肉丝高跟在线| 97r久久精品国产99国产精| 久久精品国产WWW456C0M| 中文国产成人精品少久久| 国产成人精品国内自产拍| 精品视频一区二区| 在线亚洲精品视频|