Ubuntu安装nginx并配置负载均衡

概述

1. 系统环境

Ubuntu 20.04.2 LTS 桌面版(192.168.229.128)
Ubuntu 20.04.2 LTS 服务器版(192.168.229.129)

2. 本文项目目标

需要配置两台服务器,IP地址分别是192.168.229.128,192.168.229.129,都安装nginx,两台服务器的81端口运行项目页面(用于模拟网站页面,可以替换为项目IP和端口),在192.168.229.128的80端口上配置负载均衡,通过192.168.229.128访问两台服务器的页面。
Ubuntu安装nginx并配置负载均衡_第1张图片

安装nginx

1. 下载安装

sudo apt-get install nginx

Ubuntu安装nginx并配置负载均衡_第2张图片

如果安装成功,出现下面的画面:

2. 测试安装是否成功

sudo nginx -t

如果安装成功,出现下面的画面:
在这里插入图片描述
在浏览器中输入ip地址,可以看到nignx的页面:
Ubuntu安装nginx并配置负载均衡_第3张图片

3. 重启Nginx

# 下面两句的效果一样,都是重启
sudo service nginx restart
# sudo systemctl restart nginx

4. 查看nginx正在运行的进程,如果有就kill掉

# 查询nginx进程号
ps -ef |grep nginx

# 以下都可以停止进程
#nginx从容停止命令,等待所有请求结束后关闭服务
sudo kill -QUIT nginx主进程号
# 快速停止命令,立即关闭nginx进程
sudo kill -TERM nginx主进程号
# 以上两个停止命令如果不管用,可以强制停止
sudo kill -9 nginx主进程号

Ubuntu安装nginx并配置负载均衡_第4张图片

5. 删除nginx,-purge包括配置文件

sudo apt-get --purge remove nginx

Ubuntu安装nginx并配置负载均衡_第5张图片

配置Nginx

1. nginx的配置文件位置

最新版本nginx配置是由4个文件构成:

  1. conf.d:用户自己定义的conf配置文件
  2. sites-available:系统默认设置的配置文件
  3. sites-enabled:由sites-available中的配置文件转换生成
  4. nginx.conf:汇总以上三个配置文件的内容,同时配置我们所需要的参数

Ubuntu安装nginx并配置负载均衡_第6张图片

2. 修改nginx默认web服务的端口

nginx默认配置文件是/etc/nginx/sites-enabled/default
修改其端口(修改其端口是为了不让该服务占用80端口,实际项目上使用的时候也需要改端口):

sudo vim /etc/nginx/sites-enabled/default

Ubuntu安装nginx并配置负载均衡_第7张图片
保存修改后的文件,重启nginx服务:

sudo systemctl restart nginx

在这里插入图片描述
检查默认的80端口是否能访问:
Ubuntu安装nginx并配置负载均衡_第8张图片
80端口已经访问不到了。

检查81端口是否可以访问:
Ubuntu安装nginx并配置负载均衡_第9张图片
81端口访问正常。

要将 192.168.229.128, 192.168.229.129两台服务器的ningx默认端口都改了。

3. 修改nginx的默认页面,做上标记,便于区分

nginx默认页面文件为/var/www/html/index.nginx-debian.html, 编辑之。

sudo vim /var/www/html/index.nginx-debian.html

192.168.229.128服务器上增加这样一行:
Ubuntu安装nginx并配置负载均衡_第10张图片
192.168.229.129服务器上也增加这么一行,不过文本中的IP地址由128改为129:
Ubuntu安装nginx并配置负载均衡_第11张图片
保存关闭之后分别检查:
Ubuntu安装nginx并配置负载均衡_第12张图片
Ubuntu安装nginx并配置负载均衡_第13张图片

4. 配置负载均衡

在129.168.229.128服务器上配置负载均衡。
有关负载均衡方法的说明,请参考:https://www.cnblogs.com/1214804270hacker/p/9325150.html

/etc/nginx/conf.d/目录下新建文件,命名为nginx.conf(可以为任意*.conf,即文件名可以任意,后缀名必须为.conf)

sudo /etc/nginx/conf.d/nginx.conf

填写内容如下:

upstream load_banance {
     #负载均衡方法,可选:least_conn,ip_hash等,不填写则为轮询方式;
     # 服务器的访问地址,最好使用服务器的私有IP以获得更好的性能和安全性。
     server 192.168.229.128:81 weight=1;
     server 192.168.229.129:81 weight=2;
}
server {
		# 负载均衡的监听端口
        listen 80 default_server;
        listen [::]:80 default_server;
        # 负载均衡服务器的服务名称,没有时填写 _
        server_name _;

        location / {
        		# 代理转发,注意这个load_banance要与 upstream 后的字符串相同
                proxy_pass http://load_banance;
        }
}

Ubuntu安装nginx并配置负载均衡_第14张图片
保存后重启nginx服务。

sudo systemctl restart nginx

5. 测试负载均衡

在浏览器中输入192.168.229.128,刷新页面后发现来自 192.168.229.128服务器的页面和来自192.168.229.129服务器的页面轮番出现,且129页面出现的概率是128页面的两倍(填写两个服务器权重的时候,weight值不同)。
Ubuntu安装nginx并配置负载均衡_第15张图片
Ubuntu安装nginx并配置负载均衡_第16张图片

参考文献

https://www.nginx.cn/4996.html
https://www.cnblogs.com/1214804270hacker/p/9325150.html

你可能感兴趣的:(Linux,linux,nginx,负载均衡)