Skip to content

Commit efb8d5b

Browse files
authored
Add configMap for tiler (#351)
* Increase initialDelaySeconds for tiler db deployment * Add configmap for tiler server * Add service for prometheus - tiler server * Remove service for prometheus - tiler server * Update tiler db templates - adding sharedMemorySize * Set default sharedMemorySize * Add ttlSecondsAfterFinished for cronjob - osmcha * Add env var for imposm - tiler * Add env vars for tiler server * Add default values for EXECUTE_REINDEX and EXECUTE_VACUUM_ANALYZE
1 parent 26e5372 commit efb8d5b

File tree

7 files changed

+79
-97
lines changed

7 files changed

+79
-97
lines changed

osm-seed/templates/osmcha-app/cronJob.yaml

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,11 @@ metadata:
1111
spec:
1212
schedule: "*/2 * * * *"
1313
concurrencyPolicy: Forbid
14-
successfulJobsHistoryLimit: 2
15-
failedJobsHistoryLimit: 2
14+
successfulJobsHistoryLimit: 1
15+
failedJobsHistoryLimit: 1
1616
jobTemplate:
1717
spec:
18+
ttlSecondsAfterFinished: 120
1819
template:
1920
spec:
2021
containers:
@@ -32,12 +33,12 @@ spec:
3233
restartPolicy: Never
3334
{{- if .Values.osmchaApi.nodeSelector.enabled }}
3435
nodeSelector:
35-
{{ .Values.osmchaApi.nodeSelector.label_key }} : {{ .Values.osmchaApi.nodeSelector.label_value }}
36+
{{ .Values.osmchaApi.nodeSelector.label_key }}: {{ .Values.osmchaApi.nodeSelector.label_value }}
3637
{{- end }}
3738

3839
---
3940
apiVersion: batch/v1
40-
kind: CronJob
41+
kind: CronJob
4142
metadata:
4243
name: {{ .Release.Name }}-osmcha-process-changesets-cronjob
4344
labels:
@@ -48,10 +49,11 @@ metadata:
4849
spec:
4950
schedule: "0 * * * *"
5051
concurrencyPolicy: Forbid
51-
successfulJobsHistoryLimit: 2
52-
failedJobsHistoryLimit: 2
52+
successfulJobsHistoryLimit: 1
53+
failedJobsHistoryLimit: 1
5354
jobTemplate:
5455
spec:
56+
ttlSecondsAfterFinished: 120
5557
template:
5658
spec:
5759
containers:
@@ -62,13 +64,19 @@ spec:
6264
- /bin/sh
6365
- -c
6466
- |
65-
python manage.py backfill_changesets $(date -d "yesterday" +%Y-%m-%d) $(date +%Y-%m-%d)
67+
YESTERDAY=$(date -d "yesterday" +%Y-%m-%d)
68+
TODAY=$(date +%Y-%m-%d)
69+
70+
python manage.py backfill_changesets "$YESTERDAY" "$TODAY"
71+
EXIT_CODE=$?
72+
73+
exit $EXIT_CODE
6674
envFrom:
6775
- configMapRef:
6876
name: {{ .Release.Name }}-osmcha-common-env
6977
restartPolicy: Never
7078
{{- if .Values.osmchaApi.nodeSelector.enabled }}
7179
nodeSelector:
72-
{{ .Values.osmchaApi.nodeSelector.label_key }} : {{ .Values.osmchaApi.nodeSelector.label_value }}
80+
{{ .Values.osmchaApi.nodeSelector.label_key }}: {{ .Values.osmchaApi.nodeSelector.label_value }}
7381
{{- end }}
7482
{{- end }}

osm-seed/templates/tiler-db/tiler-db-statefulset.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,8 @@ spec:
7979
- name: tiler-db-postgresql-config
8080
mountPath: /etc/postgresql/
8181
{{- end }}
82+
- name: shared-memory
83+
mountPath: /dev/shm
8284
{{- if .Values.tilerDb.resources.enabled }}
8385
resources:
8486
requests:
@@ -101,6 +103,10 @@ spec:
101103
configMap:
102104
name: {{ .Release.Name }}-tiler-db-postgresql-config
103105
{{- end }}
106+
- name: shared-memory
107+
emptyDir:
108+
medium: Memory
109+
sizeLimit: {{ .Values.tilerDb.sharedMemorySize | default "64Mi" }}
104110
{{- if .Values.tilerDb.nodeSelector.enabled }}
105111
nodeSelector:
106112
{{ .Values.tilerDb.nodeSelector.label_key }} : {{ .Values.tilerDb.nodeSelector.label_value }}

osm-seed/templates/tiler-imposm/tiler-imposm-statefulset.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,8 @@ spec:
6969
value: {{ .Values.tilerImposm.env.IMPORT_NATURAL_EARTH | default "true" | quote }}
7070
- name: IMPORT_OSM_LAND
7171
value: {{ .Values.tilerImposm.env.IMPORT_OSM_LAND | default "true" | quote }}
72+
- name: IMPOSM3_IMPORT_LAYERS
73+
value: {{ .Values.tilerImposm.env.IMPOSM3_IMPORT_LAYERS | default "all" | quote }}
7274
- name: CLOUDPROVIDER
7375
value: {{ .Values.cloudProvider }}
7476
# In case cloudProvider=aws

osm-seed/templates/tiler-server/tiler-server-cache-cleaner-deployment.yaml

Lines changed: 3 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -33,53 +33,9 @@ spec:
3333
memory: {{ .Values.tilerServerCacheCleaner.resources.limits.memory }}
3434
cpu: {{ .Values.tilerServerCacheCleaner.resources.limits.cpu }}
3535
{{- end }}
36-
env:
37-
# tiler-db env variables
38-
- name: POSTGRES_HOST
39-
value: {{ .Release.Name }}-tiler-db
40-
- name: POSTGRES_DB
41-
value: {{ .Values.tilerDb.env.POSTGRES_DB }}
42-
- name: POSTGRES_PASSWORD
43-
value: {{ quote .Values.tilerDb.env.POSTGRES_PASSWORD }}
44-
- name: POSTGRES_USER
45-
value: {{ .Values.tilerDb.env.POSTGRES_USER }}
46-
- name: POSTGRES_PORT
47-
value: {{ .Values.tilerDb.env.POSTGRES_PORT | quote }}
48-
# tiler-server env variables
49-
- name: TILER_SERVER_PORT
50-
value: {{ .Values.tilerServer.env.TILER_SERVER_PORT | quote }}
51-
- name: TILER_CACHE_TYPE
52-
value: {{ .Values.tilerServer.env.TILER_CACHE_TYPE }}
53-
- name: TILER_CACHE_REGION
54-
value: {{ .Values.tilerServer.env.TILER_CACHE_REGION }}
55-
- name: TILER_CACHE_BUCKET
56-
value: {{ .Values.tilerServer.env.TILER_CACHE_BUCKET }}
57-
- name: TILER_CACHE_BASEPATH
58-
value: {{ quote .Values.tilerServer.env.TILER_CACHE_BASEPATH }}
59-
- name: TILER_CACHE_AWS_ACCESS_KEY_ID
60-
value: {{ quote .Values.tilerServer.env.TILER_CACHE_AWS_ACCESS_KEY_ID }}
61-
- name: TILER_CACHE_AWS_SECRET_ACCESS_KEY
62-
value: {{ quote .Values.tilerServer.env.TILER_CACHE_AWS_SECRET_ACCESS_KEY }}
63-
- name: TILER_CACHE_MAX_ZOOM
64-
value: {{ quote .Values.tilerServer.env.TILER_CACHE_MAX_ZOOM }}
65-
- name: MAX_NUM_PS
66-
value: {{ quote .Values.tilerServerCacheCleaner.env.MAX_NUM_PS }}
67-
- name: PROCESS_NAME
68-
value: {{ .Values.tilerServerCacheCleaner.env.PROCESS_NAME }}
69-
- name: KILL_PROCESS
70-
value: {{ .Values.tilerServerCacheCleaner.env.KILL_PROCESS }}
71-
- name: CLOUDPROVIDER
72-
value: {{ .Values.cloudProvider }}
73-
# In case cloudProvider=aws
74-
{{- if eq .Values.cloudProvider "aws" }}
75-
- name: AWS_S3_BUCKET
76-
value: {{ .Values.AWS_S3_BUCKET }}
77-
{{- end }}
78-
# In case cloudProvider=gcp
79-
{{- if eq .Values.cloudProvider "gcp" }}
80-
- name: GCP_STORAGE_BUCKET
81-
value: {{ .Values.GCP_STORAGE_BUCKET }}
82-
{{- end }}
36+
envFrom:
37+
- configMapRef:
38+
name: {{ .Release.Name }}-tiler-server-cm
8339
{{- if .Values.tilerServerCacheCleaner.nodeSelector.enabled }}
8440
nodeSelector:
8541
{{ .Values.tilerServerCacheCleaner.nodeSelector.label_key }} : {{ .Values.tilerServerCacheCleaner.nodeSelector.label_value }}
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
{{- if .Values.tilerServer.enabled -}}
2+
apiVersion: v1
3+
kind: ConfigMap
4+
metadata:
5+
name: {{ .Release.Name }}-tiler-server-cm
6+
data:
7+
POSTGRES_HOST: {{ .Release.Name }}-tiler-db
8+
POSTGRES_DB: {{ .Values.tilerDb.env.POSTGRES_DB | quote }}
9+
POSTGRES_PASSWORD: {{ .Values.tilerDb.env.POSTGRES_PASSWORD | quote }}
10+
POSTGRES_USER: {{ .Values.tilerDb.env.POSTGRES_USER | quote }}
11+
POSTGRES_PORT: {{ .Values.tilerDb.env.POSTGRES_PORT | quote }}
12+
TILER_SERVER_PORT: {{ .Values.tilerServer.env.TILER_SERVER_PORT | quote }}
13+
TILER_CACHE_TYPE: {{ .Values.tilerServer.env.TILER_CACHE_TYPE | quote }}
14+
TILER_CACHE_REGION: {{ .Values.tilerServer.env.TILER_CACHE_REGION | quote }}
15+
TILER_CACHE_BUCKET: {{ .Values.tilerServer.env.TILER_CACHE_BUCKET | quote }}
16+
TILER_CACHE_BASEPATH: {{ .Values.tilerServer.env.TILER_CACHE_BASEPATH | quote }}
17+
TILER_CACHE_AWS_ACCESS_KEY_ID: {{ .Values.tilerServer.env.TILER_CACHE_AWS_ACCESS_KEY_ID | quote }}
18+
TILER_CACHE_AWS_SECRET_ACCESS_KEY: {{ .Values.tilerServer.env.TILER_CACHE_AWS_SECRET_ACCESS_KEY | quote }}
19+
TILER_CACHE_MAX_ZOOM: {{ .Values.tilerServer.env.TILER_CACHE_MAX_ZOOM | quote }}
20+
EXECUTE_REINDEX: {{ .Values.tilerServer.env.EXECUTE_REINDEX | default "false" | quote }}
21+
EXECUTE_VACUUM_ANALYZE: {{ .Values.tilerServer.env.EXECUTE_VACUUM_ANALYZE | default "false" | quote }}
22+
CLOUDPROVIDER: {{ .Values.cloudProvider | quote }}
23+
{{- if eq .Values.cloudProvider "aws" }}
24+
AWS_S3_BUCKET: {{ .Values.AWS_S3_BUCKET | quote }}
25+
{{- end }}
26+
{{- if eq .Values.cloudProvider "gcp" }}
27+
GCP_STORAGE_BUCKET: {{ .Values.GCP_STORAGE_BUCKET | quote }}
28+
{{- end }}
29+
{{- end }}

osm-seed/templates/tiler-server/tiler-server-deployment.yaml

Lines changed: 4 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ spec:
3535
httpGet:
3636
path: /
3737
port: {{ .Values.tilerServer.env.TILER_SERVER_PORT }}
38-
initialDelaySeconds: 600 # 10 min, because the compile process takes time.
38+
initialDelaySeconds: 1500
3939
timeoutSeconds: 30
4040
{{- if .Values.tilerServer.resources.enabled }}
4141
resources:
@@ -46,47 +46,9 @@ spec:
4646
memory: {{ .Values.tilerServer.resources.limits.memory }}
4747
cpu: {{ .Values.tilerServer.resources.limits.cpu }}
4848
{{- end }}
49-
env:
50-
# tiler-db env variables
51-
- name: POSTGRES_HOST
52-
value: {{ .Release.Name }}-tiler-db
53-
- name: POSTGRES_DB
54-
value: {{ .Values.tilerDb.env.POSTGRES_DB }}
55-
- name: POSTGRES_PASSWORD
56-
value: {{ quote .Values.tilerDb.env.POSTGRES_PASSWORD }}
57-
- name: POSTGRES_USER
58-
value: {{ .Values.tilerDb.env.POSTGRES_USER }}
59-
- name: POSTGRES_PORT
60-
value: {{ .Values.tilerDb.env.POSTGRES_PORT | quote }}
61-
# tiler-server env variables
62-
- name: TILER_SERVER_PORT
63-
value: {{ .Values.tilerServer.env.TILER_SERVER_PORT | quote }}
64-
- name: TILER_CACHE_TYPE
65-
value: {{ .Values.tilerServer.env.TILER_CACHE_TYPE }}
66-
- name: TILER_CACHE_REGION
67-
value: {{ .Values.tilerServer.env.TILER_CACHE_REGION }}
68-
- name: TILER_CACHE_BUCKET
69-
value: {{ .Values.tilerServer.env.TILER_CACHE_BUCKET }}
70-
- name: TILER_CACHE_BASEPATH
71-
value: {{ quote .Values.tilerServer.env.TILER_CACHE_BASEPATH }}
72-
- name: TILER_CACHE_AWS_ACCESS_KEY_ID
73-
value: {{ quote .Values.tilerServer.env.TILER_CACHE_AWS_ACCESS_KEY_ID }}
74-
- name: TILER_CACHE_AWS_SECRET_ACCESS_KEY
75-
value: {{ quote .Values.tilerServer.env.TILER_CACHE_AWS_SECRET_ACCESS_KEY }}
76-
- name: TILER_CACHE_MAX_ZOOM
77-
value: {{ quote .Values.tilerServer.env.TILER_CACHE_MAX_ZOOM }}
78-
- name: CLOUDPROVIDER
79-
value: {{ .Values.cloudProvider }}
80-
# In case cloudProvider=aws
81-
{{- if eq .Values.cloudProvider "aws" }}
82-
- name: AWS_S3_BUCKET
83-
value: {{ .Values.AWS_S3_BUCKET }}
84-
{{- end }}
85-
# In case cloudProvider=gcp
86-
{{- if eq .Values.cloudProvider "gcp" }}
87-
- name: GCP_STORAGE_BUCKET
88-
value: {{ .Values.GCP_STORAGE_BUCKET }}
89-
{{- end }}
49+
envFrom:
50+
- configMapRef:
51+
name: {{ .Release.Name }}-tiler-server-cm
9052
{{- if .Values.tilerServer.nodeSelector.enabled }}
9153
nodeSelector:
9254
{{ .Values.tilerServer.nodeSelector.label_key }} : {{ .Values.tilerServer.nodeSelector.label_value }}

osm-seed/values.yaml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -376,6 +376,7 @@ tilerDb:
376376
# GCP
377377
GCP_gcePersistentDisk_pdName: osmseed-disk-tilerdb-v1
378378
GCP_gcePersistentDisk_size: 50Gi
379+
sharedMemorySize: 64Mi
379380
resources:
380381
enabled: false
381382
requests:
@@ -423,6 +424,7 @@ tilerImposm:
423424
UPLOAD_EXPIRED_FILES: true
424425
IMPORT_NATURAL_EARTH: true
425426
IMPORT_OSM_LAND: true
427+
IMPOSM3_IMPORT_LAYERS: all
426428
persistenceDisk:
427429
enabled: false
428430
accessMode: ReadWriteOnce
@@ -469,6 +471,8 @@ tilerServer:
469471
TILER_CACHE_REGION: us-east-1
470472
TILER_CACHE_AWS_ACCESS_KEY_ID: xyz
471473
TILER_CACHE_AWS_SECRET_ACCESS_KEY: xyz/q
474+
EXECUTE_REINDEX: false
475+
EXECUTE_VACUUM_ANALYZE: false
472476
command: "./start.sh" # ./start.sh & ./tile_cache_downloader.sh & ./expire-watcher.sh
473477
# In case you use TILER_CACHE_TYPE: file with persistenceDisk
474478
persistenceDisk:
@@ -526,6 +530,21 @@ tilerServerCacheCleaner:
526530
minReplicas: 1
527531
maxReplicas: 2
528532
cpuUtilization: 60
533+
534+
tilerCacheCleanerJob:
535+
enabled: false
536+
tilesFile: imposm/imposm3_expire_dir/latest.tiles
537+
minZoom: 0
538+
maxZoom: 20
539+
overwrite: true
540+
resources:
541+
enabled: false
542+
requests:
543+
memory: "1Gi"
544+
cpu: "500m"
545+
limits:
546+
memory: "2Gi"
547+
cpu: "1"
529548
# ====================================================================================================
530549
# Variables for Tasking Manager DB
531550
# ====================================================================================================

0 commit comments

Comments
 (0)