Red Hat Training

A Red Hat training course is available for Red Hat OpenStack Platform

第2章 デフォルト設定の定義

外部のロードバランサーなしのオーバークラウドを作成/設定する際には、director は HAProxy が複数の OpenStack サービスにトラフィックを分散するように設定します。director はこの設定を各コントローラーノードの /etc/haproxy/haproxy.conf ファイルで提供します。デフォルトの設定には主に、グローバル、デフォルト、複数のサービスの 3 セクションがあります。

この後の数セクションでは、各設定セクションで使用されるデフォルトのパラメーターを考察します。これは、外部のロードバランサーの設定値の設定例を提供します。これらのパラメーターは、HAProxy の全パラーメーターの中のごく一部であることに注意してください。これらのパラメーターおよびその他のパラメーターについての詳しい情報はコントローラーノード (または haproxy パッケージがインストールされた任意のシステム) の /usr/share/doc/haproxy-*/configuration.txt にある、『HAProxy Configuration Manual』を参照してください。

2.1. グローバルの設定

global
  daemon
  group  haproxy
  log  /dev/log local0
  maxconn  10000
  pidfile  /var/run/haproxy.pid
  user  haproxy

このセクションでは、プロセス全体のパラメーターを定義します。これには、以下が含まれます。

  • daemon: バックグラウンドプロセスとして実行します。
  • user haproxygroup haproxy: プロセスを所有する Linux ユーザーとグループを定義します。
  • log: 使用する syslog サーバーを定義します。
  • maxconn: プロセスへの最大同時接続数を設定します。
  • pidfile: プロセス ID に使用するファイルを設定します。

2.2. デフォルトの設定

defaults
  log  global
  mode  tcp
  retries  3
  timeout  http-request 10s
  timeout  queue 1m
  timeout  connect 10s
  timeout  client 1m
  timeout  server 1m
  timeout  check 10s

このセクションでは、各サービスのデフォルトのパラメーターセットを設定します。これには、以下が含まれます。

  • log: サービスのログ記録を有効にします。global の値は、ロギング機能が global セクションの log パラメーターを使用することを意味します。
  • mode: 使用するプロトコルを設定します。この場合は、デフォルトは TCP です。
  • retries: 接続エラーと報告されるまでにサーバーで実行される再試行の回数を設定します。
  • timeout: 特定の機能の最大待ち時間を設定します。たとえば、timeout http-request は HTTP 要求が完了するまでの最大の待ち時間を設定します。

2.3. services の設定

listen ceilometer
  bind 172.16.20.250:8777
  bind 172.16.23.250:8777
  server overcloud-controller-0 172.16.20.150:8777 check fall 5 inter 2000 rise 2
  server overcloud-controller-1 172.16.20.151:8777 check fall 5 inter 2000 rise 2
  server overcloud-controller-2 172.16.20.152:8777 check fall 5 inter 2000 rise 2

デフォルトのファイルには、複数のサービスの設定セクションがあります。各サービスの設定には、以下が含まれます。

  • listen: 要求をリッスンするサービスの名前
  • bind: サービスがリッスンする IP アドレスと TCP ポートの番号
  • server: サービスを提供する各サーバーの名前、サーバーの IP アドレス、リッスンするポート、およびその他の情報

上記の例は、ceilometer サービスの HAProxy 設定を示しています。このサービスは、ceilometer サービスが提供される IP アドレスとポートを特定します (172.16.20.2500 および 172.16.23.250 上のポート 8777)。HAProxy は、これらのアドレスに対して送信された要求を overcloud-controller-0 (172.16.20.150:8777)、overcloud-controller-1 (172.16.20.151:8777)、overcloud-controller-2 (172.16.0.152:8777) のいずれかに転送します。

また、この例の server パラメーターにより、以下の設定が有効になります。

  • check: ヘルスチェックが有効になります。
  • fall 5: ヘルスチェックに 5 回失敗すると、サービスは停止中と見なされます。
  • inter 2000: ヘルスチェックの実行間隔が 2000 ミリ秒 (2 秒) に設定されます。
  • rise 2: ヘルスチェックに 2 回成功すると、サーバーは稼働中と見なされます。

各サービスは、異なるアドレスにバインディングして、異なるネットワークトラフィックの種別を表します。また、一部のサービスには、追加の設定オプションが含まれます。次の章では、各特定サービスの設定を考察して、それらの詳細をお使いの外部のロードバランサーで再現できるようにします。