1. 程式人生 > >CentOS 7.3 部署Tomcat + nginx 負載均衡

CentOS 7.3 部署Tomcat + nginx 負載均衡

行修改 .sh 安裝jdk 一個 wall 語言 rec image java環境

實施準備

技術分享圖片

關閉防火墻,安全性增強功能
準備要有三臺 centos
其中兩個centos 上搭建 tomcat8
另一臺上搭建nginx 還以一臺Windows 來進行訪問
systemctl stop iptables
systemctl stop firewalld
JDK:jdk1.8.0_171-amd64
Tomcat:apache-tomcat-8.5.31.tar.gz
在安裝Tomcat 之前要安裝JDK。JDK是 Sum 公司免費提供的軟件開發語言 在平臺兼容性方面,JDK 作為解釋字碼文件根據此調用操作系統,API 實現對應的功能的JAVA 虛擬機,與操作系統類型和平臺位數密切相關,因此存在不同類型的版本,而Tomcat 也具有上述特征。

共享掛在解壓

tar xzvh jdk-8u91-linux-x64.tar.gz -C /opt/安裝java 編譯器
mv jdk1.7.0_65/ /usr/local/java
vim /etc/profile.d/java.sh //建立Java.sh 腳本內如下
export JAVA_HOME=/usr/local/java          //設置Java根目錄//
export PATH=$PATH:$JAVA_HOME/bin          //在PATH環境變量中添加Java根目錄下的bin/子目錄// 
source java.sh             //java.sh腳本導入到環境變量,使其生效//
java -version //查看版本 
[root@bogon bin]# java -version
java version "1.8.0_171"
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)
此時java環境已經配置完成
java ---> class (可執行文件)
javac 進行編譯
java 文件名 直接運行

解壓tar xzvf apache-tomcat-8.5.31.tar.gz -C /opt/

解壓後生成的tomcat-8.5.31文件夾,將該文件夾移動到/usr/local/下把並改名為tomcat8
mv apache-tomcat-8.5.31/ /usr/local/tomcat8
啟動Tomcat
/usr/local/tomcat8/bin/startup.sh //啟動腳本
/usr/local/tomcat8/bin/shutdown.sh //關閉腳本
[root@bogon bin]# netstat -anpt | grep 8080 //顯示8080端口開起來了 就可以訪問
tcp6       0      0 :::8080                 :::*                    LISTEN      8707/java 
Tomcat 的主目錄為/usr/local/tomcat8
[root@bogon tomcat8]# ll
bin  //存放windows 或linux平臺上啟動和關閉Tomcat 腳本
conf //存放Tomcat服務器各種全局配置文件,其中最中要的是server.xml和web.xml
lib//存放Tomcat 允許需要的庫文件(JARS)
logs//存放Tomcat執行時LOG文件
webapps //Tomcat的只要Web發布目錄(包括應采用程序示列)
work//存放jsp 編譯後產生的class 文件

配置文件說明

[root@bogon conf]# pwd
/usr/local/tomcat8/conf
[root@bogon conf]# ll
catalina.policy //權限控制配置
catalina.properties //Tomcat 屬性配置文件
context.xml  //上下文配置文件
logging.properties //日誌log 相關配置文件
server.xml //主配置文件
tomcat-users.xml //manager-gui 管理用戶配置文件(Tomcat 安裝後提供一個manager-gui的管理頁面。通過配置該文件可以開啟訪問)
web.xml // tomcat 的servlet ,servlet-mappnig,filter MIME 等相關配置 

Tomcat 主配置文件說明

server.xml 為Tomcat 的主配置文件,通過配置該文件,可以修改Tomcat的啟動端口,網站目錄,虛擬主機,開啟https的重要功能
<?xml version="1.0" encoding="UTF-8"?>
//省略······
<Server port="8005" shutdown="SHUTDOWN">
//Tomcat 關閉端口,默認只對本機地址開放,可以通過本機訪問telnet 127.0.0.1 8005 訪問該端口,對Tomcat 進行關閉操作
//省略·····
<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
//Tomcat 啟動的默認端口為8080 可以更具需要修改
//省略······
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> 
//tomcat 啟動AJP1.3 鏈接時默認的端口號,課以根據需求進行修改
//·····省略···
//已下為Tomcat 定義虛擬主機的配置及日誌配置
<Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
        //下面是添加的 測試頁面
        <Context docBase="web/webapp1/" path="" reloadable="false">
        </Context>
        //docBase:web 應用的文檔基準目錄
        //reloadable 設置監視“類”是否變化
        //path""設置默認“類”

Tomcat Server 的組成部分說明

1)server 元素代表了整個 Catalina 的servlet 容器
2)service 是這樣一個集合:它由一個過著多個Connector 組成,以及一個Engine,負責處理所有Conector所獲得的客戶請求。
3)Connector 有一個Connector 在莫個指定端口上偵聽客戶請求,並將獲得的請求交給Engine來處理,從Engine 處獲得回應並且返回客戶。
TOmcat 有兩個經典的Connector,一個人偵聽賴在browser 的http 請求 一個偵聽來自其他WebServer 的請求
coyote htpp /1.1 connector 在端口8080 處偵聽賴在browser的http 請求
coyote JK2 Connector 在端口8009 處偵聽來自其他WebServer (Apache)的servlet/jsp代理請求
4)engine 下可以配置多個虛擬機 每個虛擬主機都有一個域名
當engine 獲得一個請求時 它把該請求匹配到莫個host 上
5)host代表一個虛擬主機每一個虛擬主機和某個網絡域名相匹配
6)context 一個Context 對應一個Web Application 由一個或者多個Servlet 組成

建立JAVA 的 web 站點

mkdir -pv /web/webapp1/
vim /web/webappl/index.jsp
<%@page language="java"import="java.util.*"pageEncoding="UTF-8"%>
<html>
 <head>
   <title>JSP testl page</tile>
 </head>
 <body>
<%out.println("Welcome to test site,http://www.testl.com");%>    //方便識別
</body>
</html>
修改Tomcat 的 server.xml 
vim conf/server.xml 主配置文件

關閉Tomcat 在重新啟動

/usr/local/tomcat8/bin/shutdown.sh //關閉腳本
/usr/local/tomcat8/bin/startup.sh //啟動腳本

通過瀏覽器就可以訪問了
技術分享圖片
技術分享圖片
技術分享圖片

nginx 設置
[其他的設置都一樣](http://blog.51cto.com/13660858/2129990)
useradd  -s /bin/false www //創建用戶組並管理
./configure --prefix=/usr/local/nginx --user=www --group=www --with-file-aio --with-http_stub_status_module --with-http_gzip_static_module --with-http_flv_module --with-http_ssl_module 
vim /usr/local/nginx/conf/nginx.conf 修改nginx 主配置文件
http {
    include       mime.types;
    default_type  application/octet-stream;
···省略
#gzip  on;
        upstream tomcat_server {
              server 192.168.204.182:8080 weight=1; //添加tomcat 
              server 192.168.204.129:8080 weight=1;//添加tomcat 
            }
···省略
 location / {
            root   html;
            index  index.html index.htm;
            proxy_pass http://tomcat_server; //添加
        }

保存退出 重啟服務·OK
關閉防火墻···
技術分享圖片
技術分享圖片

CentOS 7.3 部署Tomcat + nginx 負載均衡