2つのDiscourseコミュニティに1つのサーバー?

上記のセットアップのHAProxy部分に直接関連する追加の注意点が1つあります。

HAProxyとDiscourseでは、Webコンテナを再構築する際(例:./launcher rebuild app1)、HAProxyがバックエンドにトラフィックを送信し続けている間に再起動するため、一時的に503 Service Unavailableの応答が返されるという一般的な動作があります。これはDiscourse自体のエラーではなく、バックエンドが再構築中に一時的に利用できなくなるために発生します。

推奨される回避策は、HAProxy管理ソケットを使用して次の操作を行うことです。
\t1.\t再構築の前にHAProxyでサーバーを無効にする、および
\t2.\t再構築が完了した後に再度有効にする

これにより、一時的な503エラーを防ぐことができます。

この動作と回避策の説明を文書化した既存のMetaディスカッションがあります。

ローリング再構築にHAProxyを使用している方は、そのスレッドが、実行手順書に管理ソケットコマンドが含まれている理由について役立つ背景情報を提供しています。