Longhorn,企业级云原生容器分布式存储 – 定制部署默认设置

作者: 为少 2021-08-28 05:04:19存储存储软件云原生分布式 您可以在部署 Longhorn 时自定义它的默认设置。例如,您可以在启动 Longhorn 之前指定 Create Default Disk With Node Labeled(创建带有节点标签的默认磁盘) 和 Default Data Path(默认数据路径)。

[[420038]]

您可以在部署 Longhorn 时自定义它的默认设置。例如,您可以在启动 Longhorn 之前指定 Create Default Disk With Node Labeled(创建带有节点标签的默认磁盘) 和 Default Data Path(默认数据路径)。

此默认设置仅适用于尚未部署的 Longhorn 系统。它对现有的 Longhorn 系统没有影响。任何现有 Longhorn 系统的设置都应使用 Longhorn UI 进行修改。

可以通过以下方式自定义默认设置:

使用 Rancher UI使用 Longhorn Deployment YAML 文件使用 Helm

使用 Rancher UI

在 Rancher 的项目视图中,转到 Apps > Launch > Longhorn 并在启动应用程序之前编辑设置。

使用 Longhorn Deployment YAML 文件

1.下载 longhorn repo:

    gitclonehttps://github.com/longhorn/longhorn.git

修改 yaml 文件 longhorn/deploy/longhorn.yaml 中名为 longhorn-default-setting 的 config map。例如:

    ---apiVersion:v1kind:ConfigMapmetadata:name:longhorn-default-settingnamespace:longhorn-systemdata:default-setting.yaml:|-backup-target:backup-target-credential-secret:allow-recurring-job-while-volume-detached:create-default-disk-labeled-nodes:default-data-path:replica-soft-anti-affinity:storage-over-provisioning-percentage:storage-minimal-available-percentage:upgrade-checker:default-replica-count:default-data-locality:guaranteed-engine-cpu:default-longhorn-static-storage-class:backupstore-poll-interval:taint-toleration:system-managed-components-node-selector:priority-class:auto-salvage:auto-delete-pod-when-volume-detached-unexpectedly:disable-scheduling-on-cordoned-node:replica-zone-soft-anti-affinity:volume-attachment-recovery-policy:node-down-pod-deletion-policy:allow-node-drain-with-last-healthy-replica:mkfs-ext4-parameters:disable-replica-rebuild:replica-replenishment-wait-interval:disable-revision-counter:system-managed-pods-image-pull-policy:allow-volume-creation-with-degraded-availability:auto-cleanup-system-generated-snapshot:concurrent-automatic-engine-upgrade-per-node-limit:backing-image-cleanup-wait-interval:guaranteed-engine-manager-cpu:guaranteed-replica-manager-cpu:---

使用 Helm

使用带有 –set 标志的 Helm 命令来修改默认设置。例如:

    helminstalllonghorn/longhorn\--namelonghorn\--namespacelonghorn-system\--setdefaultSettings.taintToleration="key1=value1:NoSchedule;key2:NoExecute"

您还可以提供一份 values.yaml 文件的副本,其中在运行 Helm 命令时将默认设置修改为 –values 标志:

1.从 GitHub 获取 values.yaml 文件的副本:

    curl-Lovalues.yamlhttps://raw.githubusercontent.com/longhorn/charts/master/charts/longhorn/values.yaml

2.修改 YAML 文件中的默认设置。以下是 values.yaml 的示例片段:

    defaultSettings:backupTarget:s3://backupbucket@us-east-1/backupstorebackupTargetCredentialSecret:minio-secretcreateDefaultDiskLabeledNodes:truedefaultDataPath:/var/lib/longhorn-example/replicaSoftAntiAffinity:falsestorageOverProvisioningPercentage:600storageMinimalAvailablePercentage:15upgradeChecker:falsedefaultReplicaCount:2defaultDataLocality:disabledguaranteedEngineCPU:defaultLonghornStaticStorageClass:longhorn-static-examplebackupstorePollInterval:500taintToleration:key1=value1:NoSchedule;key2:NoExecutesystemManagedComponentsNodeSelector:"label-key1:label-value1"priority-class:high-priorityautoSalvage:falsedisableSchedulingOnCordonedNode:falsereplicaZoneSoftAntiAffinity:falsevolumeAttachmentRecoveryPolicy:nevernodeDownPodDeletionPolicy:do-nothingmkfsExt4Parameters:-O^64bit,^metadata_csumguaranteed-engine-manager-cpu:15guaranteed-replica-manager-cpu:15

3.使用 values.yaml 运行 Helm:

    helminstalllonghorn/longhorn--namelonghorn--namespacelonghorn-system--valuesvalues.yaml