Skip to content

Releases: geoserver/geoserver-cloud

Release 1.0-RC1

29 Sep 17:49
Compare
Choose a tag to compare

First release candidate! (just in time for FOSS4G :)

What's Changed

  • Add docker composition override to use jdbcconfig in all services by @groldan in #76
  • Fix jdbcconfig set up, after changes upstream by @groldan in #77
  • Rename docker images based on feedback by @groldan in #82
  • Fix some typos by @marcjansen in #83
  • Re-enable jdbcconfig internal cache by @groldan in #84
  • Create layered spring-boot fat jars and use layers in Dockerfiles by @groldan in #85
  • Make sure webui has gt-wfs-ng in its classpath by @groldan in #86
  • Use maven CI friendly versions by @groldan in #87
  • [geoserver-jackson-bindings] Add mapping for new InternationalString properties by @groldan in #92
  • Fix rabbitmq by @bhoefling-c2c in #93
  • geosever-jackson-bindings: Add international* properties to Contact by @groldan in #94
  • Upstream version upgrade: gs.version 2.20-SNAPSHOT -> 2.21-SNAPSHOT by @groldan in #96
  • Build against a specific geoserver branch and version it as 2.21-CLOUD by @groldan in #97
  • Startup with an empty database by @groldan in #98
  • webui maven dependencies missing by @groldan in #99
  • Notify services of security configuration changes by @groldan in #101

New Contributors

  • @marcjansen made their first contribution in #83
  • @bhoefling-c2c made their first contribution in #93

Full Changelog: v1.0-M2...v1.0-RC1

Release 1.0-M1

01 Apr 18:08
Compare
Choose a tag to compare

First milestone release towards v1.0.

  • Uses latest GeoServer stable release 2.19.0.
  • Updates repository references to geoserver/geoserver-cloud
  • Fixes a bug in jdbcconfig storage backend the lead to a "file is required" error due to a null base directory
  • Add docker composition override file as an example to use jdbcconfig backend in all services
  • Include https://github.com/flatgeobuf/flatgeobuf as a WFS output format with big [https://github.com/flatgeobuf/flatgeobuf/pull/110](performance improvements)
  • Improved config backend configuration through env variables

And other maintenance improvements

Release 0.2.1

25 Feb 22:16
Compare
Choose a tag to compare

Relase 0.2.1, February 25, 2021

v0.2.1 is a patch release adding support to configure CPU and Memory resource limits in the docker composition.

Need to run docker-compose with the --compatibility flag in order for deploy.resources.limits.* to be considered (otherwise they're only obeyed in a swarm deploy).

Change JAVA_OPTS to use -XX:MaxRAMPercentage=[0..100] -XX:MaxRAM=<size><M|G> and hence set the max heap size dynamically based on the available RAM.

The --MaxRAM is set in case docker-compose wasn't (accidentally?) run with --compatibility. Otherwise it's unnecessary
given the percentage set and the memory limit imposed to the container.

A log entry is printed when each service is ready to verify the memory and cpu limits are seen by the JVM.

Release 0.2.0

16 Feb 00:19
Compare
Choose a tag to compare
Release 0.2.0 Pre-release
Pre-release

Relase 0.2.0, February 15, 2021

v0.2.0 code freeze by Dec 31, 2020. Internal priority shifts delayed the release until now, though the system has been deployed in production using Kubernetes since 0.1.0 by end of August 2020.

That said, this is still a second prototype and there WILL be hiccups. Use at your own risk.

Quick start:

$ mkdir gscloud && cd gscould
$ wget "https://raw.githubusercontent.com/camptocamp/geoserver-microservices/v0.2.0/docs/deploy/docker-compose/stable/docker-compose.yml" -O docker-compose.yml
$ docker-compose pull
Pulling rabbitmq  ... done
Pulling database  ... done
Pulling discovery ... done
Pulling config    ... done
Pulling gateway   ... done
Pulling catalog   ... done
Pulling wfs       ... done
Pulling wms       ... done
Pulling wcs       ... done
Pulling rest      ... done
Pulling webui     ... done
$ docker-compose up -d

Wait for the services to start up, check with docker-compose ps until they're healthy. May some service had exited, re-run docker-compose up -d, initial startup may cause timeouts as services compete for resources on a single machine.

Then browse to:

Experiment dynamic service registration with docker-compose scale <service>=<instances>, for example:

docker-compose scale wfs=3 wcs=0
Starting gscloud_wfs_1 ... done
Creating gscloud_wfs_2 ... done
Creating gscloud_wfs_3 ... done
Stopping and removing gscloud_wcs_1 ... done

Major features in this release:

catalog-service

v0.2.0's most important update is the incorporation of the catalog service and the inclusion of, a microservice sitting in between the front-services (wms, wfs, rest, etc) and the actual catalog back-end (still jdbcconfig).

The catalog-service is a reactive web service based on String Webflux and scales well both vertically and horizontally.

The catalog-service back-end is supported by a Reactive Feign client.

Catalog/config pluggable architecture

A huge effort has been made to improve the design of the Catalog and Config subsystems, improving the separation of concerns across abstraction layers. As a result, implementing a new catalog/config backend is much easier.

Catalog/config caching

It is possible to enable spring-cache based caching for the Catalog, Config, and Resource-Store through the externalized configuration.

Catalog and configuration change events are propagated to the event-bus, and all the nodes in the cluster react accordingly, cleaning up whatever is necessary from local caches.

Improved configuration

Common service configuration properties have been collapsed to a single application.yml configuration file (see ./config/application.yml)

Remote events JSON payload encoding

Added importer extension to the web-ui service

Continuous integration build job