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; 
}
相关推荐
charlie1145141912 小时前
嵌入式Linux驱动开发——新 API 字符设备驱动完整教程 - 从设备结构体到应用测试
linux·运维·驱动开发
飞Link3 小时前
2000 亿砸向算力:字节跳动 AI 基建跨越,后端与运维的“万亿 Token”生死战
运维·人工智能
SWAGGY..3 小时前
Linux系统编程:(二)基础指令详解
linux·运维·服务器
张文君4 小时前
上古世纪服务端编译安装AAEmu docker编译安装
运维·docker·容器
雾岛心情4 小时前
小铭邮件管理工具箱的界面(公司版)
运维·服务器·工具·o365·小铭邮件工具箱(公司版)
一只鹿鹿鹿4 小时前
数据库运维与管理规范(WORD)
运维·数据库
King's King5 小时前
自动化立体仓库系统项目施工要点
运维·自动化
资源分享助手5 小时前
三网H5小游戏战车向前冲搭建教程(Win+Linux)
linux·运维·服务器
无限进步_5 小时前
Linux权限模型:从rwx到粘滞位
linux·运维·服务器
閞杺哋笨小孩5 小时前
面向「机构按域名访问、同一套前端」的 Nginx 示例
nginx