Files
azure-ki-infrastruktur/anfragen-an-ki/azure_ai_architecture_gpt-oss-20b.md
T

207 lines
12 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Azure AI Architektur – EU‑konform, ISO 27001 & DORA bereit
## 1. Hoch‑Level Architekturdiagramm (Mermaid)
```mermaid
flowchart TD
%% Externer Verkehr
Internet([Internet]) --> WAF[WAF / Prompt‑Firewall]
WAF --> LB[TLS‑Terminierende Lastenausgleichung]
%% API-Schicht
LB --> APIGW[Azure API Management (LLM‑Router)]
APIGW --> AKS[Kubernetes Cluster]
%% KI‑Kernservices
AKS -->|LLM Adapter| AOAI[Azure OpenAI]
AKS --> AIEngine[Agentic KI‑Engine]
AIEngine -->|Prompt‑Routing| PromptFirewall
AIEngine -->|Modells­scanning| SecScanner[KI‑Modell & Schnittstellen‑Scanner]
%% Daten­schicht
subgraph DB[Datenlager]
SQL[Azure SQL Database]:::db
NoSQL[Cosmos DB (NoSQL)]:::db
Blob[Azure Blob Storage]:::db
VectDB[Qdrant in AKS (Vektor‑DB)]:::db
Redis[Azure Cache for Redis]:::db
GraphDB[Azure Cosmos DB (Gremlin API)]:::db
end
%% Big‑Data Pipeline
subgraph BD[Big‑Data & Streaming]
Synapse[Azure Synapse Analytics]:::pipeline
Databricks[Azure Databricks]:::pipeline
Kafka[Apache Kafka (AKS)]:::pipeline
EH[Event Hubs]:::pipeline
end
%% Beobachtbarkeit & Sicherheit
subgraph OBS[Beobachtbarkeit]
Monitor[Azure Monitor]:::obs
AppInsights[Application Insights]:::obs
Grafana[Grafana auf AKS]:::obs
end
subgraph SEC[Sicherheit & Compliance]
Defender[Defender for Cloud]:::sec
SecCenter[Azure Security Center]:::sec
Bastion[Bastion Host]:::sec
KeyVault[Key Vault]:::sec
end
%% Orchestrierung & CI/CD
subgraph DEV[DevOps]
DevOps[Azure DevOps Pipelines]:::dev
Terraform[Terraform (IaC)]:::dev
end
%% IAM & PAM
subgraph AUTH[Identität]
AD[AAD]:::auth
PIM[Azure PIM]:::auth
end
%% Queue & Messaging
subgraph MQ[Messaging]
SB[Service Bus]:::mq
EH --> SB
end
%% Verbindungen
APIGW -->|Auth via AAD| AUTH
AKS -->|Secrets from KV| KeyVault
SecScanner -->|Logs to Monitor| Monitor
AIEngine -->|Telemetry| AppInsights
DevOps -->|Terraform| AKS
DEV -->|Deploy to AKS| AKS
DB -->|Access via Managed Identities| AKS
BD -->|Ingress to AKS| AIEngine
OBS -->|Logs & Metrics| Monitor
SEC -->|Policy Enforcement| Defender
```
```css
/* Mermaid diagram styles */
%% {font-family: monospace;}
```
::: note
Das Diagramm ist bewusst vereinfacht – die reale Bereitstellung enthält zusätzliche Schichten wie interne VNET‑Peering, Azure Front Door für globale Routing und ggf. einen Azure AD Application Proxy.
:::
## 2. Schichtbeschreibungen
| Schicht | Zweck | Kern‑Azure‑Dienste |
|---------|-------|---------------------|
| **Frontend** | TLS‑Terminierung, Ratenbegrenzung und WAF‑Schutz für gesamten eingehenden Verkehr. | Azure Front Door (oder Application Gateway mit WAF), TLS‑Terminierung via Azure Key Vault Zertifikate |
| **API‑Schicht** | Öffentlicher API‑Gateway, Routing zu LLM‑Router und internen Diensten. | Azure API Management (APIM), OpenAPI Definitionen, JWT‑Validierung via AAD |
| **KI‑Kern** | Ausführung von agentischen KI‑Workloads und LLM‑Inference. | Azure Kubernetes Service (AKS), Azure OpenAI, kundenspezifische Container‑Images für Agenten |
| **Sicherheit & Scanning** | Kontinuierliches Scannen von Modellen und Schnittstellen, Schutz vor bösartigen Prompts. | Azure Defender for Container Apps (oder AKS), benutzerdefinierte Prometheus Exporter, Azure Sentinel Logs |
| **Daten‑Schicht** | Persistente Speicherung für strukturierte und unstrukturierte Daten. | Azure SQL Database, Cosmos DB (SQL & Gremlin APIs), Blob Storage, Qdrant (Vektor‑DB) in AKS, Redis Cache |
| **Big Data & Streaming** | ETL‑Pipelines und Echtzeit‑Analytics. | Azure Synapse Analytics, Azure Databricks, Apache Kafka auf AKS, Event Hubs |
| **Beobachtbarkeit** | Metriken, Logs und Dashboards. | Azure Monitor, Application Insights, Grafana auf AKS |
| **Compliance & Sicherheit** | Richtlinien‑Durchsetzung, Schwachstellenmanagement. | Azure Defender for Cloud, Azure Security Center, Bastion Host, Key Vault |
| **Identität & Zugriff** | Rollenbasierter Zugriff und privilegiertes Identitäts‑Management. | Azure AD, Azure AD Connect (LDAP‑Sync), Azure PIM |
| **DevOps** | CI/CD, IaC und automatisierte Tests. | Azure DevOps Pipelines, Terraform, GitHub Actions (falls verwendet) |
| **Messaging** | Entkoppelter Austausch zwischen Diensten. | Azure Service Bus, Event Hubs |
## 3. Komponenten‑Mapping & Zweck (Anforderung‑nach‑Anforderung)
| Anforderung | Azure‑Dienst | Warum er die Anforderung erfüllt |
|--------------|---------------|------------------------------------|
| **AKS mit KI‑Workern** | AKS | Managed Kubernetes, Auto‑Scaling, Integration mit Azure AD für RBAC |
| **Agentic KI + LLM Adapter** | Azure OpenAI + kundenspezifischer Container in AKS | Native LLM‑Unterstützung, keine externe PaaS |
| **WAF & Prompt‑Firewall** | Azure Front Door (WAF) + benutzerdefinierte ASP.NET Core Middleware in AKS | Layer‑7‑Filterung, Prompt‑Validierung |
| **KI‑Modell & Schnittstellen Scanning** | Azure Defender for Cloud (Container) + benutzerdefinierter Scanner‑Service | Kontinuierliche Schwachstellenbewertung |
| **Frontend + Load Balancer** | Azure Application Gateway (WAF) oder Front Door + TLS‑Terminierung via Key Vault |
| **LLM‑Router & API Gateway** | Azure APIM + benutzerdefinierte Routing‑Logik in AKS | Richtlinienbasierter Routing, Throttling |
| **IAM (RBAC, LDAP via AAD Connect)** | Azure AD + Azure AD Connect | Einheitliche Identität, rollenbasierter Zugriff |
| **PAM (Azure PIM)** | Azure Privileged Identity Management | Just‑in‑Time Zugriff, MFA |
| **SQL / NoSQL / Blob / Vektor‑DB / Redis / Graph** | Azure SQL, Cosmos DB (Core & Gremlin), Blob Storage, Qdrant in AKS, Azure Cache for Redis | Native Speicher‑Dienste, S3‑Kompatibilität via Blob API |
| **Big‑Data Pipeline** | Synapse, Databricks, Kafka (AKS), Event Hubs | Unified Analytics Plattform |
| **Logging & Monitoring** | Azure Monitor, Application Insights, Grafana | Metriken, Logs, Dashboards |
| **Vulnerability Management** | Defender for Cloud + Azure Security Center | Kontinuierliche Bewertung, Compliance‑Scans |
| **Queue‑Services** | Service Bus / Event Hubs | Zuverlässige Messaging |
| **Build/Test/Deploy KI‑Agenten** | Azure DevOps Pipelines, Terraform | CI/CD + IaC |
| **Bastion Host** | Azure Bastion | Sicherer RDP/SSH Zugriff |
| **Splunk SIEM** | Optional: Splunk Enterprise auf AKS oder Azure Sentinel (SIEM) |
| **Public/private Zertifikate** | Key Vault + Azure Front Door | Managed Zertifikate |
## 4. Konfigurationshinweise
### 4.1 Azure Policy & Blueprints
| Richtlinie | Ziel | Durchsetzung |
|------------|------|--------------|
| **Erlaubte Standorte** | Alle Ressourcen | Verhindert Deployments außerhalb von EU‑Regionen |
| **Tagging‑Anforderung** | Alle Ressourcen | Erfordert `Owner`, `Environment`, `Compliance` Tags |
| **Erlaubte SKUs** | AKS, Azure SQL, Cosmos DB | Beschränkt auf EU‑Datencenter SKUs |
| **Daten­residenz** | Storage Accounts | Erzwingt `DataLocation=EU` |
| **Key Vault‑Secret‑Schutz** | Key Vault | Erzwingt `SoftDelete`, `PurgeProtection` |
Verwende **Azure Blueprints**, um die Basis (VNET, NSG, Key Vault, AAD Connect) vor‑bereit zu stellen.
### 4.2 RBAC & Managed Identities
- **AKS‑Cluster**: Aktiviere `Azure AD Integration` und weise die Rolle *Azure Kubernetes Service RBAC* AAD‑Gruppen zu.
- **Service Principals**: Nutze *Azure AD App‑Registrierungen* für API Management und DevOps Pipelines. Erteile minimalen Rollenumfang (z.B. `Reader`, `Contributor` auf spezifische Resource Groups).
- **Managed Identities**: Aktiviere sie für AKS‑Nodes, Databricks‑Workspaces und Synapse‑Pipelines, um Key Vault‑Secrets, Storage Accounts und Datenbanken zu nutzen.
- **Privileged Identity Management**: Aktiviere JIT für *Owner* Rollen auf Produktions‑Resource Groups.
### 4.3 Key Vault Secrets & Zertifikate
- Speichere alle Verbindungszeichenketten, API‑Keys (Azure OpenAI) und TLS‑Zertifikate im **Key Vault**.
- Aktiviere *SoftDelete* + *PurgeProtection*.
- Verwende **Key Vault‑References** in ARM/Terraform (z.B. `@Microsoft.KeyVault(????)`) zur Laufzeit‑Injektion.
- Für TLS‑Terminierung importiere Zertifikate in Key Vault und referenziere sie im Front Door oder Application Gateway.
### 4.4 Netzwerke & Isolation
- Stelle alle Ressourcen in ein **VNet** mit Subnetzen: `api`, `k8s`, `storage`, `data‑lake`, `monitor`.
- Nutze **Network Security Groups** (NSGs) und **Azure Firewall**, um Egress/Ingress zu beschränken. Erlaube nur benötigte Ports (80, 443, 6443 für AKS etc.).
- Aktiviere **Private Endpoints** für alle Storage Accounts und Datenbanken, um Traffic ins öffentliche Internet zu vermeiden.
- Verwende **Service Tags** (z.B. `AzureCloud`, `AzureKeyVault`) in NSGs.
### 4.5 Logging & Retention
- **Azure Monitor**: Aktiviere Diagnose‑Logs für alle Ressourcen. Speichere Logs in einem dedizierten Log Analytics Workspace mit Retention von 90 Tagen (oder länger, falls EU‑AI Act erfordert).
- **Application Insights**: Aktiviere Telemetrie für API Gateway und AKS‑Workloads. Nutze benutzerdefinierte Dimensionen, um Anfragen nach `model_id` zu taggen.
- **Azure Sentinel**: Ingestiere Logs von Key Vault, Defender, APIM und AKS. Erstelle Playbooks für automatisierte Incident‑Response.
- **Splunk**: Falls nötig, betreibe Splunk Enterprise auf separatem AKS‑Cluster und ingestiere Daten über Splunk Connect for Microsoft Azure.
## 5. Compliance‑Check‑Plan
| Aspekt | Check | Tool / Artefakt |
|--------|-------|-----------------|
| **EU‑AI Act** | Modell‑Governance, Audit‑Trail, Bias‑Testing | Azure Machine Learning Model Registry, benutzerdefinierte Logging in APIM |
| **DSGVO** | Datenminimierung, Consent‑Management | Azure Key Vault für Verschlüsselungs­schlüssel, Azure AD Consent Framework |
| **DORA** | Release‑Frequency, Deployment‑Automation | Azure DevOps Pipelines Metriken, Git Commit History |
| **NIS 2** | Incident‑Response, Supply‑Chain‑Security | Azure Sentinel Playbooks, Defender for Cloud Alerts |
| **ISO 27001** | Informationssicherheits‑Management | ISO‑27001 Audit‑Templates, Azure Policy Compliance Dashboard |
### 5.1 Periodische Audits
- **Quartalsweise**: Führe Azure Policy Compliance Scans durch, überprüfe IAM‑Rollenvergabe.
- **Halbjährlich**: Führe Penetration‑Tests am API Gateway und AKS Cluster durch, verifiziere Key Vault Secret Rotation.
- **Jährlich**: Führe vollständigen ISO 27001 Audit durch, EU‑AI Act Modell‑Compliance Review.
### 5.2 Monitoring & Alerting
- **Security Alerts**: Defender for Cloud + Azure Sentinel erzeugen Alarme bei anomalen Logins, Schwachstellen‑Ergebnissen.
- **Compliance Alerts**: Policy‑Verletzungen lösen Alarme in Azure Monitor aus und senden Benachrichtigungen an das Compliance‑Team.
- **Operational Alerts**: APIM Throttling, AKS Node‑Fehler, Datenbankverbindungsfehler.
## 6. Bereitstellungs‑Blueprint (IaC)
- **Terraform‑Module** für VNet, Subnetze, NSGs, Key Vault, AKS, APIM, Cosmos DB.
- **ARM‑Templates** für Azure AD Connect und Key Vault‑References.
- **Azure DevOps Pipelines**: getrennte Pipelines für Infrastruktur (IaC) und Anwendung (Container‑Build, Push zu ACR, Deploy zu AKS).
- **CI Secrets**: gespeichert im Key Vault und über Azure DevOps Service‑Connections abgerufen.
## 7. Nächste Schritte
1. Erstelle das **Azure Blueprint** für Basis‑Compliance.
2. Deploye **VNet** und **NSGs** mit den oben genannten Regeln.
3. Erstelle **Key Vault**, importiere Zertifikate, erstelle Secrets für OpenAI‑Keys.
4. Deploye **AKS** mit Azure AD Integration und Managed Identities.
5. Richte **Azure APIM** ein, konfiguriere Policies (Rate‑Limit, JWT‑Validierung).
6. Deploye **KI‑Engine** Container‑Images zu AKS.
7. Konfiguriere **Azure Sentinel** mit Log‑Connectors.
8. Führe Compliance‑Scan-Suite aus und behebe eventuelle Lücken.
---
> *Alle Dienste werden in EU‑Regionen (z. B. West Europe, North Europe) gehostet, um Daten‑Residency‑Anforderungen zu erfüllen.*