Un server per 2 community Discourse?

un’ulteriore nota che si collega direttamente alla parte HAProxy della configurazione sopra.

Esiste un comportamento comune con HAProxy + Discourse per cui la ricostruzione di un container web (ad esempio con ./launcher rebuild app1) restituirà brevemente risposte 503 Service Unavailable perché HAProxy sta ancora inviando traffico a quel backend mentre si sta riavviando. Questo non è un errore in Discourse stesso: accade perché il backend è momentaneamente non disponibile durante la ricostruzione.

La soluzione consigliata consiste nell’utilizzare il socket di amministrazione di HAProxy per:

  1. disabilitare il server in HAProxy prima della ricostruzione, e
  2. riabilitarlo dopo che la ricostruzione è terminata

Ciò impedisce quei 503 transitori.

Esiste una discussione esistente su Meta che documenta questo comportamento e la spiegazione della soluzione alternativa:

Se qualcuno qui utilizza HAProxy per le ricostruzioni progressive (rolling rebuilds), quel thread fornisce un contesto utile per spiegare perché i comandi del socket di amministrazione sono inclusi nel runbook.