Weather GIS Platform — architecture documentation¶
Start here
New to this platform? Read the Vision first — the goals and the principles that keep it simple and durable, with links to the proofs. Not a technical reader? How it works explains the platform in plain language. Preparing the Foundation Workshop? The GIS contribution answers the workshop agenda point by point.
This documentation describes how to deploy GeoServer as a cluster on Kubernetes to serve meteorological, aeronautical and hydrological data: catalog and resources in the database (JDBCConfig / JDBCStore / JDBCStatus via JNDI), tile cache and rasters on S3, WPS, TimescaleDB + PostGIS database, image mosaic ingestion service.
Reading guide¶
| Section | Audience | Content |
|---|---|---|
| Architecture (arc42) | Architects, tech leads | The why and the what: constraints, context, building blocks, deployment, decisions |
| Guides | Ops, developers | The how: reproducible step-by-step instructions, derived from validated prototypes |
| Decisions (ADR) | Everyone | Each structuring choice, its alternatives and its consequences |
Progress status¶
| # | Sub-project | Status |
|---|---|---|
| 0 | Documentation foundation | ✅ in place |
| 1 | Database (TimescaleDB + PostGIS, GeoServer schema) | ✅ guide + PoC validated |
| 2 | GeoServer image (Tomcat, JNDI, plugins, JVM) | ✅ guide + PoC validated |
| 3 | Clustering (variable replica count, configuration propagation) | ✅ guide + PoC validated |
| 4 | S3 storage (tile cache, rasters) | ✅ guide + PoC validated |
| 5 | ImageMosaic ingestion (satellite time series, multi-dimensional models) | ✅ guide + PoC validated |
| 6 | Vector data (published TimescaleDB/PostGIS tables) | ✅ guide + prototype validated |
| 7 | Basemaps (downloaded sources, external services) | ✅ guide + prototype validated |
| 8 | Processing: vector → raster interpolation, custom WPS | ✅ guide + prototype validated |
Method¶
Each technical chapter is backed by a prototype executed on a test Kubernetes
cluster before being written. The artifacts (Dockerfile, SQL scripts,
manifests) live in poc/<NN>-<name>/ and are referenced from the guides.
Visual conventions¶
Screenshots are clickable (zoom). Example:
