4.10.7. 使用 Local Storage Operator pod 的容限
污点可用于节点,以防止它们运行常规工作负载。要允许 Local Storage Operator 使用污点节点,您必须在 Pod
或 DaemonSet
定义中添加容限。这允许在这些污点节点上运行所创建的资源。
您可以通过 LocalVolume
资源把容限应用到 Local Storage Operator pod,通过节点规格把污点应用到一个节点。节点上的污点指示节点排斥所有不容许该污点的 pod。使用一个没有存在于其他 pod 上的特定污点可确保 Local Storage Operator pod 也可以在该节点上运行。
重要
污点与容限由 key、value 和 effect 组成。作为参数,它表示为 key=value:effect
。运算符允许您将其中一个参数留空。
先决条件
- 安装了 Local Storage Operator。
- 本地磁盘已附加到带有一个污点的 OpenShift Container Platform 节点上。
- 污点节点可以置备本地存储。
流程
配置本地卷以便在污点节点上调度:
修改定义
Pod
的 YAML 文件并添加LocalVolume
规格,如下例所示:apiVersion: "local.storage.openshift.io/v1" kind: "LocalVolume" metadata: name: "local-disks" namespace: "openshift-local-storage" spec: tolerations: - key: localstorage 1 operator: Equal 2 value: "localstorage" 3 storageClassDevices: - storageClassName: "localblock-sc" volumeMode: Block 4 devicePaths: 5 - /dev/xvdg
可选: 要只在污点节点上创建本地持久性卷,修改 YAML 文件并添加
LocalVolume
spec,如下例所示:spec: tolerations: - key: node-role.kubernetes.io/master operator: Exists
定义的容限度将传递给生成的守护进程集,允许为包含指定污点的节点创建 diskmaker 和 provisioner pod。