Propósito do volume compartilhado Discourse em uma configuração de alta disponibilidade

Olá! Estou me perguntando qual é o propósito do volume compartilhado em uma implantação do Discourse?

Para contextualizar, temos o Discourse em execução em um cluster Kubernetes (no GKE), mas gostaríamos de escalar o número de instâncias da nossa implantação para torná-lo mais altamente disponível. Todas as instâncias, obviamente, continuariam a se comunicar com o mesmo banco de dados Postgres e instância Redis, mas estou me perguntando se todos os servidores web precisam se comunicar com o mesmo volume compartilhado ou se os servidores web podem ser escalados independentemente (ou seja, cada instância de servidor web pode ter seu próprio volume “compartilhado”).

Ou existe um requisito rígido de que todos os servidores web utilizem o mesmo volume compartilhado, caso em que teríamos que considerar a montagem de algo como um volume NFS em cada um de nossos contêineres?

Obrigado!

The shared volume is there as a value add you can get away without it. In a typical “uploads are on AWS”, PG / Redis somewhere central setup you will only use it for Rails/Unicorn/NGINX etc logs. You would then ship them somewhere central with some log aggregation service.

Perfect, thanks @sam!

Just wanted to check that there weren’t going to be issues with uploads going to one host, and then a request hits another host and isn’t available due to it running in a separate container with a separate mount.

Sounds like we’ll be ok here :+1:.

Note, It will be an issue unless you use our s3 uploads provider