このチュートリアルでは、Ubuntu 16.04 LTSにHAProxyをインストールして構成する方法を示します。知らない人のために、HAProxyは無料のHTTP/TCP高可用性ロードバランサーです。 HA Proxyは、GitHub、Bitbucket、Stack Overflow、Reddit、Tumblr、Twitter、Tuentiなどの多くの有名なWebサイトで使用されています。 AmazonWebServicesのOpsWorks製品で使用されています。
この記事は、少なくともLinuxの基本的な知識があり、シェルの使用方法を知っていること、そして最も重要なこととして、サイトを独自のVPSでホストしていることを前提としています。インストールは非常に簡単で、ルートアカウントで実行されていますが、そうでない場合は、'sudo
を追加する必要があります。 ‘ルート権限を取得するコマンドに。 Ubuntu 16.04(Xenial Xerus)サーバーにHAProxyを段階的にインストールする方法を説明します。
Ubuntu16.04LTSにHAProxyをインストールする
手順1.まず、次のapt-get
を実行して、すべてのシステムパッケージが最新であることを確認します。 ターミナルのコマンド。
sudo apt-get update sudo apt-get upgrade
ステップ2.ネットワークの詳細。
以下はネットワークサーバーです。Apache2で実行され、ポート80でリッスンしている3つのWebサーバーと1つのHAProxyサーバーがあります。
Web Server Details: Server 1: web1.idroot.us 192.168.1.101 Server 2: web2.idroot.us 192.168.1.102 Server 3: web3.idroot.us 192.168.1.103 HAProxy Server: HAProxy: haproxy 192.168.1.16
ステップ3.HAProxyをインストールします。
次に、次のコマンドを使用してHAProxyをインストールします。
apt-get -y install haproxy
インストール後、インストールされているバージョン番号を次のように再確認できます。
haproxy -v
HAProxyの構成ファイルを変更する必要があります。つまり、/etc/haproxy/haproxy.cfg
私たちの要件に従って。 (ネットワーク要件に応じてこの構成を変更してください)。構成の詳細については、このURLを確認してください。
### nano /etc/haproxy/haproxy.cfg global log /dev/log local0 log /dev/log local1 notice chroot /var/lib/haproxy stats socket /run/haproxy/admin.sock mode 660 level admin stats timeout 30s user haproxy group haproxy daemon # Default SSL material locations ca-base /etc/ssl/certs crt-base /etc/ssl/private # Default ciphers to use on SSL-enabled listening sockets. # For more information, see ciphers(1SSL). This list is from: # https://hynek.me/articles/hardening-your-web-servers-ssl-ciphers/ ssl-default-bind-ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256::RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS ssl-default-bind-options no-sslv3 defaults log global mode http option httplog option dontlognull timeout connect 5000 timeout client 50000 timeout server 50000 errorfile 400 /etc/haproxy/errors/400.http errorfile 403 /etc/haproxy/errors/403.http errorfile 408 /etc/haproxy/errors/408.http errorfile 500 /etc/haproxy/errors/500.http errorfile 502 /etc/haproxy/errors/502.http errorfile 503 /etc/haproxy/errors/503.http errorfile 504 /etc/haproxy/errors/504.http frontend Local_Server bind 192.168.1.16:80 mode http default_backend My_Web_Servers backend My_Web_Servers mode http balance roundrobin option forwardfor http-request set-header X-Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto https if { ssl_fc } option httpchk HEAD / HTTP/1.1rnHost:localhost server web1.idroot.us 192.168.1.101:80 server web2.idroot.us 192.168.1.102:80 server web3.idroot.us 192.168.1.103:80 listen stats *:1936 stats enable stats hide-version stats refresh 30s stats show-node stats auth username:password stats uri /stats
プロキシサーバーに必要なすべての構成が完了したので、次のコマンドを使用してサービスを再起動する前に、構成ファイルを確認します。
haproxy -c -f /etc/haproxy/haproxy.cfg
上記のコマンドが「構成ファイルが有効です」として出力を返す場合は、HAProxyサービスを再起動します。
systemctl restart haproxy
ステップ5.HAProxyへのアクセス。
お気に入りのブラウザを開き、WebブラウザでIP 192.168.0.16(上記の設定)のポート80にアクセスし、更新を押します。HAProxyがリクエストを送信していることがわかります。バックエンドサーバーに1つずつ(ラウンドロビンアルゴリズムに従って)
おめでとうございます。HAProxyが正常にインストールされました。このチュートリアルを使用してUbuntu 16.04 LTS(Xenial Xerus)システムにHAProxy負荷分散をインストールしていただきありがとうございます。その他のヘルプや役立つ情報については、以下を確認することをお勧めします。 HAProxyの公式ウェブサイト。