1. 程式人生 > >centos7 nginx安裝與配置實現負載均衡

centos7 nginx安裝與配置實現負載均衡

nginx是一個web伺服器,類似apache一樣,但是比apache效能更好,更快。還可以實現反向代理,和負載均衡,常用於構建web服務叢集的負載均衡。今天就來記錄一下,nginx的安裝與配置,實現負載均衡的作用。


首先,安裝
$ wget http://dl.Fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm  
(ps:網上有一些源是不完全的,只是安裝了簡單的nginx,其他一些依賴並沒有一起安裝,導致配置檔案不 全。請用這裡的連線,完整可用。)
$ rpm -ivh epel-release-latest-7.noarch.rpm
$ yum install nginx (直接yum安裝)


安裝就這麼簡單方便,安裝完成後,就可以使用systemctl來控制nginx的啟動了
$ systemctl enable nginx (加入開機啟動)
$ systemctl start nginx (開啟nginx)
$ systemctl status nginx (檢視狀態)


然後就是設定nginx的配置檔案,實現負載均衡。顧名思義就是將多個請求分發到不同的服務上,實現均衡的負載,減小單個服務的壓力。
$ vi /etc/nginx/nginx.conf  (修改配置檔案,全域性配置檔案)
-------------------------------------------------------------------------------
# For more information on configuration, see:
#   * Official English Documentation: http://nginx.org/en/docs/
#   * Official Russian Documentation: http://nginx.org/ru/docs/


user nginx;
worker_processes auto; (預設為自動,可以自己設定,一般不大於cpu核數)
error_log /var/log/nginx/error.log; (錯誤日誌路徑)
pid /run/nginx.pid; (pid檔案路徑)


# Load dynamic modules. See /usr/share/nginx/README.dynamic.
include /usr/share/nginx/modules/*.conf;


events {
    accept_mutex on; (設定網路連線序列化,防止驚群現象發生,預設為on)
    multi_accept on; (設定一個程序是否同時接受多個網路連線,預設為off)
    worker_connections 1024; (一個程序的最大連線數)
}


http {
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';


    access_log  /var/log/nginx/access.log  main;


    sendfile            on;
    # tcp_nopush          on; (這裡註釋掉)
    tcp_nodelay         on;
    keepalive_timeout   65; (連線超時時間)
    types_hash_max_size 2048;
    gzip on; (開啟壓縮)
    include             /etc/nginx/mime.types;
    default_type        application/octet-stream;


    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    # for more information.
    include /etc/nginx/conf.d/*.conf;


# 這裡設定負載均衡,負載均衡有多中策略,nginx自帶的有輪詢,權重,ip-hash,響應時間等粗略。
# 預設為平分http負載,為輪詢的方式。
# 權重則是按照權重來分發請求,權重高的負載大
# ip-hash,根據ip來分配,保持同一個ip分在同一臺伺服器上。
# 響應時間,根據伺服器都nginx 的響應時間,優先分發給響應速度快的伺服器。
集中策略可以適當組合
    upstream tomcat { (tomcat為自定義的負載均衡規則名)
        ip_hash; (ip_hash則為ip-hash方法)
        server 192.168.14.132:8080 weight=5; (weihgt為權重)
        server 192.168.14.133:8080 weight=3;


## 可以定義多組規則
}




    server {
        listen       80 default_server; (預設監聽80埠)
        listen       localhost; (監聽的伺服器)
        server_name  _;
        root         /usr/share/nginx/html;


        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;


        location / { ( /  表示所有請求,可以自定義來針對不同的域名設定不同負載規則 和服務)
  proxy_pass    http://tomcat; (反向代理,填上你自己的負載均衡規則名)
  proxy_redirect off; (下面一些設定可以直接複製過去,不要的話,有可能導致一些 沒法認證等的問題)
  proxy_set_header Host $host;
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          proxy_connect_timeout 90; (下面這幾個都只是一些超時設定,可不要)
          proxy_send_timeout 90;
          proxy_read_timeout 90;
        }
   # location ~\.(gif|jpg|png)$ { (比如,以正則表示式寫)  
   #  root /home/root/images;
   #  }


        error_page 404 /404.html;
            location = /40x.html {
        }


        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
    }


# Settings for a TLS enabled server.
#
#    server {
#        listen       443 ssl http2 default_server;
#        listen       [::]:443 ssl http2 default_server;
#        server_name  _;
#        root         /usr/share/nginx/html;
#
#        ssl_certificate "/etc/pki/nginx/server.crt";
#        ssl_certificate_key "/etc/pki/nginx/private/server.key";
#        ssl_session_cache shared:SSL:1m;
#        ssl_session_timeout  10m;
#        ssl_ciphers HIGH:!aNULL:!MD5;
#        ssl_prefer_server_ciphers on;
#
#        # Load configuration files for the default server block.
#        include /etc/nginx/default.d/*.conf;
#
#        location / {
#        }
#
#        error_page 404 /404.html;
#            location = /40x.html {
#        }
#
#        error_page 500 502 503 504 /50x.html;
#            location = /50x.html {
#        }
#    }


}


----------------------------------------------------------------------------------


更新配置後,可以過載配置生效,不需要重啟服務
$ nginx -s reload

相關推薦

centos7 nginx安裝配置實現負載均衡

nginx是一個web伺服器,類似apache一樣,但是比apache效能更好,更快。還可以實現反向代理,和負載均衡,常用於構建web服務叢集的負載均衡。今天就來記錄一下,nginx的安裝與配置,實現負載均衡的作用。 首先,安裝 $ wget http://dl.Fedor

nginx的基礎配置實現負載均衡

1,下載的Nginx的的及相關元件 先切換到根使用者下 [root @ localhost src] $ su root 密碼:                     

Nginx安裝配置負載均衡、反向代理、虛擬主機

Nginx安裝1. 生產環境是lInux,windows版也有,它是c語言開發2. Windows下安裝 直接解壓縮xx.zip格式的即可,點選xx.exe啟動3. Linux下安裝1)xx.tar.g

Nginx安裝以及簡單實現負載均衡

一. Centos7安裝Nginx1.下載壓縮包,上傳到/usr/local目錄,並解壓cd /usr/localtar -zxvf nginx-1.8.1.tar.gz2.在/usr/local目錄下

Nginx+Tomcat 配置實現負載均衡(附安裝包)

jsp color 一個 網頁 管理 密碼 bin pcr 解壓 實驗目的: Nginx 是一款輕量級的Web 服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器,並在一個BSD-like 協議下發行。 其特點是占有內存少,並發能力強,事實上nginx的

Nginx 服務器 之Nginxtomcat實現負載均衡

nobody 服務器 listen server events 本文講解我們如何使用Nginx做反向帶服務器,實現nginx與tomcat服務器集群做負載均衡。一、nginx與tomcat實現負載均衡1、在/usr/local/ngnix/conf 創建文件 nginx-tomcat.

Nginx服務器的安裝反向代理負載均衡

1.2 正常 單位 搜索 用戶訪問 開啟 優點 不同的 並發連接 Nginx服務器 一:什麽是Nginx? 我們生活的世界中,有的時候需要上網。我們可以瀏覽很多很多的網頁,這些網頁都是由一系列的程序組成,但是我們是否想過,這些程序存儲在什麽地方呢?沒錯,這些程序都是存儲在一

【技術小記 | 伺服器】阿里雲專有網路實現外網訪問 Nginx 安裝配置

歡迎大家訪問我的個人部落格:吳佳軼 | WuJiaYi,第一時間獲取最新的文章。 專有網路和經典網路的區別 相信很多人在購買阿里雲 ECS 雲伺服器的時候,對於 專有網路 和 經典網路 的網路型別看的不知所云。對於新手來說,不知道該如何選擇,很多人就

Centos7 fastdfs/nginx 安裝配置

參考文章 伺服器環境 CentOS7 IP: 192.168.219.21 FastDFS安裝與配置 安裝開發環境 yum groupinstall "Development Tools" "Server platform De

CentOS7 Nginx安裝配置反向代理

ges xxx 網絡 update bad blank 模塊 sendfile 找到 背景:   Mono (Mono JIT compiler version 5.4.0.201 )   jexus-5.8.2-x64(《CentOS7 安裝 jexus-5.8.2-x6

Linux中Nginx安裝配置詳解

cpan .net 語言 roo disable 方便 sbin wget 一個 安裝所需環境 Nginx 是 C語言 開發,建議在 Linux 上運行,當然,也可以安裝 Windows 版本,本篇則使用 CentOS 7 作為安裝環境。 上網配置: 如果安裝了cen

Nginx安裝配置:默認虛擬主機、用戶認證和域名重定向

Nginx安裝 虛擬主機 重定向 用戶認證 一、Nginx安裝 1、下載並解壓安裝包 [root@zhulinux-02 ~]# cd /usr/local/src/ [root@zhulinux-02 src]# wget http://nginx.org/download/nginx-1.

Nginx安裝配置

.exe http tps 下載安裝 nbsp 下界 win pan org 本篇只介紹在window環境下的安裝和配置 1.首先訪問Nginx官網 https://nginx.org/ 下載安裝包: 2.解壓到相應的目錄,比如我是d盤 然後修改目錄名字為nginx,進

STP的算法PVST+實現負載均衡

STP與PVST+負載均衡實驗項目:1>理解生成樹協議[STP]的工作原理2>配置PVST+實現負載均衡。實驗經過:一: 原理 :1.在實際網環境中,物理環路可以提高網絡的可靠性。但是在交換網絡中,當交換機接收到一個未知目的地的數據幀時,它會將這個數據中廣播出去。這樣的話在存在物理環路的交換網絡

<轉載>CentOS7 yum 安裝配置MySQL5.7

ins TP pre vra unit BE ket img 狀態 安裝環境:CentOS7 64位 MINI版,安裝MySQL5.7 1、配置YUM源 在MySQL官網中下載YUM源rpm安裝包:https://dev.mysql.com/downloads/repo/y

varnish 的安裝配置負載均衡

tex erro RM 3.0.5 pdf -m ocs 報錯 定義 系統環境:rhel6.5 server8.9安裝http服務server7 172.25.35.7server8 172.25.35.8server9 172.25.35.9[root@server7

Nginx+Tomcat 動靜分離實現負載均衡

ado 重啟 bad 很多 root 得到 上網 str 文件的 0.前期準備使用Debian環境。安裝Nginx(默認安裝),一個web項目,安裝tomcat(默認安裝)等。 1.一份Nginx.conf配置文件 Nginx+Tomcat 動靜分離實現負載均衡Nginx+

centos 6.x和7.x 下nginx安裝配置

一、安裝gcc(命令:yum install gcc)   備註:可以輸入gcc -v 查詢版本資訊,看系統是否自帶安裝 二、安裝pcre(命令: yum install pcre-devel) 三、安裝zlib 四、安裝openssl 綜合命令:   yum -y inst

nginx安裝配置、負責均衡、tomcat的動靜分離

nginx下載安裝 nginx下載地址:nginx下載地址 安裝編譯器和依賴庫 yum install gcc gcc-c++ zlib-devel pcre-devel openssl-devel openssl-libs openssl -y 配置: ./confi

1102_Centos下 Nginx安裝配置

Centos下 Nginx安裝與配置 Nginx是一款輕量級的網頁伺服器、反向代理伺服器。相較於Apache、lighttpd具有佔有記憶體少,穩定性高等優勢。它最常的用途是提供反向代理服務。 安裝 在Centos下,yum源不提供nginx的安裝,可以通過切換yum源的方法獲取安裝