nginx 负载均衡的安装和部署

 四:配置nginx 负载均衡代理

在192.168.175.128机器上安装nginx 

nginx服务器 地址: flyfish13 (172.16.10.13)
nginx的编译安装:
配置依赖包:
yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel gd gd-devel 
 tar -zxvf nginx-1.23.2.tar.gz
 cd nginx-1.23.2/
./configure \
--prefix=/usr/local/nginx \
--http-proxy-temp-path=/usr/local/nginx/proxy_temp \
--http-fastcgi-temp-path=/usr/local/nginx/fastcgi_temp \
--with-http_ssl_module \
--with-threads \
--with-file-aio \
--with-http_ssl_module \
--with-http_realip_module \
--with-http_gzip_static_module \
--with-http_secure_link_module \
--with-http_stub_status_module \
--with-http_auth_request_module \
--with-http_random_index_module \
--with-http_image_filter_module \
--with-stream 
make && make install 
---------------------------------------------------
cd /usr/local/nginx/
sbin/nginx 
ps -ef |grep nginx

image

 

cd /usr/local/nginx/conf/
cp -ap nginx.conf nginx.conf.bak
vim nginx.conf
------------
user root root;
worker_processes auto;
worker_cpu_affinity auto;
worker_rlimit_nofile 65535;
 
daemon on;
error_log /usr/local/nginx/logs/error.log warn;
pid /usr/local/nginx/pid/nginx.pid;
 
events {
    use epoll;
    worker_connections  65535;
}
 
# 开启环境变量
env SPRING_PROFILES_ACTIVE=master;
 
http {
 
    include mime.types;
    default_type application/octet-stream;
 
    charset utf-8;
 
    log_format main '$remote_addr - $remote_user [$time_local] '
                    '"$request" $status $body_bytes_sent '
                    '"$http_referer" "$http_user_agent" '
                    '"$http_x_forwarded_for" $host $request_time $upstream_response_time $scheme';
 
    log_format main1 '$remote_addr|$remote_user|[$time_local]|$request|'
                     '$status|$upstream_status|$body_bytes_sent|$http_referer|'
                     '$http_user_agent|$request_time|$host|$upstream_addr|$request_body|$upstream_response_time';
 
    log_format main3 '$http_x_forwarded_for|$remote_user|[$time_local]|$request|'
                     '$status|$upstream_status|$body_bytes_sent|$http_referer|'
                     '$http_user_agent|$request_time|$host|$upstream_addr|$request_body|$upstream_response_time';
 
    log_format lua '$remote_addr|$remote_user|[$time_local]|$request|'
                     '$status|$body_bytes_sent|$http_referer|'
                     '$http_user_agent|$request_time|$host|$upstream_addr|$upstream_response_time';
 
    log_format    main2  escape=json
        '{"@timestamp":"$time_iso8601",'
        '"host":"$hostname",'
        '"server_ip":"$server_addr",'
        '"client_ip":"$http_x_forwarded_for",'
        '"xff":"$http_x_forwarded_for",'
        '"domain":"$host",'
        '"url":"$uri",'
        '"referer":"$http_referer",'
        '"args":"$args",'
        '"upstreamtime":"$upstream_response_time",'
        '"responsetime":"$request_time",'
        '"request_method":"$request_method",'
        '"status":"$status",'
        '"size":"$body_bytes_sent",'
        '"request_body":"$request_body",'
        '"request_length":"$request_length",'
        '"protocol":"$server_protocol",'
        '"upstreamhost":"$upstream_addr",'
        '"file_dir":"$request_filename",'
        '"http_user_agent":"$http_user_agent"'
     '}';
 
    #基础优化
    server_tokens off;
 
    sendfile on;
    tcp_nopush on;
    tcp_nodelay on;
 
    keepalive_timeout  65;
    keepalive_requests 8192;
 
    # gzip
    gzip on;
    gzip_min_length 1k;
    gzip_buffers 4 16k;
    gzip_comp_level 3;
    gzip_types text/plain application/javascript  text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/x-httpd-php image/jpeg image/gif image/png;
    gzip_vary on;
 
    client_body_timeout 300;
    client_header_timeout 300;
    send_timeout 600;
    reset_timedout_connection on;
 
    client_max_body_size 50m;
    #client_body_buffer_size 4096k;
    client_body_buffer_size 8192k;
 
    #client_header_buffer_size 4k;
    #large_client_header_buffers 4 64k;
    client_header_buffer_size 16k;
    large_client_header_buffers 8 256k;
 
    server_names_hash_bucket_size 512;
 
    proxy_connect_timeout 600;
    proxy_read_timeout 600;
    proxy_send_timeout 600;
 
    proxy_buffer_size  128k;
    proxy_buffers   8 128k;
    proxy_busy_buffers_size 256k;
 
    output_buffers 1 32k;
    postpone_output 1460;
 
    open_file_cache max=65535 inactive=60s;
    open_file_cache_valid    80s;
    open_file_cache_min_uses 1;
    open_file_cache_errors   on;
 
    # fastcgi set
    fastcgi_ignore_client_abort       on;
    fastcgi_connect_timeout           300;
    fastcgi_send_timeout              300;
    fastcgi_read_timeout              300;
    #fastcgi_buffer_size               4k;
    #fastcgi_buffers                   8 4k;
    #fastcgi_busy_buffers_size         8k;
    #fastcgi_temp_file_write_size      8k;
 
    fastcgi_buffer_size               64k;
    fastcgi_buffers                   4 64k;
    fastcgi_busy_buffers_size         128k;
    fastcgi_temp_file_write_size      128k;
 
    # fastcgi TEST
    fastcgi_cache_valid 200 302 1h;
    fastcgi_cache_valid 301 1d;
    fastcgi_cache_valid any 1m;
    fastcgi_cache_min_uses 1;
    fastcgi_cache_use_stale error timeout invalid_header http_500;
    include /usr/local/nginx/conf/vhost/*.conf;
 
}
-----------
cd /usr/local/nginx/conf
mkdir vhost
 
cd vhost
 
vim thanos.conf
 
-----
server {
     
      listen 80;
      server_name flyfish13;
location / {
 
     # auth_basic "please enter you password";
     # auth_basic_user_file /usr/local/nginx/htpasswd;
     proxy_pass http://thanos;
     proxy_set_header Host $host;
     proxy_set_header X-Real-IP $remote_addr;
}
    
}
 
upstream thanos {
     server 172.16.10.11:10903;
     server 172.16.10.12:10903;
}
 
-----
 
 
sbin/nginx -s stop
 
sbin/nginx -t
 
sbin/nginx

 

posted on 2026-03-01 09:35  luzhouxiaoshuai  阅读(14)  评论(0)    收藏  举报

导航