nginx反向代理、负载均衡(二)

    xiaoxiao2022-07-02  96

    1、购买四台服务器

    nginx反向代理服务器数据库服务器jar包服务器1jar包服务器2

    2、数据库服务器配置

    使用mysqldump将本地数据库导出,miaosha.sqlscp miaosha.sql root@IP地址:/tmp/数据库服务器首先创建miaosha数据库 再导入miaosha.sql mysql>source /tmp/miaosha.sql连接到mysql服务器上修改系统相关的配置,将对应的用户授予远程连接及后续的所有权限,即添加两个jar包服务器权限 show databases; use mysql; select host,user,password from user; grant all privileges on *.* to root@'%' identified by "password"; flush privileges; select host,user,password from user;

    3、jar包服务器配置

    两个jar包服务器java环境安装,使用yum 查看是否有安装 yum list installed |grep java 查看支持的java包 yum -y list java* 安装 yum -y install java-1.8.0-openjdk* 最后进行 java -version 验证重新上传应用程序的jar包修改application.properties的配置,将对应的分布式的数据库连接url加入配置文件中最后启动,访问验证

    4、nginx负载均衡反向代理器的云端部署

    直接上openresty的组合安装包先行条件,需要在linux安装pcre,openssl,gcc,curl等 yum install pcre-devel openssl-devel gcc curl下载openresty 下载页面 http://openresty.org/cn/download.html下载后tar -xvzf openresty**.tar.gz解压后进入./configuremakemake install安装完成,nginx默认安装在 //usr/local/openresty/nginx目录下修改本地和阿里云服务器的host路径,以便于统一访问 阿里云服务器ip -> miaoshaserver sudo vim /etc/hosts

    5、nginx静态资源部署

    进入nginx根目录下的html下,然后新建resources目录用于存放前端静态资源设置指向resources目录下的location可以访问对应的html下的静态资源文件 location /resources/ { alias /usr/local/openresty/nginx/html/resources/; index index.html index.htm; }

    6、nginx动态请求反向代理 反向代理配置,配置一个backend server,可以用于指向后端不同的server集群,配置内容为server集群的局域网ip,以及轮训的权重值,并且配置一个location,当访问规则命中location任何一个规则的时候则可以进入反向代理规则

    upstream backend_server{ server 内网id weight=1; server 内网id weight=1; } location / { proxy_pass http://backend_server; proxy_set_header Host $http_host:$proxy_port; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }

    7、tomcat动态服务的acc日志 验证开关 acc日志开关,在jar包服务器的application.properties文件中追加tomcat设置

    #日志开关 server.tomcat.accesslog.enabled=true #日志格式 server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D server.tomcat.accesslog.directory=输出日志路径

    7、nginx服务器和jar包服务器开始长连接 采用1.1的http协议, Connection “”

    upstream backend_server{ server 内网id weight=1; server 内网id weight=1; keepalive 30; } location / { proxy_pass http://backend_server; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_http_version 1.1; proxy_set_header Connection ""; }
    最新回复(0)