Repository voor meerdere FME Server versies als Helm charts.
Voor automatische GitOps deployment van alle versies:
# Deploy alle versies met ApplicationSet
kubectl apply -f argocd/applicationset.yaml
# Of deploy enkele versie
kubectl apply -f argocd/application.yamlπ Zie docs/ARGOCD.md voor complete ArgoCD guide
Voor directe deployment met Helm CLI:
helm install fmeserver-prod ./charts/fmeserver-2025.2 \
-n itl-fme-prod-2025-2 --create-namespaceπ Zie docs/DEPLOYMENT.md voor Helm deployment guide
ITL.FMEServer/
βββ argocd/ # π ArgoCD configuratie
β βββ applicationset.yaml # Deploy alle versies
β βββ application.yaml # Deploy enkele versie
βββ charts/
β βββ fmeserver-2023.2/ # FME Server 2023.2.x (Development)
β β βββ Chart.yaml
β β βββ values.yaml
β β βββ charts/ # Dependencies (lokaal)
β β βββ templates/
β βββ fmeserver-2024.0/ # FME Flow 2024.0.x (Test)
β β βββ Chart.yaml
β β βββ values.yaml
β β βββ charts/ # Dependencies (lokaal)
β β βββ templates/
β βββ fmeserver-2024.2/ # FME Flow 2024.2.x (Staging)
β β βββ Chart.yaml
β β βββ values.yaml
β β βββ charts/ # Dependencies (lokaal)
β β βββ templates/
β βββ fmeserver-2025.2/ # FME Flow 2025.2.x (Production - Latest)
β βββ Chart.yaml
β βββ values.yaml
β βββ charts/ # Dependencies (lokaal)
β βββ templates/
βββ docs/ # π Alle documentatie
β βββ README.md # Documentatie index
β βββ ARGOCD.md # ArgoCD deployment guide
β βββ DEPLOYMENT.md # Helm deployment guide
β βββ VERSIONS.md # Versie vergelijking
β βββ OFFLINE_DEPLOYMENT.md # Air-gapped setup
β βββ SETUP_COMPLETE.md # Migration guide
βββ examples/ # π‘ FME Workspace voorbeelden
β βββ README.md # Voorbeeld projecten documentatie
β βββ brandweer-noodsteunpunten.fmw # Calamiteitenbeheer workspace
β βββ database_setup.sql # PostgreSQL/PostGIS schema setup
βββ archive/ # Oude chart backup
βββ .gitignore
βββ README.md # Dit bestand
# FME Server 2023.2
helm install fmeserver-dev ./charts/fmeserver-2023.2 \
-f ./charts/fmeserver-2023.2/values.yaml \
-n itl-fme-dev-2023-2 --create-namespace
# FME Server 2024.0
helm install fmeserver-test ./charts/fmeserver-2024.0 \
-f ./charts/fmeserver-2024.0/values.yaml \
-n itl-fme-test-2024-0 --create-namespace
# FME Server 2024.2 (nieuwste)
helm install fmeserver-prod ./charts/fmeserver-2024.2 \
-f ./charts/fmeserver-2024.2/values.yaml \
-n itl-fme-staging-2024-2 --create-namespace# Upgrade naar nieuwere patch versie binnen zelfde major/minor
helm upgrade fmeserver-dev ./charts/fmeserver-2023.2 \
-f ./charts/fmeserver-2023.2/values.yaml \
-n itl-fme-dev-2023-2
# Migratie naar nieuwe major/minor versie
# 1. Backup huidige installatie
# 2. Deploy nieuwe versie in nieuwe namespace
# 3. Migreer data
# 4. Switch DNS/ingresshelm list -A | grep fmeserver| Omgeving | Versie | Namespace | Hostname |
|---|---|---|---|
| Development | 2023.2.3 | itl-fme-dev-2023-2 | fme-2023-2.itlusions.nl |
| Test | 2024.0.x | itl-fme-test-2024-0 | fme-2024-0.itlusions.nl |
| Staging | 2024.2.x | itl-fme-staging-2024-2 | fme-2024-2.itlusions.nl |
| Production | 2025.2.x | itl-fme-prod-2025-2 | fme-2025-2.itlusions.nl |
Namespace Patroon: itl-fme-{env}-{version}
-
Kopieer bestaande chart:
cp -r charts/fmeserver-2024.2 charts/fmeserver-2025.2
-
Update Chart.yaml:
name: fmeserver-2025-2 appVersion: "2025.2" dependencies: - name: fmeserver-2025-2 repository: https://safesoftware.github.io/helm-charts version: x.x.x
-
Update values.yaml:
# Voor 2023.2 (oude fmeserver chart): fmeserver-2023-2: fmeserver: image: tag: "2023.2.x" # Voor 2024.0+ (nieuwe fmeflow chart): fmeflow: fmeserver: image: tag: "2025.2.0"
-
Test deployment:
helm install fmeserver-test ./charts/fmeserver-2024.2 \ --dry-run --debug
Wanneer een versie niet meer ondersteund wordt:
# 1. Verwijder deployment
helm uninstall fmeserver-old -n fmeserver-old-ns
# 2. Verwijder namespace (inclusief PVCs)
kubectl delete namespace fmeserver-old-ns
# 3. Verwijder chart directory (optioneel, voor archivering)
# mv charts/fmeserver-2023.0 archive/Check SafeSoftware Helm Charts voor updates:
helm repo add safesoftware https://safesoftware.github.io/helm-charts
helm repo update
helm search repo safesoftware/fmeserver --versionsElke chart heeft eigen values.yaml met omgeving-specifieke configuratie:
- Database credentials (per omgeving verschillend)
- Hostname/Ingress (dev/test/prod URLs)
- Resource limits (dev heeft minder, prod heeft meer)
- Storage size (dev klein, prod groot)
- Engine configuration (aantal workers)
-
Backup maken:
# Backup FME Server data via web interface # Of backup PostgreSQL database kubectl exec -n fmeserver-dev fmeserver-core-0 -- \ pg_dump -U fmeserver fmeserver > backup.sql
-
Deploy nieuwe versie in parallel:
helm install fmeserver-2024 ./charts/fmeserver-2024.0 \ -n fmeserver-2024 --create-namespace
-
Migreer data:
- Via FME Server Migration API
- Of restore database backup in nieuwe instance
-
Cutover:
- Update DNS/Ingress naar nieuwe versie
- Monitor en valideer
- Oude versie in standby voor rollback
# Verify chart structure
helm lint ./charts/fmeserver-2023.2
# Check dependencies
helm dependency update ./charts/fmeserver-2023.2# Debug met dry-run
helm install fmeserver-dev ./charts/fmeserver-2023.2 \
-f ./charts/fmeserver-2023.2/values.yaml \
--dry-run --debug > output.yaml
# Check generated manifests
cat output.yaml# Gebruik verschillende namespaces per versie
helm install fmeserver-2023 ./charts/fmeserver-2023.2 -n fmeserver-2023
helm install fmeserver-2024 ./charts/fmeserver-2024.0 -n fmeserver-2024β Gebruik semantic versioning voor chart versies β Elke major/minor FME versie krijgt eigen chart directory β Test nieuwe versies in dev/test voor productie β Documenteer breaking changes in Chart.yaml β Gebruik namespaces om versies te isoleren β Maak backups voor migratie β Upgrade NIET in-place tussen major versies β Share GEEN databases tussen versies
π‘ FME Workspace voorbeelden: Zie examples/README.md
De examples/ folder bevat complete FME workspace voorbeelden met database setup scripts:
Complete workflow voor Nederlandse calamiteitenbeheer data:
Features:
- Multi-source data reading (PostgreSQL, WFS, CSV, GeoJSON)
- Spatial processing (RD New β WGS84 transformatie)
- Bereikbaarheidsanalyse (5km bufferzones)
- PostGIS output met spatial indexing
Bestanden:
examples/brandweer-noodsteunpunten.fmw- FME Workspace (2023.2+)examples/database_setup.sql- Complete PostGIS database setupexamples/README.md- Volledige documentatie met:- Database setup instructies
- FME Desktop & Server deployment
- Kubernetes/ArgoCD integration
- Sample queries en troubleshooting
- QGIS/Leaflet integration voorbeelden
Quick Start:
# 1. Setup database
psql -h localhost -U postgres -d calamiteiten -f examples/database_setup.sql
# 2. Open workspace in FME Workbench
fme.exe examples/brandweer-noodsteunpunten.fmw
# 3. Of deploy naar FME Server
# Zie examples/README.md voor detailsπ Lees de volledige documentatie β
| FME Server | Kubernetes | Helm | PostgreSQL |
|---|---|---|---|
| 2023.2.x | 1.24-1.28 | 3.x | 13-15 |
| 2024.0.x | 1.25-1.29 | 3.x | 14-16 |
| 2024.2.x | 1.27-1.30 | 3.x | 15-16 |
| 2025.2.x | 1.28-1.31 | 3.x | 16-17 |
- FME Server Admin: FME Team
- Kubernetes Admin: Platform Team
- Chart Maintenance: DevOps Team
π Volledige documentatie: Zie docs/README.md voor een georganiseerd overzicht
- docs/README.md - π Documentatie index en navigatie guide
- docs/OFFLINE_DEPLOYMENT.md - π Air-gapped deployment (dependencies lokaal)
- docs/VERSIONS.md - π Versie verschillen en upgrade paden
- docs/DEPLOYMENT.md - βοΈ Deployment voorbeelden en commando's
- docs/SETUP_COMPLETE.md - π Migratie guide en repository structuur
- 2023.2: Gebruikt
fmeserver-2023-2upstream chart - 2024.0+: Gebruikt
fmeflowupstream chart (versies 1.0.7 / 2.9.0)
Onze wrapper charts blijven fmeserver-* heten voor consistentie en backwards compatibility.