From 1a8eacc2c0ffad3011b3687c2cc8a196e8508e1a Mon Sep 17 00:00:00 2001 From: Zespre Chang Date: Tue, 27 Aug 2024 18:30:20 +0800 Subject: [PATCH] doc(ccm): state that lb feature requires macvlan Signed-off-by: Zespre Chang --- docs/rancher/cloud-provider.md | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/docs/rancher/cloud-provider.md b/docs/rancher/cloud-provider.md index 55fcf91d78..8dbdee59b4 100644 --- a/docs/rancher/cloud-provider.md +++ b/docs/rancher/cloud-provider.md @@ -41,6 +41,26 @@ For a detailed support matrix, please refer to the **Harvester CCM & CSI Driver - The Harvester virtual machines run as guest Kubernetes nodes are in the same namespace. - The Harvester virtual machine guests' hostnames match their corresponding Harvester virtual machine names. Guest cluster Harvester VMs can't have different hostnames than their Harvester VM names when using the Harvester CSI driver. We hope [to remove this limitation](https://github.com/harvester/harvester/issues/4396) in a future release of Harvester. + +:::note important + +The Harvester virtual machines must have the `macvlan` kernel module available. This module is required for the `LoadBalancer` services of DHCP mode to work. + +You can do the following to check whether the kernel module is available or not: + +```shell +# Log into the virtual machine +$ lsmod | grep macvlan +$ sudo modprobe macvlan +modprobe: FATAL: Module macvlan not found in directory /lib/modules/5.14.21-150400.22-default +``` + +If the first command does not produce output and the second command displays an error message similar to the one above, it indicates a potential issue. + +It is known that SUSE Linux Enterprise 15 Service Pack 4/5/6 minimal cloud images do not include the `macvlan` kernel module by default ([related GitHub issue](https://github.com/harvester/harvester/issues/6418)). These images come with the `kernel-default-base` package pre-installed. However, by installing the `kernel-default` package, the `macvlan` kernel driver will become available. To avoid the need for manual intervention after the guest cluster has been provisioned, it is advisable to customize the cloud image in advance. You can build your own images with openSUSE Build Service (OBS). The key is to remove the `kernel-default-base` package and add the `kernel-default` package in the `Minimal.kiwi` file to ensure that the resulting cloud image is built with the `macvlan` kernel module included. For detailed steps building a customized image, please refer to [Custom SUSE VM Images](../advanced/customsuseimages.md). + +::: + ### Deploying to the RKE1 Cluster with Harvester Node Driver When spinning up an RKE cluster using the Harvester node driver, you can perform two steps to deploy the `Harvester` cloud provider: