Discourse Hochverfügbarkeit

Has anyone played with a HAProxy/nginx/etc?

I could have sworn there was a how-to guide for a way to do distributed hosting, either via Docker or via multiple instances of Discourse all hitting a single high availability database server, but I can’t seem to find a guide for it.

Any thoughts? I’m currently serving a small single Discourse site, but am interested in learning as much as I can about scaling and load balancing of Discourse.

5 „Gefällt mir“

Found it, less than fifteen minutes after I posted. I’ll put any info on snags or clarifications that might be helpful into the conversation here.

The documentation is very fragmented. I’m going to attempt to pull it all together here.

Any chance I could get some input from @nx2zdk or @jspdng?

Info on avoiding port exposure:

Load balancing with nginx:

Enabling http2 on Debian:

Offline page setup:

Ich konnte nirgendwo passende Antworten finden.
Ich habe verstanden, dass die Standalone-Installation von Discourse für ihre Einfachheit und Robustheit in Standardumgebungen empfohlen wird. Um jedoch Hochverfügbarkeit (High Availability, HA) zu gewährleisten, schlagen einige vor, den Standalone-Modus in mehrere Container aufzuteilen (29413), andere schlagen eine vollständige Neugestaltung separater Bereitstellungen vor.

  1. Frage 1: Da HA die Duplizierung von Diensten (Web und DB) mit zuverlässigem Failover bedeutet, schlägt Discourse eine solche Lösung vor, bei der sowohl Webdienste als auch Datenbanken innerhalb von Containern repliziert werden?
  2. Frage 2: Für Webdienste wäre ein Load-Balancer erforderlich, um eine gleichmäßige Verteilung der Last zwischen den Instanzen zu gewährleisten. Was sind die Empfehlungen von Discourse-Experten und der Community?
  3. Frage 3: Was ist der bevorzugte Weg, um die PostgreSQL-Replikation für die containerisierte DB-HA zu verwalten?
  4. Frage 4: Gleiche Frage für Redis.

Es gibt eine Reihe von Möglichkeiten, mit PostgreSQL-Failover umzugehen. Sie können verwenden, was Sie möchten.

Das CDCK-Hosting verwendet HA-Proxy, soweit ich weiß. Sie können jeden Load Balancer verwenden, den Sie möchten, und (meistens) /srv/status als Bereitschaftsanzeige verwenden.

1 „Gefällt mir“