ubuntuNginx反向代理和负载均衡

配置两台服务器确保nginx启动并且可以访问

配置nginx代理服务器

可以选择直接安装或者编译安装nginx

root@ubuntu:~# apt install libgd-dev #安装依赖

root@ubuntu:~# apt update

root@ubuntu:~# apt install libpcre3 libpcre3-dev

root@ubuntu:~# apt-get install openssl libssl-dev

root@ubuntu:~# apt intsall make

root@ubuntu:~# wget http://nginx.org/download/nginx-1.22.1.tar.gz #安装压缩包

root@ubuntu:~# tar -zvxf nginx-1.22.1.tar.gz #解压

root@ubuntu:~# cd nginx-1.22.1 #进入nginx目录

bash 复制代码
./configure --prefix=/www/env/nginx \   编译并指定自己的目录
--with-pcre \
--with-http_ssl_module \
--with-http_v2_module \
--with-http_realip_module \
--with-http_addition_module \
--with-http_sub_module \
--with-http_dav_module \
--with-http_flv_module \
--with-http_mp4_module \
--with-http_gunzip_module \
--with-http_gzip_static_module \
--with-http_random_index_module \
--with-http_secure_link_module \
--with-http_stub_status_module \
--with-http_auth_request_module \
--with-http_image_filter_module \
--with-http_slice_module \
--with-mail \
--with-threads \
--with-file-aio \
--with-stream \
--with-mail_ssl_module \
--with-stream_ssl_module \

预编译完成后

使用make编译

bash 复制代码
nginx常用命令 常用命令 
nginx -s reload 修改配置后重新加载生效 
nginx -s stop 快速停止nginx 
nginx -s start 启动nginx 
nginx -s quit 完整有序的停止nginx 
nginx -v 查看nginx的版本 
nginx -V 查看版本和nginx的配置选项 
nginx -t -c /path/to/nginx.conf 测试nginx配置文件是否正确 
nginx -s reopen 重新打开日志文件

进入配置文件进行配置编写

bash 复制代码
 upstream nginx_boot{
                              #weight权重:权重值越大被分配到的次数就会增多
        server 192.168.182.131 weight=100 max_fails=2 fail_timeout=30s;
        server 192.168.182.134 weight=100 max_fails=2 fail_timeout=30s;
    }

    server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
        #    root   html;
       #     index  index.html index.htm;
                 root   html;
        # 配置一下index的地址,最后加上index.ftl。
                 index  index.html index.htm index.jsp index.ftl;
                 proxy_set_header Host $host;
                 proxy_set_header X-Real-IP $remote_addr;
                 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        # 请求交给名为nginx_boot的upstream上
                 proxy_pass http://nginx_boot;

        }

测试


ip_hash 固定转发 每个访问客户端会固定访问一个后端服务器

bash 复制代码
upstream nginx_boot { 
		ip_hash; 
		server 192.168.182.131;
		server 192.168.182.134; 
}

最少连接 web请求会被转发到连接数最少的服务器上

bash 复制代码
upstream nginx_boot { 
		least_conn; 
		server 192.168.182.131;
		server 192.168.182.134; 
}
相关推荐
AI浩14 小时前
【Labelme数据操作】LabelMe标注批量复制工具 - 完整教程
运维·服务器·前端
sunxunyong14 小时前
doris运维命令
java·运维·数据库
Guheyunyi14 小时前
智慧消防管理系统如何重塑安全未来
大数据·运维·服务器·人工智能·安全
雾削木17 小时前
k230 Pyhton三角形识别
运维·服务器·网络·stm32·智能路由器
大连好光景19 小时前
Python打日志
运维·python·运维开发
二哈喇子!19 小时前
openFuyao 容器平台快速入门:Nginx 应用部署全流程实操
运维·nginx·openfuyao
齐鲁大虾20 小时前
国产 Linux 系统核心优缺点与适用场景
linux·运维·服务器
雨大王51220 小时前
工业生产执行系统(MES)在汽车制造行业的应用案例
运维·人工智能
Awkwardx20 小时前
Linux网络编程—数据链路层
linux·运维·网络
树下水月20 小时前
docker 启动后 如何通过对应的进程 找docker-compose.yaml 编排文件
运维·docker·容器