|
本文档采用自动化机器翻译技术翻译。 尽管我们力求提供准确的译文,但不对翻译内容的完整性、准确性或可靠性作出任何保证。 若出现任何内容不一致情况,请以原始 英文 版本为准,且原始英文版本为权威文本。 |
自定义默认设置
您可以在安装或升级时自定义 SUSE Storage 的默认设置。例如,在启动 Create Default Disk With Node Labeled 之前,您可以指定 Default Data Path 和 SUSE Storage。
|
当使用 Longhorn 部署 YAML 文件或 Helm 进行安装、更新或升级时,如果默认设置的值为空字符串且有效,则默认设置将在 SUSE Storage 中被清除。如果没有,SUSE Storage 将忽略无效值,并且不会更新默认值。 |
安装
使用 Longhorn 部署 YAML 文件
-
下载 longhorn 仓库:
git clone https://github.com/longhorn/longhorn.git -
在 yaml 文件
longhorn-default-setting中修改名为longhorn/deploy/longhorn.yaml的配置映射。在下面的示例中,用户自定义了默认设置、备份目标、备份目标凭证密钥和默认数据路径。 当设置缺失或有前导
#符号时,默认设置将使用 SUSE Storage 中的默认值或之前配置的自定义值。--- apiVersion: v1 kind: ConfigMap metadata: name: longhorn-default-setting namespace: longhorn-system data: default-setting.yaml: |- backup-target: s3://backupbucket@us-east-1/backupstore backup-target-credential-secret: minio-secret #allow-recurring-job-while-volume-detached: #create-default-disk-labeled-nodes: default-data-path: /var/lib/longhorn-example/ #replica-soft-anti-affinity: #replica-auto-balance: #storage-over-provisioning-percentage: #storage-minimal-available-percentage: #upgrade-checker: #upgrade-responder-url: #default-replica-count: #default-data-locality: #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: #replica-disk-soft-anti-affinity: #node-down-pod-deletion-policy: #node-drain-policy: #replica-replenishment-wait-interval: #concurrent-replica-rebuild-per-node-limit: #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: #backing-image-recovery-wait-interval: #guaranteed-instance-manager-cpu: #kubernetes-cluster-autoscaler-enabled: #orphan-resource-auto-deletion: #storage-network: #recurring-successful-jobs-history-limit: #recurring-failed-jobs-history-limit: ---
使用 Helm
|
在安装和升级 SUSE Storage 时使用 Helm 3。Helm 2 是 不再支持。 |
使用带有 --set 标志的 Helm 命令来修改默认设置。例如:
helm install longhorn longhorn/longhorn \
--namespace longhorn-system \
--create-namespace \
--set defaultSettings.taintToleration="key1=value1:NoSchedule; key2:NoExecute"
您还可以在运行 Helm 命令时提供一个修改了默认设置的 values.yaml 文件的副本,作为 --values 标志:
-
从 GitHub 获取
values.yaml文件的副本:curl -Lo values.yaml https://raw.githubusercontent.com/longhorn/charts/master/charts/longhorn/values.yaml -
在 YAML 文件中修改默认设置。以下是
values.yaml的示例片段:当设置缺失或有前导
#符号时,默认设置将使用 SUSE Storage 中的默认值或之前配置的自定义值。defaultSettings: backupTarget: s3://backupbucket@us-east-1/backupstore backupTargetCredentialSecret: minio-secret createDefaultDiskLabeledNodes: true defaultDataPath: /var/lib/longhorn-example/ replicaSoftAntiAffinity: false storageOverProvisioningPercentage: 600 storageMinimalAvailablePercentage: 15 upgradeChecker: false defaultReplicaCount: 2 defaultDataLocality: disabled defaultLonghornStaticStorageClass: longhorn-static-example backupstorePollInterval: 500 taintToleration: key1=value1:NoSchedule; key2:NoExecute systemManagedComponentsNodeSelector: "label-key1:label-value1" priorityClass: high-priority autoSalvage: false disableSchedulingOnCordonedNode: false replicaZoneSoftAntiAffinity: false replicaDiskSoftAntiAffinity: false volumeAttachmentRecoveryPolicy: never nodeDownPodDeletionPolicy: do-nothing guaranteedInstanceManagerCpu: 15 orphanAutoDeletion: "" orphanResourceAutoDeletionGracePeriod: 300 -
使用
values.yaml运行 Helm:helm install longhorn longhorn/longhorn \ --namespace longhorn-system \ --create-namespace \ --values values.yaml
有关使用 helm 的更多信息,请参见 使用 Helm 安装 SUSE Storage 部分。
更新设置
使用 Kubectl
如果您更喜欢从命令行更新设置,请使用 kubectl。为避免与其他 CRD 冲突,请勿使用简单的 settings。请改用 settings.longhorn.io 或 lhs。
kubectl edit settings.longhorn.io <SETTING-NAME> -n longhorn-system
使用 Helm
按照 新安装 > 使用 Helm 中的描述修改 YAML 文件中的默认设置,然后使用
helm upgrade longhorn longhorn/longhorn --namespace longhorn-system --values ./values.yaml --version `helm list -n longhorn-system -o json | jq -r .'[0].app_version'`
升级
使用 Longhorn 部署 YAML 文件
按照 新安装 > 使用 Longhorn 部署 YAML 文件 中的描述,修改 YAML 文件 longhorn/deploy/longhorn.yaml 中名为 longhorn-default-setting 的配置映射,然后使用 kubectl 升级 Longhorn 系统。
使用 Helm
按照 新安装 > 使用 Helm 中的描述修改 YAML 文件中的默认设置,然后使用 helm upgrade 升级 Longhorn 系统。
历史记录
自 v1.3.0 起可用 (参考)