阿里云双机 +nginx 负载均衡配置

本贴最后更新于 2430 天前,其中的信息可能已经时移世易

1. 网络拓扑图

目前:

修改成:

目前共有 2 台 ECS. 在每天 ECS 上安装 Nginx 与 Tomcat 组成一个集群.

2. 使用 Nginx 的目的

目的如下:

1. 为 Tomcat 分流,降低后台压力。

2. 方便对不同 URL 设置不同缓存时间,降低网络流量

3. 实现其他功能(未来可以针对指定 URL 限速,避免雪崩)

2.1. 分流

Nginx 处理静态资源请求能力远远超过 Tomcat。静态资源,如:图片、JS、CSS 可以直接由 Nginx 返回给客户端。其它通过 proxy_pass 模块转发给 Tomcat 处理。这样可以提高系统并发数,与吞吐量。

2.2. 设置缓存时间

在 Nginx 中,可以对静态资源设置客户端缓存时间。将资源缓存到客户端,减少客户端请求次数,以降低系统网络流量。

2.3. 其它功能

Nginx 上其它可用模块。比如

Ø gzip 模块,对静态资源做 gzip 压缩,降低网络流量;

Ø httpLimit 模块,可以设置阈值,限制并发数。避免雪崩

Ø HttpAccess 模块,可以做访问限制。比如:只允许管理员通过制定 IP 登陆管理系统。

Ø SSL 模块,在 Nginx 上配置 https.

3. 实施

目前两台 ECS 上已经部署好了 Tomcat 环境。还需要:

1. 调整 Tomcat 运行用户

2. 安装配置 Nginx

3. 调整 SLB。

3.1. 调整 Tomcat 运行用户

目前 Tomcat 使用 root 用户运行,具有安全隐患。建议新创建用户:webapp 归属组:webapp,

设置完毕后,调整 systemd.

在 systemd 中需要设置用户、ReadOnlyDirectories、ReadWriteDirectories。

3.2. 安装配置 Nginx

Nginx 版本: https://openresty.org/download/openresty-1.11.2.3.tar.gz, 下载并编译安装.

安装目录: /opt/server/

|

yum install -y perl openssl-devel pcre-devel

下载

curl -O https://openresty.org/download/openresty-1.11.2.3.tar.gz

编译安装

mkdir -p /opt/openresty

tar xf openresty-1.11.2.3.tar.gz

cd openresty-1.11.2.3

./configure \

--prefix=/opt/openresty \

--with-luajit \

--user=nobody \

--group=nobody \

--with-http_realip_module \

--with-http_addition_module \

--with-http_sub_module \

--with-http_gzip_static_module \

--with-http_auth_request_module \

--with-http_stub_status_module \

--with-stream \

&& gmake && gmake install \

|

之后, 在 systemd 中配置开机启动。

Nginx.conf 配置追加:

实现: 动静分离.

注意: 关于缓存时间。

如果更新静态文件后,URL 里添加版本号或者替换文件名,可以将缓存时间放长。如果没有,建议将缓存时间缩短,比如 2 小时。避免更新后,客户端上时间不见效。

3.3. 调整 SLB

目前 SLB 的 80 端口指向了 2 台 ECS 的 8080 端口。ECS 安装完 Nginx 后,Nginx 占用 80 端口。需要将 SLB 的 80 端口映射到 2 台 ECS 的 80 端口上。

3.4. Systemd 配置

参照附件: tomcat.service 与 nginx.service.

  • 持续集成

    持续集成(Continuous Integration)是一种软件开发实践,即团队开发成员经常集成他们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。

    15 引用 • 7 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...