A cada dia está mais comum os sistemas rodarem na nuvem, e as aplicações geoespaciais não ficam fora dessa onda. É comum os usuário se perguntarem como configurar o GeoServer em um ambiente de cluster na Amazon Web Services (AWS).

Hoje, existem alguns métodos para configurar o GeoServer em uma arquitetura de alta disponibilidade baseada na nuvem. Há duas extensões de clustering com suporte ao Geoserver – uma é baseado em Hazelcast e a outra no JMS.

A abordagem básica ambas as extensões utilizam que é ter a configuração compartilhada entre todos os nós do cluster. Isto pode ser conseguido pela utilização de um sistema de arquivos compartilhado (GlusterFS, NFS, EFS, etc.) ou usando uma combinação de armazenar a maior parte da configuração em uma base de dados (Postgres), e as partes da configuração que não são persistidas no banco de dados através de um sistema de arquivos compartilhado.

08bits-amazon-tmagArticle

Ambas as extensões têm seus próprios benefícios e limitações. Como exemplo, Hazelcast utiliza uma topologia multi-mestre, mas (pelo menos no momento) cria uma interface inutilizável. Isto significa que todas as alterações de configuração deve ser feita através da API REST, enquanto a implementação JMS é melhor quando usada em uma topologia master-slave em vez de tentar usá-lo em uma topologia multi-master.

Dependendo da situação, não sugere-se a utilização de qualquer uma dessas extensões e, ao invés disso sincronizar a configuração entre todos os nós com Chef/Puppet ou por outros meios.

Você pode visualizar a documentação completa do Hazelcast no link abaixo:

http://suite.opengeo.org/docs/latest/sysadmin/clustering/setup.html

E a documentação JMS também:

http://docs.geoserver.org/stable/en/user/community/jms-cluster/index.html
http://geoserver.geo-solutions.it/educational/en/clustering/index.html

Fonte: Blog da Boundless