|
Dies ist eine unveröffentlichte Dokumentation für SUSE® Storage 1.12 (Dev). |
Installieren Sie SUSE Storage mit Fleet
Voraussetzungen
|
Die Installation von SUSE Storage 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 SUSE® Rancher Prime: Continuous Delivery mit Helm.
helm repo add fleet https://rancher.github.io/fleet-helm-charts/ helm -n cattle-fleet-system install --create-namespace --wait fleet-crd fleet/fleet-crd helm -n cattle-fleet-system install --create-namespace --wait fleet fleet/fleetGeben Sie etwas Zeit für die Implementierung der Fleet-Komponenten im
cattle-fleet-system-Namespace.
-
Das Longhorn-Kommandozeilenwerkzeug kann verwendet werden, um die Longhorn-Umgebung auf potenzielle Probleme zu überprüfen.
Installation
-
Erstellen Sie in Ihrem GitOps-Repository eine
fleet.yaml-Datei, die Folgendes enthält:-
Parameter zur Installation von SUSE Storage im
longhorn-system-NamespacedefaultNamespace: longhorn-system -
Parameter für das Ignorieren modifizierter CRDs
diff: comparePatches: - apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition name: engineimages.longhorn.io operations: - {"op": "replace", "path": "/status"} - apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition name: nodes.longhorn.io operations: - {"op": "replace", "path": "/status"} - apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition name: volumes.longhorn.io operations: - {"op": "replace", "path": "/status"} - apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition name: engines.longhorn.io operations: - {"op": "replace", "path": "/status"} - apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition name: instancemanagers.longhorn.io operations: - {"op": "replace", "path": "/status"} - apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition name: replicas.longhorn.io operations: - {"op": "replace", "path": "/status"} - apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition name: settings.longhorn.io operations: - {"op": "replace", "path": "/status"} -
Parameter zur Angabe der Version des zu installierenden Helm-Charts
helm: repo: https://charts.longhorn.io chart: longhorn version: v1.12.0 # Replace with the version you would like to install or upgrade to releaseName: longhorn+ Beispiel einer vollständigen
fleet.yaml-Datei:+
defaultNamespace: longhorn-system helm: repo: https://charts.longhorn.io chart: longhorn version: v1.12.0 releaseName: longhorn diff: comparePatches: - apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition name: engineimages.longhorn.io operations: - {"op": "replace", "path": "/status"} - apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition name: nodes.longhorn.io operations: - {"op": "replace", "path": "/status"} - apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition name: volumes.longhorn.io operations: - {"op": "replace", "path": "/status"} -
-
Erstellen Sie eine benutzerdefinierte Ressource (CR) vom Typ GitRepo, die auf Ihr GitOps-Repository verweist.
cat > longhorn-gitrepo.yaml << "EOF" apiVersion: fleet.cattle.io/v1alpha1 kind: GitRepo metadata: name: longhorn namespace: fleet-local spec: repo: https://github.com/your-username/your-gitops-repo.git revision: main paths: - . EOF -
Wenden Sie die GitRepo-CR an.
kubectl apply -f longhorn-gitrepo.yaml -
Überprüfen Sie, ob die GitRepo-CR erfolgreich erstellt und synchronisiert wurde.
kubectl -n fleet-local get gitrepo -w -
Überprüfen Sie, ob SUSE Storage erfolgreich installiert wurde.
kubectl -n longhorn-system get podBeispiel einer erfolgreichen 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 -
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.