DataSunrise erreicht AWS DevOps Kompetenz Status in AWS DevSecOps und Überwachung, Protokollierung, Performance

DataSunrise auf Kubernetes mit dem Helm-Chart ausführen

DataSunrise auf Kubernetes mit dem Helm-Chart ausführen

Einleitung

Die Bereitstellung von Anwendungen in Kubernetes kann komplex sein und erfordert detaillierte Kenntnisse über die verschiedenen Komponenten und deren Funktionen. Helm vereinfacht diesen Prozess, indem es die Bereitstellung in Kubernetes unkompliziert und handhabbar macht. Anstatt manuell mehrere YAML-Manifeste für jedes Kubernetes-Objekt zu erstellen und zu pflegen, fasst Helm alles in einem einzigen Paket zusammen, das einfach in Ihren Kubernetes-Cluster bereitgestellt werden kann. Dies reduziert die Zeit und Komplexität bei der Verwaltung von Kubernetes-Anwendungen erheblich.

DataSunrise hat ein Helm-Chart erstellt, um die einfache Installation und den Betrieb von DataSunrise in Kubernetes zu erleichtern. Helm vereinfacht die Verwaltung von Kubernetes-Anwendungen, indem es den Bereitstellungsprozess für DataSunrise vereinfacht und vereinheitlicht. Mit Helm können Sie DataSunrise je nach Bedarf in jeder Ihrer Kubernetes-Umgebungen installieren und aktualisieren, einschließlich Cloud-Anbietern wie AWS EKS, Azure AKS und Google Cloud GKE Clustern. Das Chart unterstützt mehrere Anwendungsfälle basierend auf den bereitgestellten Werten.

Zentrale Funktionen des DataSunrise Helm-Charts

Das DataSunrise Helm-Chart bietet mehrere zentrale Funktionen, die seine Funktionalität und Benutzerfreundlichkeit erhöhen:

  • Proxy-Funktionalität: Ein Proxy wird auf jedem Node eingesetzt, und Kubernetes übernimmt das Load-Balancing zwischen ihnen, was für eine effiziente Verteilung des Datenverkehrs und eine verbesserte Leistung sorgt.

  • Autoscaling: Nutzt leistungsstarke Sensitive Data Discovery, um automatisch neue Pods zum Cluster hinzuzufügen, wenn Spitzenlasten auftreten, und sorgt so für eine optimale Ressourcennutzung und konsistente Leistung.

  • Einfache Installation: Das Helm-Chart kann einfach über die Artifact Hub-Anwendung installiert werden, was die Bereitstellung und Verwaltung von DataSunrise in Kubernetes erleichtert.

Voraussetzungen

Unser Helm-Chart funktioniert sowohl mit Vanilla Kubernetes als auch mit verwalteten Kubernetes-Diensten wie AWS EKS, Azure AKS und Google Cloud GKE. Für diesen Leitfaden verwenden wir AWS EKS, um die Bereitstellungsschritte zu demonstrieren.

Sie benötigen die folgenden Komponenten in Ihrer Umgebung:

  1. EKS Cluster: Erstellen Sie einen EKS-Cluster und Pods in Ihrer AWS-Umgebung
  2. Helm 3.6+: Erforderlich für die Chart-Verwaltung
  3. Kubernetes 1.21+: Dies ist die früheste getestete Version, obwohl das Chart auch mit früheren Versionen funktionieren kann
  4. Externe Datenbanken: Erforderlich für Produktionslasten und den High Availability (HA)-Modus

Warum externe Datenbanken für den HA-Modus erforderlich sind

DataSunrise verwendet zwei wichtige Arten von Datenbanken, um seine Betriebsdaten zu speichern: die Audit-Datenbank und die Dictionary-Datenbank. Um eine hohe Verfügbarkeit und Skalierbarkeit zu gewährleisten, kann DataSunrise über mehrere Server hinweg konfiguriert werden. Bei der Bereitstellung von DataSunrise in einer Multi-Server-Konfiguration wird eine PostgreSQL-, MySQL/MariaDB- oder MS SQL Server-Datenbank verwendet, um die gemeinsamen Dictionary- und Audit-Daten zu speichern.

Audit-Datenbank

Die Audit-Datenbank in DataSunrise ist unerlässlich, um detaillierte Protokolle aller überwachten Datenbankaktivitäten zu speichern, einschließlich SQL-Abfragen, Benutzeraktionen und Sicherheitsereignissen. Diese Datenbank liefert eine umfassende Prüfspur und unterstützt die Sicherheitsüberwachung durch das Erkennen verdächtiger Aktivitäten. DataSunrise unterstützt PostgreSQL, MySQL, MariaDB und MS SQL Server für die Audit-Datenbank. Es ist wichtig, ausreichend Speicherplatz bereitzustellen und Aufbewahrungsrichtlinien zu verwalten, um dem potenziell erheblichen Wachstum der Audit-Daten gerecht zu werden.

Dictionary-Datenbank

Die Dictionary-Datenbank enthält die Konfiguration und Metadaten, die für den Betrieb von DataSunrise erforderlich sind, einschließlich Informationen über Datenbankinstanzen, Sicherheitsregeln, Audit-Regeln und Benutzerrollen. Sie stellt sicher, dass DataSunrise reibungslos funktioniert, indem sie alle erforderlichen Konfigurationsdaten bereitstellt. Wie die Audit-Datenbank unterstützt DataSunrise PostgreSQL, MySQL, MariaDB und MS SQL Server für die Dictionary-Datenbank. Diese Datenbank sollte hochverfügbar sein und mit starken Passwörtern gesichert werden, da sie für den ununterbrochenen Betrieb von DataSunrise von wesentlicher Bedeutung ist.

Für weitere Informationen über die Vorbereitung externer Datenbanken zur Verwendung als Audit- und Konfigurationsdatenbanken lesen Sie bitte Kapitel 4 des Admin Handbuchs: MultiServer-Konfiguration (High Availability-Modus). Durch die Verwendung externer Datenbanken sowohl für die Audit- als auch für die Dictionary-Datenbanken kann DataSunrise eine robuste Hochverfügbarkeit bieten, die einen kontinuierlichen Betrieb und eine konsistente Sicherheitsüberwachung in Ihrer Datenbankumgebung gewährleistet.

Konfiguration
Abbildung 1. Bereitstellungsstruktur von DataSunrise auf K8S mit Helm-Chart

Vorbereitung Ihres AWS EKS Clusters

Schritt 1: Installation der erforderlichen Tools

Nachdem Ihr EKS-Cluster und der Node, auf dem Sie DataSunrise installieren möchten, bereit sind, installieren Sie die folgenden Tools:

  • kubectl: Interagiert direkt mit Kubernetes-Clustern und ist für die Verwaltung von Clustern und Anwendungen unerlässlich
  • Helm: Verwaltet Kubernetes-Anwendungen über Charts und vereinfacht Bereitstellungen und Upgrades
  • AWS CLI: Verwaltet AWS-Ressourcen und ist nützlich für die Automatisierung von AWS-Aufgaben und die Integration von Diensten

kubectl installieren

curl -LO https://storage.googleapis.com/kubernetes-release/release/`curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt`/bin/linux/amd64/kubectl
chmod +x ./kubectl
sudo mv ./kubectl /usr/local/bin/kubectl

Helm installieren

curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash

AWS CLI installieren

curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install

Schritt 2: AWS-Zugangsdaten konfigurieren

Konfigurieren Sie Ihre AWS-Zugangsdaten, indem Sie den folgenden Befehl ausführen:

aws configure

Nachdem Sie diesen Befehl ausgeführt haben, werden Sie aufgefordert, Ihre AWS Access Key ID, AWS Secret Access Key, den Standard-Regionsnamen und das bevorzugte Ausgabeformat einzugeben:

AWS Access Key ID [None]: ************
AWS Secret Access Key [None]: ************
Default Region name [None]: us-east-2
Default output format [None]: json

Schritt 3: kubectl für EKS konfigurieren

Konfigurieren Sie Ihr kubectl so, dass es mit dem angegebenen EKS-Cluster in der entsprechenden Region interagiert. Nachdem Sie die kubeconfig aktualisiert haben, überprüfen Sie die Aktualisierung, indem Sie den Status der Pods im Namespace kube-system überprüfen:

aws eks update-kubeconfig --region <region_name> --name <cluster_name>
kubectl get pods -n kube-system -l k8s-app=aws-node -o wide

DataSunrise mit Helm installieren

Schritt 1: Helm-Chart herunterladen und installieren

Sie können entweder die Datei values.yaml des Helm-Charts manuell von der Artifact Hub herunterladen oder das Helm-Chart mit den folgenden Befehlen installieren:

helm repo add datasunrise https://www.datasunrise.com/helm-chart
helm install my-datasunrise datasunrise/datasunrise --version 1.2.14

Die Verzeichnisstruktur sollte wie folgt aussehen:

my-chart/
├── Chart.yaml
├── charts/
├── templates/
├── values.yaml

Schritt 2: values.yaml konfigurieren

Öffnen und bearbeiten Sie die Datei values.yaml. Sie müssen die folgenden Werte anpassen:

  • envVars: Konfigurieren Sie Ihre Dictionary- und Audit-Datenbank-Eigenschaften
  • uiService: Ändern Sie den Typ von ClusterIP zu LoadBalancer
  • ingress: Aktivieren Sie die Ingress-Konfiguration

Wichtiger Sicherheitshinweis: Es ist entscheidend, in Ihrer Anwendungsumgebung starke Passwörter zu verwenden. Ein starkes Passwort sollte über 8-12 Zeichen lang sein und eine Kombination aus Groß- und Kleinbuchstaben, Ziffern und Sonderzeichen enthalten. Zum Beispiel: P@ssw0rd#2024!

Beispielkonfiguration für AWS Secrets Manager

apiVersion: secrets-store.csi.x-k8s.io/v1alpha1
kind: SecretProviderClass
metadata:
  name: aws-secrets
  namespace: default # Ändern Sie dies in Ihren bevorzugten Namespace
spec:
  provider: aws
  secretObjects:
  - secretName: k8s-secret
    type: Opaque
    data: 
    - objectName: db_password
      key: password_for_ds
  parameters:
    objects:
      - objectName: arn:aws:secretsmanager:us-east-1:xxxxxx:secret:MySecret
        objectType: secretsmanager
        jmesPath:
          - path: password_for_ds
            objectAlias: db_password

Umgebungsvariablen-Konfiguration

envVars:
  - name: DICTIONARY_TYPE
    value: "postgresql" 
  - name: DICTIONARY_HOST
    value: "your_dictionary_host" 
  - name: DICTIONARY_PORT
    value: "5432" 
  - name: DICTIONARY_DB_NAME
    value: "dictionarydb" 
  - name: DICTIONARY_LOGIN
    value: "postgres" 
  - name: DICTIONARY_PASS
    valueFrom:
      secretKeyRef:
        name: k8s-secret
        key: password_for_ds
  - name: AUDIT_TYPE
    value: "postgresql" 
  - name: AUDIT_HOST
    value: "your_audit_host" 
  - name: AUDIT_PORT
    value: "5432" 
  - name: AUDIT_DB_NAME
    value: "auditdb" 
  - name: AUDIT_LOGIN
    value: "postgres" 
  - name: AUDIT_PASS
    valueFrom:
      secretKeyRef:
        name: k8s-secret
        key: password_for_ds 

UI-Service-Konfiguration

uiService:
  type: LoadBalancer
  port: 11000
  annotations: {}

Ingress-Konfiguration

ingress:
  enabled: true
  className: ""

Hinweis: Wenn Ihr Pod im Status “Pending” stecken bleibt, deaktivieren Sie das Volume:

localSettingsPersistentVolume:
  ## Falls 'true', wird ein Persistent Volume Claim erstellt/genutzt.
  ## Falls 'false', wird emptyDir verwendet.
  enabled: false

Schritt 3: Ingress einrichten

Um eine Verbindung zur DataSunrise Web-Oberfläche herzustellen, müssen Sie einen Ingress einrichten:

helm upgrade --install ingress-nginx ingress-nginx \
  --repo https://kubernetes.github.io/ingress-nginx \
  --namespace ingress-nginx --create-namespace

Dieser Befehl lädt das ingress-nginx Chart aus dem angegebenen Repository herunter und installiert es im Namespace ingress-nginx, wobei der Namespace erstellt wird, falls er noch nicht existiert. Diese Einrichtung ermöglicht es Ihnen, den externen Zugriff auf Ihre DataSunrise-Dienste über Kubernetes Ingress-Ressourcen zu verwalten.

Anschließend müssen Sie den Host für Ihren Ingress festlegen. Um den Load Balancer-Link zu finden, navigieren Sie zum Dashboard Ihres AWS EKS Clusters, gehen Sie zu “Resources” → “Service and networking” → “Service” → “ingress-nginx-controller” und kopieren Sie die URL des Load Balancers. Sobald Sie die URL haben, verwenden Sie sie, um das Host-Feld in Ihrer Ingress-Konfiguration festzulegen.

Load Balancer Link
Abbildung 3. So finden Sie den Load Balancer-Link in AWS EKS (1)

Load Balancer Link 2
Abbildung 4. So finden Sie den Load Balancer-Link in AWS EKS (2)

Komplette Ingress-Konfiguration

ingress:
  enabled: true
  className: "nginx"
  ## Einige zusätzliche Anmerkungen sind für den Ingress erforderlich.
  ## Wenn Sie nginx verwenden, sind die notwendigen Anmerkungen bereits unten vorhanden.
  ## Wenn Sie einen anderen Ingress verwenden, müssen Sie entsprechende Anmerkungen für Ihre Klasse finden.
  ## Die HTTPS-Backend- und 'Sticky Session'-Anmerkungen sind erforderlich.
  annotations:
    nginx.ingress.kubernetes.io/backend-protocol: "HTTPS"
    nginx.ingress.kubernetes.io/affinity: "cookie"
    nginx.ingress.kubernetes.io/affinity-mode: "persistent"
    # kubernetes.io/ingress.class: nginx
    # kubernetes.io/tls-acme: "true"
  hosts:
    - host: # Fügen Sie hier Ihre Load Balancer URL ein
      paths:
        - path: /
          pathType: ImplementationSpecific

Schritt 4: DataSunrise installieren

Nachdem Sie den Host konfiguriert haben, können Sie DataSunrise mit Helm installieren. Stellen Sie sicher, dass Sie sich im Verzeichnis befinden, das das Helm-Chart enthält, und führen Sie dann den folgenden Befehl aus:

helm install ds .

Um den Installationsstatus zu überwachen, verwenden Sie den folgenden Befehl:

kubectl get pods

Falls der Pod nicht startet, überprüfen Sie die Logs:

kubectl logs <pod_name>

Schritt 5: Zugriff auf die DataSunrise Web-Oberfläche

Sobald der DataSunrise Pod läuft, sollten Sie in der Lage sein, über den Load Balancer-Link aus dem vorherigen Schritt auf die DataSunrise Web-Oberfläche zuzugreifen. Alternativ können Sie die Dienste mit folgendem Befehl überprüfen:

kubectl get services

Beispielergebnisse
Abbildung 5. Beispielergebnisse von ‘kubectl get services’

DataSunrise Web-Konsole
Abbildung 6. Verbindung zur DataSunrise Web-Konsole

Schritt 6: DataSunrise aktualisieren

Wenn Sie DataSunrise auf eine neuere Version aktualisieren möchten, ändern Sie die in der values.yaml festgelegte Version in die gewünschte Version. Nachdem Sie die notwendigen Änderungen vorgenommen haben, führen Sie den folgenden Befehl aus, um DataSunrise zu aktualisieren:

helm upgrade ds .

Konfiguration der Verbindung zur Ziel-Datenbank

Sobald Ihr mit Kubernetes und Docker erstellter DataSunrise-Cluster bereit und in Betrieb ist, können Sie DataSunrise-Regeln konfigurieren, um Ihre sensiblen Datenbankspalten zu überwachen, abzusichern oder zu maskieren. Weitere Informationen finden Sie im Abschnitt „DataSunrise Use Cases“ des DataSunrise-Benutzerhandbuchs.

DataSunrise interagiert mit einer Ziel-Datenbank und erhält alle für den Betrieb erforderlichen Informationen über ein Benutzerkonto dieser Datenbank. Das Konto, der Benutzername und das Passwort werden im Ziel-Datenbankprofil in der Web-Konsole angegeben. Sie können das Konto des Datenbankadministrators für die Verbindung verwenden, es ist jedoch auch möglich, ein anderes Benutzerkonto mit ausreichenden Berechtigungen zu nutzen. Der Abschnitt „5.2 Erstellung der für den Abruf der Metadaten der Datenbank erforderlichen Datenbankbenutzer“ im Benutzerhandbuch beschreibt die erforderlichen Schritte, um eine Verbindung zwischen DataSunrise und verschiedenen Datenbanken herzustellen.

Nachdem Sie den Datenbankbenutzer für den Abruf der Metadaten konfiguriert haben, fahren Sie mit den folgenden Schritten fort, um über die Web-Konsole eine Verbindung zu DataSunrise herzustellen:

Schritt 1: Anmeldung an der DataSunrise Web-Konsole

Verwenden Sie die externe IP-Adresse, die Sie im vorherigen Schritt erhalten haben, um auf die DataSunrise Web-Konsole zuzugreifen.

Schritt 2: Ziel-Datenbankinstanz hinzufügen

  1. Gehen Sie zu Konfiguration → Datenbankinstanzen
  2. Klicken Sie auf „Neue Instanz hinzufügen“ und füllen Sie die erforderlichen Angaben aus:
    • Logischer Name: Ein Referenzname für die Datenbank
    • Hostname oder IP: Die Adresse der Ziel-Datenbank
    • Authentifizierungsmethode: Wählen Sie die entsprechende Methode (z. B. Datenbank-Benutzername/Passwort, Active Directory)
    • Datenbanktyp: Wählen Sie den Typ Ihrer Ziel-Datenbank (z. B. MS SQL, PostgreSQL)
    • Port: Die Portnummer, unter der die Datenbank läuft
    • Datenbankname: Der Name der Ziel-Datenbank

Schritt 3: Verbindung testen

  1. Klicken Sie auf die Schaltfläche „Testen“, um sicherzustellen, dass DataSunrise erfolgreich eine Verbindung zur Ziel-Datenbank herstellen kann
  2. Nachdem der Verbindungstest erfolgreich war, klicken Sie auf „Speichern“, um die Datenbankinstanz zu DataSunrise hinzuzufügen

Schritt 4: Sicherheits- und Audit-Regeln einrichten

Gehen Sie im DataSunrise Web-Interface zum Abschnitt Regeln. Erstellen und konfigurieren Sie Regeln für Auditing, Sicherheit und Datenmaskierung gemäß Ihren Anforderungen.

Verbindung testen
Abbildung 7. Test der Verbindung in DataSunrise

Proxy-Verbindung
Abbildung 8. Herstellung der Proxy-Verbindung in DataSunrise

Integration von AWS Secrets Manager mit AWS EKS

AWS Secrets Manager ist ein robustes Tool, das Verschlüsselung im Ruhezustand und die Rotation von Geheimnissen bietet, was es zu einer idealen Wahl für die sichere Verwaltung sensibler Informationen macht. Aufgrund seiner Zustimmung durch viele Sicherheitsteams ist es eine vertrauenswürdige Lösung für den Umgang mit Geheimnissen in Cloud-Umgebungen. Um die Sicherheit in AWS-Bereitstellungen, wie z. B. bei Amazon EKS, zu erhöhen, können Sie AWS Secrets Manager nutzen, um sicherzustellen, dass Ihre Anwendungen sicher und den Best Practices entsprechend betrieben werden.

Es gibt mehrere Möglichkeiten, den AWS Secrets Manager-Dienst in EKS-Pods zu verwenden.

Verwendung des Kubernetes Secrets Store CSI Drivers

Obwohl mehrere benutzerdefinierte Implementierungen Flexibilität bieten, erfordern sie auch erheblichen Entwicklungs-, Wartungs- und Betriebsaufwand. Ein standardisierterer und effizienterer Ansatz ist die Verwendung des Kubernetes Secrets Store CSI Drivers. Dieser Treiber integriert Geheimnis-Speicher in Kubernetes über ein Container Storage Interface (CSI)-Volume, sodass Geheimnisse aus dem AWS Secrets Manager direkt im Pod eingebunden werden können.

Der Secrets Store CSI Driver vereinfacht den Prozess der Geheimnisverwaltung, indem er eine native Kubernetes-Schnittstelle für das Secret-Management bereitstellt. Dadurch wird der mit benutzerdefinierten Lösungen verbundene Aufwand reduziert und eine konsistente sowie sichere Methode für den Umgang mit Geheimnissen in Ihrer Kubernetes-Umgebung gewährleistet.

AWS Secrets Manager
Abbildung 9. AWS Secrets Manager

Für weitere Informationen über den Treiber und dessen Anwendung lesen Sie bitte diese Ressourcen:

  1. Kubernetes Secrets Store CSI Driver
  2. AWS Secrets and Configuration Provider

Implementierungsschritte

Schritt 1: Installation des CSI Secrets Store Drivers

Sie müssen sicherstellen, dass der secrets-store.csi.k8s.io CSI-Treiber in Ihrem Kubernetes-Cluster installiert ist. Dieser Treiber ermöglicht es Kubernetes, mit externen Secret-Management-Systemen zu interagieren.

helm repo add secrets-store-csi-driver https://kubernetes-sigs.github.io/secrets-store-csi-driver/charts
helm install csi-secrets-store secrets-store-csi-driver/secrets-store-csi-driver --namespace kube-system --set syncSecret.enabled=true

Schritt 2: Erstellen eines Secrets im AWS Secrets Manager

Erstellen Sie ein Secret im AWS Secrets Manager in derselben Region wie Ihr Cluster, entweder über die AWS CLI oder über die AWS Management Console.

Schritt 3: Umgebungsvariablen festlegen

Legen Sie zwei Umgebungsvariablen fest: REGION und CLUSTERNAME. Diese Variablen definieren die AWS-Region und den Namen des EKS-Clusters.

REGION=<your_eks_region>
CLUSTERNAME=<your_cluster_name>

Schritt 4: Erstellen des Secrets

Erstellen Sie das Secret im AWS Secrets Manager. Fügen Sie JSON-Objekte mit Ihren Zugangsdaten oder Geheimnissen ein. Nach Ausführung dieses Befehls enthält die Variable SECRET_ARN den ARN (Amazon Resource Name) des erstellten Secrets.

SECRET_ARN=$(aws --query ARN --output text secretsmanager create-secret --name <your_secret_name> --secret-string '{"<key1>":"<value1>", "<key2>":"<value2>"}' --region "$REGION")

Schritt 5: IAM-Richtlinie erstellen

Erstellen Sie eine IAM-Richtlinie, indem Sie den folgenden Befehl ausführen. Nach der Ausführung des Befehls enthält die Variable POLICY_ARN den ARN der erstellten IAM-Richtlinie.

POLICY_ARN=$(aws --region "$REGION" --query Policy.Arn --output text iam create-policy --policy-name <your_policy_name> --policy-document '{
    "Version": "2012-10-17",
    "Statement": [ {
        "Effect": "Allow",
        "Action": ["secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret"],
        "Resource": ["'$SECRET_ARN'"]
    } ]
}')

Schritt 6: Service Account erstellen

Erstellen Sie einen Service Account, der mit der zuvor erstellten IAM-Richtlinie verknüpft ist, mithilfe von eksctl. Bevor Sie den Befehl ausführen, stellen Sie sicher, dass eksctl auf Ihrem Rechner installiert und konfiguriert ist.

eksctl create iamserviceaccount --name <your_service_account_name> --region="$REGION" --cluster "$CLUSTERNAME" --attach-policy-arn "$POLICY_ARN" --approve --override-existing-serviceaccounts

Die Option --approve bestätigt die Erstellung des Service Accounts, ohne nach einer Bestätigung zu fragen, und --override-existing-serviceaccounts erlaubt es, vorhandene Service Accounts mit demselben Namen zu überschreiben.

Schritt 7: AWS Secret Provider Class erstellen


apiVersion: secrets-store.csi.x-k8s.io/v1alpha1
kind: SecretProviderClass
metadata:
  name: <your_secret_provider_class_name>
spec:
  provider: aws
  parameters:
    objects: |
      - objectName: "<your_secret_name>"
        objectType: "secretsmanager"
        jmesPath:
          - path: <key1>
            objectAlias: <key1>
          - path: <key2>
            objectAlias: <key2>

Schritt 8: values.yaml anpassen

Passen Sie die Datei values.yaml an, indem Sie die in Schritt 4 erstellten Secrets verwenden. Sie müssen den Parameter envVarsSecretProviderClassName mit dem Namen der in Schritt 7 erstellten SecretProviderClass angeben. Nachdem Sie alle notwendigen Felder in values.yaml angepasst haben, können Sie mit der Bereitstellung über Helm fortfahren.

Parameter angeben
Abbildung 10. Parameter angeben

Hinweis: Wenn Sie ein Kubernetes-Secret über ein YAML-Manifest erstellen, sollten Sie das Secret base64-codiert einfügen. Siehe das folgende Beispiel:

# your_secret_file.yaml
apiVersion: v1
kind: Secret
metadata:
  name: db-secret
type: Opaque
data:
  password: cGFzc3dvcmQxMjMK # password1234 in base64 encoding

---
# values.yaml
envVars:
  - name: DICTIONARY_PASS
    valueFrom:
      secretKeyRef:
        name: db-secret
        key: password

Fazit

Das von DataSunrise bereitgestellte Helm-Chart mit Kubernetes vereinfacht den Bereitstellungsprozess und bietet wesentliche Funktionen wie Proxy-Funktionalität und Autoscaling, was eine optimale Leistung und Zuverlässigkeit gewährleistet. Darüber hinaus können Organisationen durch die Einhaltung von Best Practices, wie der Konfiguration externer Datenbanken und der Verwendung starker Passwörter, die Sicherheit ihrer Bereitstellungen deutlich verbessern. Mit DataSunrise, das in Kubernetes bereitgestellt wird, können Organisationen ihre sensiblen Daten sicher schützen und gleichzeitig von der Skalierbarkeit und Flexibilität containerisierter Umgebungen profitieren.

Die Verwendung starker Passwörter in Kombination mit einem Secret-Management-Dienst wie AWS Secrets Manager verbessert die Sicherheitslage Ihrer Bereitstellungen erheblich. Indem Sie diese Schritte befolgen, können Sie Geheimnisse sicher aus AWS Secrets Manager in Ihre über Helm auf EKS bereitgestellten DataSunrise-Anwendungen einbinden.

Nächste

Wie erkennt man einen Datenverstoß?

Wie erkennt man einen Datenverstoß?

Erfahren Sie mehr

Benötigen Sie die Hilfe unseres Support-Teams?

Unsere Experten beantworten gerne Ihre Fragen.

Allgemeine Informationen:
[email protected]
Kundenservice und technischer Support:
support.datasunrise.com
Partnerschafts- und Allianz-Anfragen:
[email protected]