Red Hat Training

A Red Hat training course is available for Red Hat Satelitte

付録A 大規模デプロイメントに関する考慮事項

Apache 向けファイル記述子の最大数の増加

800 を超えるコンテンツホストが登録されている場合、Apache では複数のシステムレベルの制限に到達し、新しいコンテンツホストの登録に失敗することがあります。この問題を回避するには、大量のコンテンツホストをデプロイする前に、ファイル記述子の制限を緩和する必要があります。

  1. Red Hat Enterprise Linux 7 の場合は、/etc/systemd/system/httpd.service.d/limits.conf ファイルを作成し、以下のテキストを挿入します。

    [Service]
    LimitNOFILE=65536
  2. 変更をユニットに適用します。

    # systemctl daemon-reload
  3. Katello サービスを再起動します。

    # katello-service restart

qpid 向けファイル記述子の最大数の増加

1100 を超えるコンテンツホストでエラータ更新のために goferd が実行されている場合、qpid ではシステムレベルの制限に到達し、登録に失敗することがあります。この問題を回避するには、大量のコンテンツホストをデプロイする前に、ファイル記述子の制限を緩和する必要があります。

Red Hat Enterprise Linux 7 を使用した qpid 向けファイル記述子の最大数の増加

  1. /etc/systemd/system/qpidd.service.d/limits.conf ファイルを作成し、以下のテキストを挿入します。

    [Service]
    LimitNOFILE=65536
  2. 変更をユニットに適用します。

    # systemctl daemon-reload
    # systemctl restart qpidd.service

Red Hat Enterprise Linux 6 を使用した qpid 向けファイル記述子の最大数の増加

  1. /etc/security/limits.conf ファイルを編集し、以下のテキストを挿入します。

    qpidd - nofile 65536
  2. qpidd サービスを再起動します。

    # service qpidd restart

共有バッファーと作業メモリーの増加

shared_bufferwork_mem を 256M と 4M にそれぞれ増加できます。

  1. Red Hat Enterprise Linux 7 の場合は、/var/lib/pgsql/data/postgresql.conf ファイルを作成し、以下のテキストを挿入します。

    work_mem = 4MB
    shared_buffers = 256MB
  2. postgresql サービスを再起動します。

    # service postgresql restart

同時コンテンツホスト登録の増加

システムレベルの制限への到達を回避するために、最大 250 の同時コンテンツホストを処理するようグローバルパッセンジャーキュー制限を増加できます。

  1. 最大パッセンジャープールサイズを、Satellite Server で利用可能な物理 CPU コアの 1.5 倍に調整します。

    たとえば、Satellite Server に 16 コアある場合、最大パッセンジャープールサイズは 24 です。この数は例として示されており、ご使用の環境に応じた数を使用する必要があります。

  2. /etc/httpd/conf.d/passenger.conf ファイルを編集して以下のテキストに一致するよう IfModule スタンザを更新します。

    <IfModule mod_passenger.c>
      PassengerRoot /usr/share/gems/gems/passenger-4.0.18/lib/phusion_passenger/locations.ini
      PassengerRuby /usr/bin/ruby
      PassengerMaxPoolSize 24
      PassengerMaxRequestQueueSize 200
      PassengerStatThrottleRate 120
    </IfModule>
  3. Foreman Passenger アプリケーション設定ファイル /etc/httpd/conf.d/05-foreman-ssl.conf を編集して、以下のテキストに一致するよう PassengerAppRoot で始まるスタンザを更新します。

     PassengerAppRoot /usr/share/foreman
     PassengerRuby /usr/bin/tfm-ruby
     PassengerMinInstances 6
     PassengerStartTimeout 90
     PassengerMaxPreloaderIdleTime 0
     PassengerMaxRequests 10000
     PassengerPreStart https://example.com
  4. Puppet Passenger アプリケーション設定ファイル /etc/httpd/conf.d/25-puppet.conf を編集して以下のテキストを仮想ホスト定義の最後に追加します。

     PassengerMinInstances 6
     PassengerStartTimeout 90
     PassengerMaxPreloaderIdleTime 0
     PassengerMaxRequests 10000
     PassengerPreStart https://example.com:8140
  5. /var/lib/pgsql/data/postgresql.conf ファイルで最大接続数を変更します。

    max_connections = 500
  6. postgresql サービスを再起動します。

    # service postgresql restart

qdrouterd 向けオープンファイルの最大数の増加

1000 を超えるコンテンツホストが登録されている場合、qdrouterd はオープンファイルのデフォルトの最大数に到達することがあります。この問題を回避するには、Satellite サーバーとすべての外部 Capsule サーバーのオープンファイルの最大数を増加します。

  1. 以下の式を使用して、オープンファイルの必要な最大数を計算します。

    (3 x コンテンツホストの数) + 100

    たとえば、1020 のコンテンツホストの場合、新しい最大数は 3160 ((3 x 1020) + 100) に設定します。

  2. Red Hat Enterprise Linux 7 の場合は、ファイル /etc/systemd/system/qdrouterd.service.d/limits.conf を作成し、以下のテキストを追加します。

    [Service]
    LimitNOFILE=maximum_number_of_files
    1. 変更をユニットに適用します。

      # systemctl daemon-reload
    2. Satellite のサービスを再起動します。

      # katello-service restart
  3. Red Hat Enterprise Linux 6 の場合は、ファイル /etc/security/limits.conf を編集し、以下の行を追加します。

    qdrouterd   -   nofile  maximum_number_of_files

    新しい行は # End of file 行 (これ以降の情報は無視されます) の前に追加します。

    1. qdrouterd サービスを再起動します。

      # service qdrouterd restart