第10章 WSGI プロセスのチューニング
API プロセスの実行時間が長いためにリクエストが失敗している場合は、Web Server Gateway Interface (WSGI) プロセスの数を調整することで、パフォーマンスを向上させ、より多くの同時リクエストを処理できるようになります。
デフォルトでは、IdM は 64 ビットシステム上で API サービス用に 4 つの WSGI プロセスを割り当てます。このデフォルトの制限は、メモリー使用量を節約するために設けられています。長時間稼働する API エンドポイントはどれも、特に大量の自動操作が行われる環境においては、チューニングによってメリットが得られます。
たとえば、OpenStack インストールは、複数のサービスを含む複数のコントローラーで構成されています。各サービスは、すべての内部通信が Transport Layer Security (TLS) 経由で行われるように、証明書を要求します。複数のコントローラーやコンピュートノードを同時にインストールまたは更新する場合、証明書の要求が相当な量になることがあります。このような場合、WSGI プロセスの数を増やすことで、インストールを正常に完了させることができます。
10.1. WSGI プロセス数の調整 リンクのコピーリンクがクリップボードにコピーされました!
IdM 環境で同時実行される API リクエストの数を増やすには、Web Server Gateway Interface (WSGI) プロセスの数を調整します。WSGI プロセス数を増やすと、証明書の発行など、大規模な処理のパフォーマンスは向上しますが、メモリー消費量が増加するという代償があります。
前提条件
-
IdM サーバーへの
rootアクセス権限がある。
手順
/etc/httpd/conf.d/ipa.confファイルを開き、WSGIDaemonProcessディレクティブ内のprocessesの値を変更します。WSGIDaemonProcess ipa processes=<value> threads=1 maximum-requests=500 \デフォルトでは、IdM は 4 つのプロセスを使用します。より多くの同時リクエストを処理するには、この値を増やすことができます。推奨される最大プロセス数は 16 です。
注記各 WSGI プロセスは、約 100 - 110 MB の常駐メモリーを消費します。16 個のプロセスを使用する場合、メモリー使用量の合計は約 1.3 GB になります。
Apache HTTP サーバーを再起動して変更を適用します。
[root@server ~]# systemctl restart httpd