Dieses Dokument wurde mithilfe automatisierter maschineller Übersetzungstechnologie übersetzt. Wir bemühen uns um korrekte Übersetzungen, übernehmen jedoch keine Gewähr für die Vollständigkeit, Richtigkeit oder Zuverlässigkeit der übersetzten Inhalte. Im Falle von Abweichungen ist die englische Originalversion maßgebend und stellt den verbindlichen Text dar.

Installieren Sie SUSE® Storage mit Flux

Voraussetzungen

Die SUSE Storage Installation erfordert authentifizierten Zugriff auf die SUSE Application Collection. Für weitere Details, überprüfen Sie den Authentifizierungsleitfaden.

  • Ihr Arbeitsplatz: Installieren Sie Helm v3.0 oder höher.

  • Kubernetes-Cluster:

    • Stellen Sie sicher, dass jeder Knoten die Installationsanforderungen erfüllt.

    • Installieren Sie die Flux-Kommandozeilenschnittstelle und Controller.

    • Starten Sie Flux mit GitHub neu unter Verwendung der Flux-Kommandozeilenschnittstelle. Führen Sie die folgenden Befehle aus, um Ihr persönliches Zugriffstoken (PAT) von GitHub als Umgebungsvariable zu exportieren, die Flux-Controller in Ihrem Cluster bereitzustellen und die Controller zu konfigurieren, um den Clusterzustand aus dem angegebenen GitHub-Repository zu synchronisieren.

      export GITHUB_TOKEN=<gh-token>
      flux bootstrap github \
        --token-auth \
        --owner=<github_username> \
        --repository=<github_repo_name> \
        --branch=<branch_name> \
        --path=<folder_path_within_repo> \
        --personal

Das Longhorn-Kommandozeilenwerkzeug kann verwendet werden, um die Longhorn-Umgebung auf potenzielle Probleme zu überprüfen.

Installation

  1. Erstellen Sie eine benutzerdefinierte Ressource (CR) vom Typ HelmRepository, die auf die SUSE Storage Helm-Chart-URL verweist.

     kubectl create ns longhorn-system
     flux create source helm longhorn-repo \
       --url=https://charts.longhorn.io \
       --namespace=longhorn-system \
       --export > helmrepo.yaml
     kubectl apply -f helmrepo.yaml
  2. Erstellen Sie eine HelmRelease-CR, die auf das HelmRepository verweist und die Version des zu installierenden Helm-Charts angibt.

     flux create helmrelease longhorn-release \
       --chart=longhorn \
       --source=HelmRepository/longhorn-repo \
       --chart-version=v1.11.2 \
       --namespace=longhorn-system \
       --export > helmrelease.yaml
     kubectl apply -f helmrelease.yaml
  3. Überprüfen Sie, ob die HelmRelease-CR erfolgreich erstellt und synchronisiert wurde.

     flux get helmrelease longhorn-release -n longhorn-system
  4. Überprüfen Sie, ob SUSE Storage erfolgreich installiert wurde.

     kubectl -n longhorn-system get pod

    Beispiel für eine erfolgreiche Installation:

     NAME                                                READY   STATUS    RESTARTS   AGE
     longhorn-ui-b7c844b49-w25g5                         1/1     Running   0          2m41s
     longhorn-manager-pzgsp                              1/1     Running   0          2m41s
     longhorn-driver-deployer-6bd59c9f76-lqczw           1/1     Running   0          2m41s
     longhorn-csi-plugin-mbwqz                           2/2     Running   0          100s
     csi-snapshotter-588457fcdf-22bqp                    1/1     Running   0          100s
     csi-snapshotter-588457fcdf-2wd6g                    1/1     Running   0          100s
     csi-provisioner-869bdc4b79-mzrwf                    1/1     Running   0          101s
     csi-provisioner-869bdc4b79-klgfm                    1/1     Running   0          101s
     csi-resizer-6d8cf5f99f-fd2ck                        1/1     Running   0          101s
     csi-provisioner-869bdc4b79-j46rx                    1/1     Running   0          101s
     csi-snapshotter-588457fcdf-bvjdt                    1/1     Running   0          100s
     csi-resizer-6d8cf5f99f-68cw7                        1/1     Running   0          101s
     csi-attacher-7bf4b7f996-df8v6                       1/1     Running   0          101s
     csi-attacher-7bf4b7f996-g9cwc                       1/1     Running   0          101s
     csi-attacher-7bf4b7f996-8l9sw                       1/1     Running   0          101s
     csi-resizer-6d8cf5f99f-smdjw                        1/1     Running   0          101s
     instance-manager-b34d5db1fe1e2d52bcfb308be3166cfc   1/1     Running   0          114s
     engine-image-ei-df38d2e5-cv6nc                      1/1     Running   0          114s
  5. Erstellen Sie einen NGINX Ingress-Controller mit grundlegender Authentifizierung, um auf die Benutzeroberfläche zuzugreifen. Die Authentifizierung zur Benutzeroberfläche ist standardmäßig nicht aktiviert.

  6. Zugriff auf die Benutzeroberfläche.

Kontinuierliche Operationen über GitOps

Sie können exportierte Manifeste in Ihr GitOps-Repository übertragen und pushen.

 git add helmrepo.yaml helmrelease.yaml
 git commit -m "Add HelmRepository and HelmRelease for SUSE Storage installation"
 git push origin <branch_name>

Anschließend können Sie die HelmRelease- und HelmRepository-CRs ändern, indem Sie die YAML-Manifeste in Ihrem GitOps-Repository bearbeiten. Flux erkennt die Änderungen automatisch und wendet sie an, ohne direkten Zugriff auf Ihren Kubernetes-Cluster zu benötigen.