Nginx 在 Linux 下安装与搭建集群

 

 

 

搭建集群图例

  • 集群搭建图如下,为了简单一点,使用一个Nginx服务器+两个Tomcat服务器,省略数据库部分:

环境说明

  • Linux 为 CentOS 7.2 发行版 + Java jdk 1.8 + Tomcat 1.8 + Nginx 1.15

Linux 下安装 Nginx

下载nginx的tar包

  1. 复制代码
    //下载tar包
    wget http://nginx.org/download/nginx-1.13.7.tar.gz
    tar -xvf nginx-1.13.7.tar.g

安装gcc依赖
Nginx与Redis一样,都是C语言开发的,所以都需要在Linux上使用C语言编译后才能使用,所以得先安装用于编译的c环境
安装Redis时,只需要安装下面第一项的"yum install gcc-c++"即可;nginx则需要安装下面4项
yum install -y gcc-c++
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel

 

 


Nginx 编译
先进入 nginx 减压后的目录 ,执行“./configure”
编译完成后,这个目录下会多一个“Makefile”文件


然后执行"make"命令进行编译,安装Redis时也有"make"操作

Nginx 安装
进入nginx减压后的目录,即上面的编译位置执行安装命令:make PREFIX=/usr/local/nginx install
PREFIX:指定安装到哪个目录下,否则默认安装时很容易找不到地方
在减压后的 nginx-1.15.0下执行安装命令"make PREFIX=/usr/local/nginx install",然后就有了安装后的目录“nginx”

 

Nginx 操作
进入nginx安装目录下的sbin目录:
测试nginx配置文件是否配置正确:"./nginx -t"
启动nginx:“ ./nginx ”
关闭nginx:"./nginx -s stop",也可以采用直接杀进程的方式
退出命令:“./nginx-s quit”,等程序执行关闭后,建议使用此命令。

动态加载配置文件:"./nginx -s reload",可以在不关闭nginx的情况下更新配置文件,使其生效。

开启防火墙端口
虽然上面启动了nginx,但是默认除了linux系统自身的浏览器可以访问之外,其它的电脑还是访问不了,因为CentOS的防火墙默认阻止了22以外的所有端口
可以使用CentOS 7.2系统自带firewall命令进行开启80端口,使用命令:  firewall-cmd --zone=public --add-port=80/tcp --permanent

  • firewall-cmd --reload 
    • firewall-cmd --zone=public --list-ports

    浏览器访问

    Nginx 集群

  • Nginx 集群

    • 集群所有的操作与在Windows下完全一样,这里只做简要描述,可以参考《Nginx 下载与 Windows下搭建集群》

    准备web应用

    • 仍然使用《Nginx 下载与 Windows下搭建集群》中的nginxApp

    准备tomcat1

  • apache-tomcat-8_1的server.xml配置文件采用默认值,不做任何修改

准备tomcat2

  • 修改apache-tomcat-8_2的server.xml配置文件

开放防火墙端口
默认情况下,这两个tomcat的端口防火墙是没有开放的,如果需要从windows电脑上直接访问CentOS中Tomcat服务器,则需要开启8080,8090端口
而现在使用nginx反向代理,用户不再需要直接访问Tomcat了,而是访问Nginx服务器,再由nginx转发到tomcat,所以此时不开启8080、8090端口也没事了
永久开启8090端口:firewall-cmd --zone=public --add-port=8090/tcp –permanent
刷新防火墙:firewall-cmd –reload
查看端口开放状态:firewall-cmd--zone=public --list-ports


Nginx设置
设置与windows完全也一样

 

  • 修改nginx.conf文件

浏览器访问:http://192.168.58.129

原文地址:https://www.cnblogs.com/youqc/p/10278535.html