You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Harvester makes optional functionality available as Addons.
11
+
Harvester provides optional features as add-ons to maintain a minimal installation footprint. This design allows you to easily enable or disable functionality based strictly on your use case and requirements. You can customize the settings of each add-on, though the level of customization depends on the underlying software.
12
12
13
-
One of the key reasons for the same is to ensure that Harvester installation footprint can be kept low while allowing users to enable/disable functionality based on their use case or requirements.
13
+
The following add-ons are available in this version:
14
14
15
-
Some level of customization is allowed for each addon, which depends on the underlying addon.
The [Kubernetes Descheduler](https://github.com/kubernetes-sigs/descheduler) optimizes workload scheduling by evicting pods that are not optimally placed according to administrator-defined policies. This crucial function enhances resource utilization, balances workloads across nodes, and improves overall cluster performance.
10
+
11
+
## Enabling the Add-on
12
+
13
+
When enabled, the add-on deploys the Descheduler in the `kube-system` namespace and a related configuration in the `kube-system/descheduler` ConfigMap. You can enable the add-on only when the cluster has more than one node.
14
+
15
+
1. On the Harvester UI, go to **Advanced** > **Add-ons**.
16
+
17
+
1. Select **descheduler (Experimental)**, and then select **⋮** > **Enable**.
18
+
19
+

20
+
21
+
## Customizing Descheduler Policies
22
+
23
+
Select **⋮** > **Edit YAML** to customize the Descheduler policies according to your requirements. The configuration is defined in YAML format.
-`deschedulingInterval`: How often the Descheduler runs. The default value is `5m` (5 minutes).
30
+
-`maxNoOfPodsToEvictPerNode`: Maximum number of pods that can be evicted during a single descheduling cycle. The default is value is `5`.
31
+
-`evictableNamespaces.exclude`: Namespaces to be excluded from eviction. By default, the system namespaces are excluded to protect critical system components.
32
+
-`targetThresholds`: Upper utilization limit for monitored resources. Nodes whose usage exceeds this threshold are marked as overutilized, triggering pod eviction to reduce their load. Default values are automatically applied for CPU (`50`) and memory (`50`), but you can define values for other monitored resources.
33
+
-`thresholds`: Lower utilization limit for monitored resources. Pods evicted from overutilized nodes are rescheduled only to nodes whose usage is currently below this threshold. Default values are automatically applied for CPU (`30`) and memory (`30`), but you can define values for other monitored resources.
34
+
35
+
## Disabling the Add-on
36
+
37
+
1. On the Harvester UI, go to **Advanced** > **Add-ons**.
38
+
39
+
1. Select **descheduler (Experimental)**, and then select **⋮** > **Disable**.
**harvester-csi-driver-lvm** is an *experimental* add-on. It is not included in the Harvester ISO, but you can download it from the [experimental-addons repository](https://github.com/harvester/experimental-addons). For more information about experimental features, see [Feature Labels](../../getting-started/document-conventions.md#feature-labels).
14
+
15
+
:::
12
16
13
17
Harvester allows you to use local storage on the host to create persistent volumes for your workloads with better performance and latency. This functionality is made possible by LVM, which provides logical volume management facilities on Linux.
14
18
15
-
## Installing and Enabling harvester-csi-driver-lvm
19
+
The **harvester-csi-driver-lvm** add-on is a CSI driver that supports local path provisioning through LVM.
16
20
17
-
The `harvester-csi-driver-lvm` add-on is a CSI driver that supports local path provisioning through LVM. It is not packaged into the Harvester ISO, but is available in the [experimental-addons](https://github.com/harvester/experimental-addons) repository.
21
+
## Installing and Enabling the Add-on
18
22
19
-
If you are using the Harvester kubeconfig file, you can perform the following steps:
23
+
If you are using the Harvester kubeconfig file, you can install the add-on by performing the following steps:
20
24
21
25
1. Install the add-on by running the following command:
The status **Not Ready** is normal because Harvester creates the LVM volume only when the first workload is created.
121
+
The status **Not Ready** is normal because Harvester creates the LVM volume only when the first workload is created.
118
122
119
-
:::
123
+
:::
120
124
121
125
1. On the **Virtual Machines** screen, select the target virtual machine, and then select **⋮** > **Add Volume**.
122
126
123
-
:::note
127
+
:::note
124
128
125
-
Because the LVM volume is a local volume, you must ensure that the target node of the LVM StorageClass is the node on which the virtual machine is scheduled.
129
+
Because the LVM volume is a local volume, you must ensure that the target node of the LVM StorageClass is the node on which the virtual machine is scheduled.
You can also create a new virtual machine with the volume of the LVM StorageClass that you created. This virtual machine will be scheduled on the target node with local storage for the volume.
138
142
@@ -146,24 +150,24 @@ You can also create a new virtual machine with the volume of the LVM StorageClas
146
150
147
151
1. In the **csi-driver-config** section, select **⋮** > **Edit Setting**.
0 commit comments