第7章 HAProxy ロードバランサーインスタンスの管理
クライアントの HTTPS 要求をすべての CDS サーバーに分散するには、負荷分散ソリューションを導入する必要があります。Red Hat Update Infrastructure 4 はデフォルトで HAProxy を使用しますが、インストール時に、使用する負荷分散ソリューション (たとえば、クラウドプロバイダーのもの) を自由に選択できます。HAProxy が使用されている場合は、挿入するノードの数を決定する必要もあります。
7.1. HAProxy ロードバランサーの新規登録について
Red Hat Update Infrastructure 4 は DNS を使用して CDN に到達します。ほとんどの場合、インスタンスは、クラウドのインフラストラクチャーの一部としてホストされる適切な DNS サーバーと通信するように事前設定する必要があります。独自の DNS サーバーを実行するか、クライアントの DNS 設定を更新すると、yum Could not contact any CDS load balancers
のようなエラーが表示される可能性があります。このような場合は、DNS サーバーがリクエストのためにクラウドの DNS サーバーに転送していること、または DNS クライアントが名前解決のためにクラウドの DNS サーバーにフォールバックするように設定されていることを確認してください。
複数の HAProxy ノードを使用するには、すべての HAProxy ノードの IP アドレスを解決する rhui-installer
の実行時に --cds-lb-hostname
パラメーターの値として使用されるホスト名のラウンドロビン DNS エントリー (このガイドではcds.example.com
) が必要です。DNS Round Robin の設定方法 により、ラウンドロビン DNS を設定する方法があります。Red Hat Update Infrastructure 4 のコンテキストでは、これらは HAProxy ノードの IP アドレスで、rhui-installer
を呼び出す際に、--cds-lb-hostname
で指定したホスト名にマップされます。
Update instance(s) after reinstalling? (y/n):
という質問にはい (y) と答えると、インスタンスの登録後に dnf update
がインスタンスで実行されます。これには、インスタンスの再起動が必要になる場合があります。この質問にいいえ (n) と答えると、dnf update
は実行されません。
前提条件
-
HAProxy ロードバランサーノードで
sshd
が稼働しており、port 443
が開いていることを確認する。
手順
Red Hat Update Infrastructure Management Tool のホーム画面に移動します。
[root@rhua ~]# rhui-manager
-
l
を押して、manage HAProxy load-balancer instances を選択します。 -
Load-balancer (HAProxy) Management 画面で
a
を押して、新しいロードバランサーインスタンスを追加します。 新しいロードバランサーのホスト名を入力します。
Hostname of the HAProxy Load-balancer instance to register: <haproxy1.example.com>
ロードバランサーへの SSH アクセスがあり、sudo 権限を持つユーザー名を入力します。
Username with SSH access to cds.example.com and sudo privileges: <cloud-user>
ロードバランサーインスタンスにログインするために SSH 秘密鍵に絶対的な部分を入力し、
Enter
を押します。Absolute path to an SSH private key to log into cds.example.com as <cloud-user>: /<cloud-user>/.ssh/id_rsa_rhua
利用可能なパッケージの最新バージョンでインスタンスを更新します。
Update instance after registering? (y/n): y
オプション: ユーザー提供の HAProxy 設定ファイルへの絶対パスを必要に応じて入力し、
Enter
を押します。カスタム設定ファイルへのパスを指定しない場合は、代わりにデフォルトのファイル
/usr/share/rhui-tools/templates/haproxy.cfg
が使用されます。Optional absolute path to user supplied HAProxy config file: ......................................................................... The following load-balancer has been successfully added: Hostname: <haproxy1.example.com> SSH Username: <cloud-user> SSH Private Key: /<cloud-user>/.ssh/id_rsa_rhua The load-balancer will now be configured:
- ロードバランサーの追加に失敗した場合、ファイアウォールのルールで RHUA とロードバランサー間のアクセスが許可されているか確認してください。
- 設定に成功すると、残りのロードバランサーインスタンスについてこの手順を繰り返します。
検証
以下のメッセージが表示されます。
The HAProxy Load-balancer was successfully configured.
関連情報