このチュートリアルでは、Ubuntu 20.04 LTSにHAProxyをインストールする方法を示します。知らなかった方のために、HAProxyは無料のHTTP/TCP高可用性ロードバランサーおよびプロキシです。サーバー。単一のサーバー障害に起因する問題を軽減するために、複数のサーバー間でリクエストを分散します。HAProxyは、GitHub、Bitbucket、Stack Overflow、Reddit、Tumblr、Twitter、Tuentiなどの多くの有名なWebサイトで使用され、使用されます。 AmazonWebServicesのOpsWorks製品で。
この記事は、少なくともLinuxの基本的な知識があり、シェルの使用方法を知っていること、そして最も重要なこととして、サイトを独自のVPSでホストしていることを前提としています。インストールは非常に簡単で、ルートアカウントで実行されていますが、そうでない場合は、'sudo
を追加する必要があります。 ‘ルート権限を取得するコマンドに。 Ubuntu 20.04(Focal Fossa)にHAProxyを段階的にインストールする方法を紹介します。 Ubuntu 18.04、16.04、およびLinuxMintなどの他のDebianベースのディストリビューションでも同じ手順に従うことができます。
前提条件
- 次のオペレーティングシステムのいずれかを実行しているサーバー:Ubuntu 20.04、18.04、16.04、およびLinuxMintなどの他のDebianベースのディストリビューション。
- 潜在的な問題を防ぐために、OSの新規インストールを使用することをお勧めします。
- サーバーへのSSHアクセス(またはデスクトップを使用している場合はターミナルを開く)。
non-root sudo user
またはroot user
へのアクセス 。non-root sudo user
として行動することをお勧めします ただし、ルートとして機能するときに注意しないと、システムに害を及ぼす可能性があるためです。
Ubuntu 20.04 LTSFocalFossaにHAProxyをインストールする
手順1.まず、次のapt
を実行して、すべてのシステムパッケージが最新であることを確認します。 ターミナルのコマンド。
sudo apt update sudo apt upgrade sudo apt install software-properties-common
ステップ2.ネットワークの詳細。
Ubuntu 20.04システムにHAProxyロードバランサーをインストールして構成するために、次の3つのシステムを検討します。
Web Server Details: Server 1: web1.idroot.us 192.168.77.20 Server 2: web2.idroot.us 192.168.77.21HAProxy Server: HAProxy: haproxy 192.168.77.46
ステップ3.Ubuntu20.04にHAProxyをインストールします。
次に、Ubuntu用のHAProxy PPAリポジトリを追加します:
sudo curl https://haproxy.debian.net/bernat.debian.org.gpg | apt-key add - sudo echo "deb http://haproxy.debian.net $(lsb_release -cs)-backports-2.0 main" | tee /etc/apt/sources.list.d/haproxy.list sudo add-apt-repository ppa:vbernat/haproxy-2.1
完了したら、次のコマンドを使用してHAProxyをインストールできます。
sudo apt update sudo apt install haproxy
ステップ4.HAProxyを構成します。
HAProxyのメイン設定ファイルは/etc/haproxy/haproxy.cfg
です。 次に、構成を編集して開始します。
sudo nano /etc/haproxy/haproxy.cfg
次のファイルを追加します:
# add to the end# define frontend ( any name is OK for [http-in] ) frontend http-in # listen 80 port bind *:80 # set default backend default_backend backend_servers # send X-Forwarded-For header option forwardfor# define backend backend backend_servers # balance with roundrobin balance roundrobin # define backend servers server node01 192.168.77.21:80 check server node02 192.168.77.46:80 check
完了したら、以下のコマンドを実行して再起動できます:
sudo systemctl restart haproxy
次に、バックエンドWebサーバーの設定を変更して、X-Forwarded-Forヘッダーをログに記録します。Apache2設定の場合は次のとおりです。
a2enmod remoteip sudo nano /etc/apache2/apache2.conf
次のファイルを追加します:
# line 212-215 : change like follows # for RemoteIPInternalProxym, specify HAProxy IP addressRemoteIPHeader X-Forwarded-For RemoteIPInternalProxy192.168.77.20 LogFormat "%v:%p %a %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined LogFormat "%a %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
ファイルを保存して閉じ、Apacheサービスも再起動します:
sudo systemctl restart apache2
ステップ5.HAProxyにアクセスします。
HAProxyを構成して実行したら、WebブラウザーでロードバランサーサーバーのパブリックIPを開き、バックエンドに正しく接続されていることを確認します。構成により、定義されたアドレスで統計ページが有効になります:
http://192.168.77.46
おめでとうございます!HAProxyが正常にインストールされました。Ubuntu20.04LTS Focal FossaシステムにHAProxyをインストールするためにこのチュートリアルを使用していただき、ありがとうございます。追加のヘルプや役立つ情報については、公式を確認することをお勧めします。 HAProxyWebサイト。