//Cloudogu EcoSystem Docs

Installation des Importers

Der Importer der automatischen Migration wird als CES-Komponente bereitgestellt und kann mit der zugehörigen "Component CR" in eine CES-MN-Instanz installiert werden.

Voraussetzungen

  • Ihre Zielinstanz ist eine Instanz des Cloudogu EcoSystems auf Multinode-Basis (CES-MN-Instanz).
  • Login-Daten inklusive Passwort des verwendeten Mailservers.

    • Das Postfix Dogu der Zielinstanz kann nicht verwendet werden, da es ein Dogu ist und bei der Migration temporär nicht erreichbar ist.
  • Sie verfügen über ein SSH-Schlüsselpaar.

    • Wenn so noch kein SSH-Schlüsselpaar haben, generieren Sie eines mit ssh-keygen.
    • Es wird empfohlen den Schlüsseltyp "Ed25519" zu verwenden, der im Vergleich zu traditionellen Algorithmen wie RSA eine höhere Leistung und verbesserte Sicherheit bietet.
    • Das SSH-Schlüsselpaar darf keine Passphrase erfordern.
    • Den privaten Schlüssel benötigen Sie für den Importer auf der Zielinstanz
    • Den öffentlichen Schlüssel benötigen Sie für den Exporter auf der Quellinstanz.
  • Sie verfügen über einen API-Schlüssel.

    • Sie können den Schlüssel individuell mit beliebigen Zeichen erzeugen.
    • Der API-Schlüssel hat eine Länge von 8 bis 128 Zeichen.
    • Sie benötigen diesen API-Schlüssel auch für die Installation des Exporters auf der Quellinstanz.
  • Die FQDN der Quellinstanz ist bekannt.

Installation

  1. Verbinden Sie sich mit Ihrer Instanz (Kommandozeile), indem Sie den Kubernetes-Kontext entsprechend setzen.
  2. Erstellen Sie ein Kubernetes-Secret mit folgenden Informationen für den Importer:

    • privater SSH-Schlüssel
    • API-Key
    • Mail-Passwort (wenn benötigt)

    Das Secret können Sie mit dem folgenden kubectl-Befehl erstellen:

    kubectl -n ecosystem create secret generic ces-importer-secret \
    --from-file=privateKey=</path/to_my/Private-key> \
    --from-literal=apiKey=<my-api-key> \
    --from-literal=mailPassword=<your-mail-password>

    Wenn der Mailserver ohne Passwort zugänglich ist, genügt ein leerer String.

  3. Installieren Sie den ces-importer durch Anwendung des folgenden YAML im Cluster:

    kubectl apply --namespace=ecosystem -f - <<EOF
    apiVersion: k8s.cloudogu.com/v1
    kind: Component
    metadata:
    labels:
    app: ces
    name: ces-importer
    namespace: ecosystem
    spec:
    name: ces-importer
    namespace: k8s
    version: 1.0.0
    valuesYamlOverwrite: |
    config:
      api:
        host: <FQDN der Quellinstanz>
        skipTLSVerify: <true, wenn kein Zertifikat oder ein selbst-signiertes Zertifikat vorhanden>
      migration:
        regularSchedule: <Zeitpunkt der Migration(en) im CRON-Format>
        finalSchedule: <Zeitstempel für den Start der finalen Migration im RFC-3339-Format, z.B. „2025-04-03T12:34:56Z“>
      smtp:
        server: <smtp.my-mailserver.com>
        port: <der Port des Mail-Servers, z.B. 25>
        username: <der Benutzername zur Authentifizierung am Mailserver; ein leerer String wenn nicht benötigt>
        from: <Absender-Adresse>
        to:
          - <Empfänger-Adresse(n)>
    EOF
  4. Überprüfen Sie, ob die Komponente bereit ist:

    kubectl get component ces-importer

Konfiguration

Alle Werte des Importers sind konfigurierbar mit der valuesYamlOverwrite. Eine genaue Beschreibung der einzelnen Konfigurationswerte finden Sie unter Referenz: Konfiguration des Importers

Nach Änderungen der Konfiguration sollten Sie den Importer neu starten, damit die Konfiguration übernommen wird.