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; 
}
相关推荐
wang_shu_mo_ran8 小时前
网络编程(一):网络编程初识
运维·服务器·网络
姚青&9 小时前
持续交付与 DevOps 体系
运维·devops
ton_tom9 小时前
设备驱动程序编程-Linux2.6.10-kdb安装-32位
linux·运维·服务器
Elastic 中国社区官方博客9 小时前
谁来评判评判者?在 Elasticsearch Workflows 中使用 LLM-as-a-Judge
大数据·运维·人工智能·elasticsearch·搜索引擎·ai·全文检索
SSO_Crown10 小时前
AI 招聘管理系统深度评测与选型指南
大数据·运维·人工智能
cft56200_ln11 小时前
gPTP Master 报文目的 MAC 地址
运维·服务器·网络
AOwhisky12 小时前
Linux(CentOS)系统管理入门笔记(第四期)——文件系统(下篇):文件与目录操作实战——cpmvmkdirrmln
linux·运维·笔记·centos·云计算·文件系统
XTIOT66613 小时前
CRPT 诚实标识采集落地技术实践:分工况硬件选型与合规数据标准化解决方案
大数据·运维·人工智能·嵌入式硬件·物联网
weixin_5050614513 小时前
线束中国探展专访|广东星坤:以高可靠互连突围,打造国产连接器全球化标杆
运维
想你依然心痛14 小时前
嵌入式容器:Docker与BalenaOS在边缘设备上的实践——容器运行时与OTA
运维·docker·容器