How we run a 99,5% uptime SDI using Geoserver Roel Huybrechts, Niels - - PowerPoint PPT Presentation

how we run a 99 5 uptime sdi
SMART_READER_LITE
LIVE PREVIEW

How we run a 99,5% uptime SDI using Geoserver Roel Huybrechts, Niels - - PowerPoint PPT Presentation

How we run a 99,5% uptime SDI using Geoserver Roel Huybrechts, Niels Charlier, Timothy De Bock et. al. Data tabank Ondergrond Vla laanderen OPEN DATA geothermics soil geology FLANDERS IN INSPIRE groundwater geotechnics mineral


slide-1
SLIDE 1

How we run a 99,5% uptime SDI using Geoserver

Roel Huybrechts, Niels Charlier, Timothy De Bock et. al.

slide-2
SLIDE 2

Data tabank Ondergrond Vla laanderen

soil

geology

geotechnics

groundwater

mineral resources

geothermics

FLANDERS OPEN DATA

IN INSPIRE

slide-3
SLIDE 3
  • 1602 layers
  • served with Geoserver using OGC standards
  • 1602 WMS layers
  • 732 WFS layers (i.e. vector data)
  • 870 WCS layers (i.e. raster data)
  • 1744 metadatarecords
  • served with Geonetwork using CSW + ISO standards

Data ta?

slide-4
SLIDE 4

Use sers

http://www.dov.vlaanderen.be/verkenner

slide-5
SLIDE 5

Use sers

slide-6
SLIDE 6

Use sers

slide-7
SLIDE 7

Use sers

slide-8
SLIDE 8

Use sers

slide-9
SLIDE 9

Use sers

slide-10
SLIDE 10

2,5 ,5 mill illion hits its per r week

slide-11
SLIDE 11

Most st of f th the tim time, it it work rks

slide-12
SLIDE 12

So So, , how?

  • Multiple nodes
  • All our Geoserver machines are clusters of 2 or 4 nodes
  • Multiple instances / environments:
  • Separated work environment and publication environment
  • We have everything three times (dev, qa, production)
  • Yes, this is a lot of machines. (around 25x3 servers)
slide-13
SLIDE 13

Geose server, , batte tteries in included

  • Geoserver
  • WMS, WMTS, WFS, WCS, CSW
  • Extensions
  • INSPIRE
  • Community modules
  • JDBCConfig (improved!)
  • JDBCStore (improved!)
  • GWC S3
  • S3 Geotiff
  • Taskmanager (new!)
  • Metadata (new!)
  • CSW ISO
slide-14
SLIDE 14

Rele lease sc schedule

  • Upstream Geoserver releases roughly every 6 months
  • Now at 2.16.0
  • We have a custom version, following our own release needs
  • Now at 2.15.0-dov-4.3.0
  • https://github.com/DOV-Vlaanderen/geoserver/tree/2.15.0-dov-4.x
  • Why?
  • To get improvements and fixes of our own community modules into production faster
  • To be able to fix important Geoserver issues in production faster
  • All our improvements and fixes are pushed upstream and are included in the

next upstream release

slide-15
SLIDE 15

Develo lopment work rkflow

  • We have continuous integration using Bamboo
  • All changes are deployed in dev and tested by a user
  • We release when new stories are finished and/or all urgent bugs are fixed
  • Release is deployed in QA and tested again
  • When all is well we deploy in production
slide-16
SLIDE 16

St Standard Geose server in inst stall llati tion

Jetty HTTP Geoserver Data directory Database (map data) SHP Geotiff Config (XML)

slide-17
SLIDE 17

Not so so gre reat id idea

Data directory Database (map data) Geotiff Config (XML) Tomcat HTTP Geoserver Tomcat Geoserver Tomcat Geoserver Tomcat Geoserver Reverse proxy Loadbalancer Data directory Geotiff Config (XML) Data directory Geotiff Config (XML) Data directory Geotiff Config (XML) HTTP

slide-18
SLIDE 18

Our Geose server clu clusters

Tomcat HTTP Geoserver Database (map data) Database (config) S3 file storage (raster data) Tomcat Geoserver Tomcat Geoserver Tomcat Geoserver Reverse proxy Loadbalancer S3 file storage (geowebcache)

slide-19
SLIDE 19

Our Geose server clu clusters

Tomcat HTTP Geoserver Database (map data) Database (config) S3 file storage (raster data) Tomcat Geoserver Tomcat Geoserver Tomcat Geoserver Reverse proxy Loadbalancer S3 file storage (geowebcache)

slide-20
SLIDE 20

Less ssons le learn rned

  • Database connections
  • Don’t use database parameters in store config directly
  • Use PostGIS JNDI and define connection pools in Tomcat
  • Hazelcast cache invalidation can be tricky
  • General rule is: it is not cluster-safe unless we have fixed it
  • Transparent GWC caching is very powerful
  • WMS calls use WMTS tiles if they are available
  • Allows to cache a layer without clientside changes!
slide-21
SLIDE 21

Geoserver work environment with Tas askmanager Work database Geoserver publication environment Publication database

Our se setu tup: : basi sics

slide-22
SLIDE 22

wo work pu publish sh ap app Copy table Copy table Remote db publication Create view wo work

Pub ublic liceren va van n bori ringgegevens

Task skmanager: : in inte tegrated ETL

slide-23
SLIDE 23

Geo eoserver Task Manager: co concepts

Tem empla late: reusable blueprint for new configurations, contains predefines tasks, attributes and batches Batc tch: series of tasks that can be executed manually or automatically, is transactional Co Configura ratio ion: group of tasks, attributes and batches Task sk: one specific and atomic action Att ttrib ibute: variable with a value, can be reused in different tasks within the configuration

slide-24
SLIDE 24

Task skmanager: : in inte tegrated ETL

slide-25
SLIDE 25

Task skmanager: : in inte tegrated ETL

slide-26
SLIDE 26
  • It creates stores and layers automatically
  • From database table
  • Or by uploading a raster file
  • This means new layers have a configuration by design
  • allows publication on a remote Geoserver with a single click
  • Define your dataflows once and run them automatically every night
  • Allows work and publication environments to be entirely separate
  • While keeping it easy for users to publish their new versions with a single click

Task skmanager advanta tages

slide-27
SLIDE 27

Meta tadata: sa saved with ith la layer

slide-28
SLIDE 28

Meta tadata: IN INSPIRE co compliant

slide-29
SLIDE 29

Meta tadata: CSW SW buil ilt-in in

slide-30
SLIDE 30

Less ssons le learn rned

  • Data and metadata are meant to be kept close together
  • Edit at the same time
  • Publish at the same time
  • Don’t duplicate information
  • Custom metadata fields are synced to native fields on save
  • F.ex. metadata identificator, keywords, etc.
  • Metadata templates are powerful
  • Most of us don’t like to fill in metadata forms
  • Templates can be combined easily -> don’t duplicate information
slide-31
SLIDE 31

More re in info formatio ion

  • Github: https://github.com/DOV-Vlaanderen/geoserver
  • Documentation: https://docs.geoserver.org/
  • DOV website: https://www.dov.vlaanderen.be/page/geoserver-task-

manager

  • Don’t hesitate to contact me or DOV if you have any questions!