docs/doc/source/node_management/kubernetes/install-node-feature-discov...

3.0 KiB

Install Node Feature Discovery Application

Node Feature Discovery (NFD) detects hardware features available on each node in a kubernetes cluster and advertises those features using kubernetes node labels. Use the following procedure to install the application.

Before attempting to install the application, ensure that your system meets the following requirements:

  1. Ensure that you have at least kubernetes version v1.24.4 installed. If kubernetes v1.24.4 is not installed, see manual-kubernetes-components-upgrade for more details.

  2. If you have previously installed the Helm chart, you need to uninstall it before proceeding with the new installation. To uninstall, use the following command:

    ~(keystone_admin)]$ helm uninstall node-feature-discovery -n <namespace>

    <namespace> is the location, where you installed the Helm chart.

Use the following steps to install the application:

  1. Locate the tarball in the /usr/local/share/applications/helm directory.

    For example:

    /usr/local/share/applications/helm/node-feature-discovery-<version>.tgz

    Replace <version> with the latest version number.

  2. Upload the application using the following command.

    ~(keystone_admin)]$ system application-upload /usr/local/share/applications/helm/node-feature-discovery-<version>.tgz

    Replace <version> with the latest version number.

  3. Verify that the application has been uploaded successfully.

    ~(keystone_admin)]$ system application-list
  4. Apply the updates using the following command.

    ~(keystone_admin)]$ system application-apply node-feature-discovery
  5. Monitor the status of the installation using one of the following commands.

    ~(keystone_admin)]$ watch system application-list
    
    or
    
    ~(keystone_admin)]$ watch kubectl get pods -n node-feature-discovery

  • A worker pod is created for each node in the kubernetes cluster. These worker pods gather information about node features periodically and updates the labels associated with the nodes.
  • Additionally, there is one master pod that gathers all the updated data from worker pods and reports it for efficient feature management and a garbage collection of stake node feature objects pod.

The application is now installed on your system, and the hardware features available on each node in the kubernetes cluster will be detected and advertised using kubernetes node labels. To check the label for any configuration, use the following command:

~(keystone_admin)]$ kubectl label node/<node's name> --list | grep "feature.node.kubernetes.io"

Where <node's name> is name of the node.