nginxで負荷分散を行う方法

nginxで負荷分散を行う方法

サーバーをロードバランサーと Web サーバーとして同時に使用する必要があります。

これが私のウェブサイトの nginx 設定です:

upstream load_balancer {
    least_conn;
    server localhost;
        #server srv2.example.com;
}

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    server_name localhost;

    root /var/www;

    index index.php index.html index.htm;

    location / {
        proxy_pass http://load_balancer;
    }

    location ~* \.php$ {
        fastcgi_index   index.php;
            fastcgi_pass    unix:/var/run/php5-fpm.sock;
            include         fastcgi_params;
            fastcgi_param   SCRIPT_FILENAME    $document_root$fastcgi_script_name;
            fastcgi_param   SCRIPT_NAME        $fastcgi_script_name;
    }
}

1 台のサーバーをロード バランサーと Web サーバーとして同時に使用することは可能ですか? どのようにすればよいですか?

よろしくお願いします!

答え1

はい、可能です。

別のポートで仮想ホストを作成するだけです。

(Load Balancer [Port 80] + Virtualhost [Port 81])したがって、実際には 1 つのサーバーが 2 つのポートをリッスンし、1 つは Web ページを提供し、もう 1 つは負荷分散を行うことになります。

次に、サーバー上のウェブサイトをロードバランサーにリンクするときに、IPを使用します。localhost:81

次のように入力してローカル Web サイトを作成できます。

sudo nano /etc/nginx/sites-available/example.com

その後貼り付けます(必要に応じて編集する必要がある場合があります)。

 server {
        listen   81;

        root /var/www/example.com/public_html;
        index index.html index.htm;

        server_name example.com;
}

お役に立てれば!

関連情報