Deployment checkliste
1. Erwartungsmanagement & Organisation / Projekt-Setup
- Verfügbare Ressourcen, Tools und Umgebungen (Test, Staging, Produktion) mit notwendigen Ressourcen abgleichen.
- Deployment-Plan erstellen (Zeitplan, Verantwortlichkeiten, Abhängigkeiten).
- Rollen und Ansprechpartner festlegen (Infrastruktur, Sicherheit, Betrieb, Datenschutz).
- Update-Strategie festlegen (Downtime, Wartungsfenster, Rollback-Verfahren).
- Klären, wie Wartung und Betrieb gehandhabt wird.
- Technische Kontaktperson benennen und Kommunikationskanal (z. B. Webex, E-Mail) bereitstellen.
- Kommunikationswege und Ablageorte definieren (z. B. Teams, Wiki, GitLab).
2. Umgebung & Infrastruktur
- Betriebsort des Systems festlegen (Rechenzentrum, Cloud oder Hybrid).
- Internetverbindung ist sichergestellt, um Container-Images und KI-Modelle laden zu können. Falls keine Internetverbindung besteht, muss dafür gesorgt werden, dass nötige Images und KI-Modelle auf der Plattform verfügbar sind (z. B. separates Artifactory).
GPU- und Orchestrierungsumgebung
- GPU-Software-Stack installieren und prüfen: NVIDIA-Treiber, CUDA-Toolkit.
- Orchestrierung bereitstellen:
- Kubernetes- oder OpenShift-Cluster für Test-, eventuell Staging-, und Produktionsumgebung.
- Kubernetes NVIDIA Device Plugin installieren.
- Optional: GPU-Ressourcen per vGPU oder MIG-Slicing teilen.
Systemressourcen
- Testsystem bereitstellen: (Bereitstellung einer Testumgebung wird dringend empfohlen)
- 16 vCPU, 16 GB RAM, 240 GB Speicherplatz
- Optional: 1–2 GPUs (24–48 GB VRAM)
- Modell-Bereitstellung via Ollama/vLLM: Llama 3.3 8B, jina-embeddings-v2-base-de
- Produktivsystem bereitstellen: (dieselben Ressourcen gelten für das Stagingsystem)
- 16 vCPU, 16 GB RAM, 240 GB Speicherplatz
- 2 × L40s (48 GB VRAM) für Parser und RAG (stärkere GPUs wie H100 wären besser, aber nicht zwingend notwendig)
- Empfohlen: + 1 × H100 GPU für On-Premise-Hosting des LLM, für Llama 3.3 70B unbedingt empfohlen
- Modell-Bereitstellung via vLLM: Llama 3.3 70B, jina-embeddings-v2-base-de auf GPU (Ollama wird für den Produktivbetrieb nicht empfohlen)
Zugriffe & Freigaben
- Zugriff gewährleisten (VPN, Benutzerkonten, Adminrechte für Deployments, ConfigMaps, Secrets, Services, Routen).
- Technische Eignung der bereitgestellten Umgebung prüfen und bestätigen.
3. Software & Deployment
- Container- und Deployment-Tools installieren: Docker, containerd, kubectl, helm / oc.
- Repository-Zugriff und CI/CD-Pipeline einrichten:
- "Maintainer"-Zugriff auf Projekt-Repository sicherstellen.
- CI/CD-Pipeline funktionsfähig konfigurieren (z. B. GitLab Runner oder lokale Pipeline).
- Testlauf mit Dummy-Build erfolgreich durchführen.
- Deployment über GitOps oder Container-Pipeline ermöglichen (optional, empfohlen).
- Container-Registry bereitstellen (z. B. GitLab Registry, Harbor, JFrog).
- Docker Hub-Limits berücksichtigen (lokale Registry empfohlen).
4. Sicherheit & Zugriffsrechte
- Alle Zugangsdaten, Zertifikate und Berechtigungen für Test-, eventuell Staging-, und Produktionsumgebungen dokumentieren und sicher hinterlegen.
- Sicherheitsrichtlinie zum Umgang mit Passwörtern, API-Keys und Secrets implementieren.
- Zugänge für Testnutzende bereitstellen (Logins, IP-Freigaben, Passwortverteilung).
5. Funktionstests & Testbetrieb
- Grundfunktionstest nach Deployment durchführen (UI, API, Logging).
- Monitoring aktivieren (z. B. Prometheus, monit).
- Log-Speicherung und Fehleranalyse sicherstellen.
- Testmanagement festlegen (Ticket-System, Verantwortlichkeiten, Supportprozess).
- Einfache Belastungstests durchführen und Ergebnisse dokumentieren.
- Optional: Richtige Stresstests mithilfe z. B. k6 von Grafana durchführen.