Skip to content

Commit

Permalink
Outline Nominatim Deployment
Browse files Browse the repository at this point in the history
  • Loading branch information
NeonDaniel committed Nov 28, 2023
1 parent a5cfaa8 commit 62c6eea
Show file tree
Hide file tree
Showing 3 changed files with 56 additions and 0 deletions.
25 changes: 25 additions & 0 deletions Nominatim.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Deploying Nominatim
The [unofficial Helm Charts](https://nominatim.org/release-docs/latest/admin/Installation/) come with
(documentation here)[https://github.com/robjuz/helm-charts/blob/master/charts/nominatim/README.md].
The instructions here are based upon that documentation.
> The cluster will need at least 4GB of available memory (on the node where this
> is deployed) to perform initialization. If this isn't possible, update
> `init_values.yaml` to use less `maintenance_work_mem` and consider updating
> `pbfUrl` to use a smaller region instead of the global data.
## Initializing the Nominatim Services
Some default values files are included with Diana.
To initialize Nominatim with global data to its own namespace:
```shell
helm upgrade -n nominatim nominatim robjuz/nominatim -f neon_diana_utils/nominatim/init_values.yaml
```

This will likely take on the order of hours to complete. You may use the Dashboard
or k9s to monitor the job `nominatim-init` (in the `nominatim` namespace). If the
job is interrupted, it is possible that the database is left in a corrupted state;
it is recommended to `kubectl delete namespace nominatim` and start over if the
init process is interrupted.
> Note: The Kubernetes Dashboard may show the `nominatim-init` job as having 1
> completion before the job has completed. `k9s` does not appear to have this bug.
> If you can't use `k9s` then consider watching the Job logs to make sure the init
> actually completes.
7 changes: 7 additions & 0 deletions neon_diana_utils/nominatim/deploy_values.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
nominatimInitialize:
enabled: false

postgresql:
primary:
persistence:
size: 200Gi
24 changes: 24 additions & 0 deletions neon_diana_utils/nominatim/init_values.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
nominatimInitialize:
enabled: true
pbfUrl: "https://ftpmirror.your.org/pub/openstreetmap/pbf/planet-latest.osm.pbf"
importWikipedia: True
resources:
requests:
memory: "4Gi"

postgresql:
primary:
persistence:
size: 200Gi
extendedConfiguration: |
shared_buffers = 2GB
maintenance_work_mem = 2GB
autovacuum_work_mem = 2GB
work_mem = 50MB
effective_cache_size = 24GB
synchronous_commit = off
max_wal_size = 2GB
checkpoint_timeout = 10min
checkpoint_completion_target = 0.9
fsync = off
full_page_writes = off

0 comments on commit 62c6eea

Please sign in to comment.