Web サイトの可用性を高めるための Nginx マルチサーバー クラスター構成

王林
リリース: 2023-07-06 17:55:37
オリジナル
2222 人が閲覧しました

Web サイトの可用性を高めるための Nginx マルチサーバー クラスター構成

最新のインターネット アプリケーションでは、Web サイトの高可用性を確保することが重要です。一般的なアプローチは、複数のサーバーのクラスターを構成して負荷を分散し、Web サイトの可用性とパフォーマンスを向上させることです。この記事では、Nginx を使用して複数のサーバーのクラスターを構成し、負荷分散とフェイルオーバーを実現する方法を紹介します。

  1. Nginx のインストールと構成

まず、Nginx をすべてのサーバーにインストールする必要があります。次のコマンドを使用してインストールできます:

sudo apt-get update sudo apt-get install nginx
ログイン後にコピー

インストールが完了したら、Nginx の基本構成を実行する必要があります。 Nginx のメイン設定ファイルnginx.conf(通常は/etc/nginx/nginx.confにあります) を開き、テキスト エディタを使用して編集します。主な設定項目は次のとおりです。

http { upstream backend { server server1.example.com; server server2.example.com; server server3.example.com; } server { listen 80; server_name example.com; location / { proxy_pass http://backend; } } }
ログイン後にコピー

上記の設定では、upstream backendはバックエンド サーバーのリストを定義します。実際の状況に応じて、server1.example.comおよびserver2.example.comを実際のサーバーのドメイン名または IP アドレスに置き換えることができます。serverブロックで、proxy_passディレクティブを通じてリクエストをbackendバックエンド サーバー クラスターに転送します。

  1. 負荷分散の構成

負荷分散を実現するために、Nginx はさまざまな負荷分散アルゴリズムを提供します。一般的なものには、ポーリング (デフォルト)、加重ポーリング、IP ハッシュなどが含まれます。upstream backendブロックにさまざまなweight属性を追加することで、さまざまな負荷分散戦略を実装できます。負荷分散戦略の一般的な例をいくつか示します。

  • ポーリング (デフォルト):
upstream backend { server server1.example.com; server server2.example.com; server server3.example.com; }
ログイン後にコピー
  • 加重ラウンドロビン:
upstream backend { server server1.example.com weight=3; server server2.example.com weight=2; server server3.example.com; }
ログイン後にコピー
  • IP ハッシュ:
upstream backend { ip_hash; server server1.example.com; server server2.example.com; server server3.example.com; }
ログイン後にコピー

上の例では、ポーリング、加重ポーリング、および IP ハッシュという 3 つの負荷分散戦略を定義しています。実際のニーズに基づいて、適切な戦略を選択できます。

  1. フェイルオーバーの実現

バックエンド サーバーがダウンした場合、または負荷を適切に共有できない場合、Nginx が他の利用可能なサーバーにトラフィックを自動的に転送できることを期待しています。 。これを実現するには、backup属性を各serverブロックに追加し、バックアップ サーバーを構成します。

次は構成例です。server2.example.comはバックアップ サーバーです:

upstream backend { server server1.example.com; server server2.example.com backup; server server3.example.com; }
ログイン後にコピー

この例では、server1.example.comが正しく動作しない場合、Nginx は自動的にトラフィックをserver2.example.comに転送します。

  1. 構成のリロード

Nginx 構成ファイルを変更した後、次のコマンドを使用して構成を再ロードし、新しい構成を有効にすることができます:

sudo nginx -s reload
ログイン後にコピー

これで、Nginx マルチサーバー クラスターの構成プロセスが完了しました。複数のサーバーのクラスターを構成して負荷分散とフェイルオーバーを実現することにより、Web サイトの可用性とパフォーマンスを向上させることができます。

概要:

Nginx は、マルチサーバー クラスターの構成を通じて Web サイトの可用性とパフォーマンスを向上させることができる強力なオープンソース リバース プロキシ サーバーです。この記事では、Nginx を介してロード バランシングとフェイルオーバーを構成する基本的な方法を紹介し、コード例を示します。読者の皆様には、これらの構成を実際のアプリケーションで柔軟に使用して、ご自身の Web サイトの使いやすさを向上していただければ幸いです。

以上がWeb サイトの可用性を高めるための Nginx マルチサーバー クラスター構成の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!