内容来源于官方 Longhorn 1.1.2 英文技术手册。

系列

您可以在部署 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:

    git clone https://github.com/longhorn/longhorn.git
  2. 修改 yaml 文件 longhorn/deploy/longhorn.yaml 中名为 longhorn-default-settingconfig map。例如:

    ---
    apiVersion: v1
    kind: ConfigMap
    metadata:
    name: longhorn-default-setting
    namespace: longhorn-system
    data:
    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 命令来修改默认设置。 例如:

helm install longhorn/longhorn \
--name longhorn \
--namespace longhorn-system \
--set defaultSettings.taintToleration="key1=value1:NoSchedule; key2:NoExecute"

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

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

    curl -Lo values.yaml https://raw.githubusercontent.com/longhorn/charts/master/charts/longhorn/values.yaml
  2. 修改 YAML 文件中的默认设置。以下是 values.yaml 的示例片段:

    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
    guaranteedEngineCPU:
    defaultLonghornStaticStorageClass: longhorn-static-example
    backupstorePollInterval: 500
    taintToleration: key1=value1:NoSchedule; key2:NoExecute
    systemManagedComponentsNodeSelector: "label-key1:label-value1"
    priority-class: high-priority
    autoSalvage: false
    disableSchedulingOnCordonedNode: false
    replicaZoneSoftAntiAffinity: false
    volumeAttachmentRecoveryPolicy: never
    nodeDownPodDeletionPolicy: do-nothing
    mkfsExt4Parameters: -O ^64bit,^metadata_csum
    guaranteed-engine-manager-cpu: 15
    guaranteed-replica-manager-cpu: 15
  3. 使用 values.yaml 运行 Helm:

    helm install longhorn/longhorn --name longhorn --namespace longhorn-system --values values.yaml
公众号:黑客下午茶

Longhorn,企业级云原生容器分布式存储 - 定制默认设置的更多相关文章

  1. Longhorn,企业级云原生容器分布式存储 - 监控(Prometheus+AlertManager+Grafana)

    内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 企业级云原生容器分布式存储解决方案设计架构和概念 Longhorn 企业级云原生容器分 ...

  2. Longhorn,企业级云原生容器分布式存储 - 备份与恢复

    内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 企业级云原生容器分布式存储解决方案设计架构和概念 Longhorn 企业级云原生容器分 ...

  3. Longhorn,企业级云原生容器分布式存储 - 高可用

    内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 企业级云原生容器分布式存储解决方案设计架构和概念 Longhorn 企业级云原生容器分 ...

  4. Longhorn,企业级云原生容器分布式存储 - 支持 ReadWriteMany (RWX) 工作负载(实验性功能)

    内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 企业级云原生容器分布式存储解决方案设计架构和概念 Longhorn 企业级云原生容器分 ...

  5. Longhorn,企业级云原生容器分布式存储 - K8S 资源配置示例

    内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 企业级云原生容器分布式存储解决方案设计架构和概念 Longhorn 企业级云原生容器分 ...

  6. Longhorn 企业级云原生容器存储解决方案-部署篇

    内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 云原生分布式块存储解决方案设计架构和概念 安装 Longhorn 可以通过多种方式安装 ...

  7. Longhorn 云原生容器分布式存储 - Air Gap 安装

    内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 云原生容器分布式存储 - 设计架构和概念 Longhorn 云原生容器分布式存储 - ...

  8. Longhorn 云原生容器分布式存储 - Python Client

    内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 云原生容器分布式存储 - 设计架构和概念 Longhorn 云原生容器分布式存储 - ...

  9. Longhorn 云原生容器分布式存储 - 故障排除指南

    内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 云原生容器分布式存储 - 设计架构和概念 Longhorn 云原生容器分布式存储 - ...

随机推荐

  1. TCP/IP 5层协议簇/协议栈

    TCP/IP 5层协议簇/协议栈 数据/PDU 应用层 PC.防火墙 数据段/段Fragment 传输层 防火墙 报文/包/IP包packet 网络层 路由器 帧Frame 数据链路层 交换机.网卡 ...

  2. Linux小白基础命令操作

    [root@localhost ~]]# [当前登录系统的用户@主机名称 当前所在的目录]# #表示为管理员登录 $ 表示为普通用户登录 切换用户su 用户名     切换后所在目录不变  ,#变成$ ...

  3. 记录APP 启动ACTIVITITY

    a.启动待测apkb.开启日志输出:adb logcat>D:/log.txt c.关闭日志输出:ctrl+cd.查看日志找寻: Displayed com.mm.android.hsy/.ui ...

  4. [刘阳Java]_精选20道Java多线程面试题

    1. 多线程使用的优缺点? 优点: (1)多线程技术使程序的响应速度更快 (2)当前没有进行处理的任务可以将处理器时间让给其它任务 (3)占用大量处理时间的任务可以定期将处理器时间让给其它任务 (4) ...

  5. Windows内核驱动--实现修改线程优先级demo

    在User下修改优先级比较麻烦,该驱动可以直接用线程ID,和优先级级数两个参数直接修改线程的优先级: Client代码: #include <Windows.h> #include < ...

  6. Linux 安装exclipse

    1,在官网下载:https://www.eclipse.org/downloads/packages/ 2,前提:安装好jdk 3,使用命令解压:tar -zxvf eclipse_xxxxxx.ta ...

  7. 初识Stream API + Lambda表达式

    使用新特性简化代码,增强可读性 package com.gg.java8; import java.util.*; import org.junit.Test; public class TestLa ...

  8. odoo前后端交互详解

    为了简单叙述,暂时不考虑多个db的情况(主要是懒得说没有db或者多个db实例的情况)当odoo指定数据库开启服务时(也就是odoo-bin -d <some_db_name> ),我们使用 ...

  9. appium自动化测试(5)-一些pyhon操作

    1.套件的问题 将所有的测试用例加进去,会一个个执行,用于用例名字没有规范test开头的时候 def suite(): suite = unittest.TestSuite suite.addTest ...

  10. 第2篇-JVM虚拟机这样来调用Java主类的main()方法

    在前一篇 第1篇-关于JVM运行时,开篇说的简单些 中介绍了call_static().call_virtual()等函数的作用,这些函数会调用JavaCalls::call()函数.我们看Java类 ...