Deployment: VM, Bare Metal, Kubernetes & OpenShift

Enterprise Java muss verschiedene Betriebsumgebungen erklären können: VM, Bare Metal, Kubernetes und OpenShift.

VMBare MetalKubernetesOpenShift
Deployment-Ziele vergleichen
Deployment-Ziele vergleichen

Vergleich

ZielVorteilRisiko
VMBekannt, stabil, guter EinstiegManuelles Scaling, driftende Konfiguration
Bare MetalVolle Kontrolle, PerformanceBetriebsaufwand hoch
KubernetesPortabilität, OrchestrierungKomplexität, Plattformwissen nötig
OpenShiftEnterprise-Plattform, Security, OperatorsLizenz/Plattformbetrieb einplanen

VM

VMs eignen sich für klassische Enterprise-Deployments, Migrationen und Systeme mit niedriger Änderungsrate.

Bare Metal

Bare Metal ist sinnvoll, wenn Hardwarekontrolle, spezielle Latenz oder Kosteneffizienz bei hoher Auslastung wichtig sind.

Kubernetes

Kubernetes bringt Scheduling, Service Discovery, Self-Healing, Secrets, ConfigMaps und Rollouts.

OpenShift

OpenShift ergänzt Kubernetes um Enterprise-Funktionen wie Security-Konventionen, Routes, Build/Deployment-Integration, Operatoren und Plattform-Governance.

Strategie

Deployment-Grundstruktur
apiVersion: apps/v1
kind: Deployment
metadata:
  name: order-service
spec:
  replicas: 3
  template:
    spec:
      containers:
        - name: order-service
          image: registry.example.com/order-service:1.0.0
          readinessProbe:
            httpGet:
              path: /actuator/health/readiness
              port: 8080
          resources:
            requests:
              cpu: "250m"
              memory: "512Mi"
⌂ Cockpit