Version 4 · Migration

Konfiguration, Secrets und Bindings

JNDI, web.xml, serverseitige DataSources und Admin-Console-Einstellungen werden in versionierbare und sichere OpenShift-Konfiguration überführt.

Migration-ÜbersichtStartseite
Problem alter Konfiguration

Legacy-Anwendungen sind oft nur zusammen mit der Application-Server-Konfiguration vollständig. Ohne JNDI-Namen, Connection Pools, Work Manager, JAAS-Rollen, Keystores und Custom Properties ist der Code nicht ausführbar.

Vorher: web.xml / Deployment Descriptor
Vorher: Servernahe Konfiguration
<resource-ref>
  <res-ref-name>jdbc/LegacyDS</res-ref-name>
  <res-type>javax.sql.DataSource</res-type>
  <res-auth>Container</res-auth>
</resource-ref>
<env-entry>
  <env-entry-name>billing.cutoff.hour</env-entry-name>
  <env-entry-type>java.lang.Integer</env-entry-type>
  <env-entry-value>22</env-entry-value>
</env-entry>
Nachher: ConfigMap und Secret
Nachher: Umgebungskonfiguration und geheime Werte
apiVersion: v1
kind: ConfigMap
metadata:
  name: billing-config
data:
  BILLING_CUTOFF_HOUR: "22"
  HOST_POLICY_ENDPOINT: "https://legacy-gateway/policy"
---
apiVersion: v1
kind: Secret
metadata:
  name: billing-secrets
type: Opaque
stringData:
  DB_USERNAME: "billing_app"
  DB_PASSWORD: "change-me-in-secret-store"
Regeln für saubere Migration
RegelBegründung
Keine Passwörter im GitSecrets nur über Secret-Management oder OpenShift Secret, nicht in Klartext-Repos.
Konfiguration typisierenTechnische Endpunkte, fachliche Schwellwerte und Betriebsparameter getrennt halten.
JNDI entkoppelnJNDI-Namen nicht durch die Domäne ziehen, sondern in Adapter legen.
Profile klein haltenNicht für jede Umgebung Codepfade bauen, sondern Konfiguration injizieren.
⌂ Cockpit