404
Not Found
diff --git a/master/404.html b/master/404.html index eac8232fe..7a1d6efce 100644 --- a/master/404.html +++ b/master/404.html @@ -1 +1 @@ -
Not Found
Not Found
git clone https://github.com/kubernetes-sigs/node-feature-discovery
+ Developer guide · Node Feature Discovery
Developer guide
Table of contents
Building from source
Download the source code
git clone https://github.com/kubernetes-sigs/node-feature-discovery
cd node-feature-discovery
Docker build
Build the container image
See customizing the build below for altering the container image registry, for example.
make
Push the container image
Optional, this example with Docker.
docker push <IMAGE_TAG>
diff --git a/master/advanced/index.html b/master/advanced/index.html
index f6b458e8c..68a996dae 100644
--- a/master/advanced/index.html
+++ b/master/advanced/index.html
@@ -1 +1 @@
- Advanced · Node Feature Discovery
Advanced
Advanced topics and reference.
Node Feature Discovery master
\ No newline at end of file
+ Advanced · Node Feature Discovery
Advanced
Advanced topics and reference.
Node Feature Discovery master
\ No newline at end of file
diff --git a/master/advanced/master-commandline-reference.html b/master/advanced/master-commandline-reference.html
index 2ee862fdf..4ee17a3fb 100644
--- a/master/advanced/master-commandline-reference.html
+++ b/master/advanced/master-commandline-reference.html
@@ -1,4 +1,4 @@
- Master cmdline reference · Node Feature Discovery
Commandline flags of nfd-master
Table of contents
- -h, -help
- -version
- -prune
- -port
- -instance
- -ca-file
- -cert-file
- -key-file
- -verify-node-name
- -no-publish
- -label-whitelist
- -extra-label-ns
- -resource-labels
- Logging
To quickly view available command line flags execute nfd-master -help
. In a docker container:
docker run gcr.io/k8s-staging-nfd/node-feature-discovery:master nfd-master -help
+ Master cmdline reference · Node Feature Discovery
Commandline flags of nfd-master
Table of contents
- -h, -help
- -version
- -prune
- -port
- -instance
- -ca-file
- -cert-file
- -key-file
- -verify-node-name
- -no-publish
- -label-whitelist
- -extra-label-ns
- -resource-labels
- Logging
To quickly view available command line flags execute nfd-master -help
. In a docker container:
docker run gcr.io/k8s-staging-nfd/node-feature-discovery:master nfd-master -help
-h, -help
Print usage and exit.
-version
Print version and exit.
-prune
The -prune
flag is a sub-command like option for cleaning up the cluster. It causes nfd-master to remove all NFD related labels, annotations and extended resources from all Node objects of the cluster and exit.
-port
The -port
flag specifies the TCP port that nfd-master listens for incoming requests.
Default: 8080
Example:
nfd-master -port=443
-instance
The -instance
flag makes it possible to run multiple NFD deployments in parallel. In practice, it separates the node annotations between deployments so that each of them can store metadata independently. The instance name must start and end with an alphanumeric character and may only contain alphanumeric characters, -
, _
or .
.
Default: empty
Example:
nfd-master -instance=network
-ca-file
The -ca-file
is one of the three flags (together with -cert-file
and -key-file
) controlling master-worker mutual TLS authentication on the nfd-master side. This flag specifies the TLS root certificate that is used for authenticating incoming connections. NFD-Worker side needs to have matching key and cert files configured in order for the incoming requests to be accepted.
Default: empty
Note: Must be specified together with -cert-file
and -key-file
Example:
nfd-master -ca-file=/opt/nfd/ca.crt -cert-file=/opt/nfd/master.crt -key-file=/opt/nfd/master.key
diff --git a/master/advanced/topology-updater-commandline-reference.html b/master/advanced/topology-updater-commandline-reference.html
index 58c9a039d..ee43aeceb 100644
--- a/master/advanced/topology-updater-commandline-reference.html
+++ b/master/advanced/topology-updater-commandline-reference.html
@@ -1,4 +1,4 @@
- Topology Updater Cmdline Reference · Node Feature Discovery
NFD-Topology-Updater Commandline Flags
Table of Contents
To quickly view available command line flags execute nfd-topology-updater -help
. In a docker container:
docker run gcr.io/k8s-staging-nfd/node-feature-discovery:master nfd-topology-updater -help
+ Topology Updater Cmdline Reference · Node Feature Discovery
NFD-Topology-Updater Commandline Flags
Table of Contents
To quickly view available command line flags execute nfd-topology-updater -help
. In a docker container:
docker run gcr.io/k8s-staging-nfd/node-feature-discovery:master nfd-topology-updater -help
-h, -help
Print usage and exit.
-version
Print version and exit.
-server
The -server
flag specifies the address of the nfd-master endpoint where to connect to.
Default: localhost:8080
Example:
nfd-topology-updater -server=nfd-master.nfd.svc.cluster.local:443
-ca-file
The -ca-file
is one of the three flags (together with -cert-file
and -key-file
) controlling the mutual TLS authentication on the topology-updater side. This flag specifies the TLS root certificate that is used for verifying the authenticity of nfd-master.
Default: empty
Note: Must be specified together with -cert-file
and -key-file
Example:
nfd-topology-updater -ca-file=/opt/nfd/ca.crt -cert-file=/opt/nfd/updater.crt -key-file=/opt/nfd/updater.key
-cert-file
The -cert-file
is one of the three flags (together with -ca-file
and -key-file
) controlling mutual TLS authentication on the topology-updater side. This flag specifies the TLS certificate presented for authenticating outgoing requests.
Default: empty
Note: Must be specified together with -ca-file
and -key-file
Example:
nfd-topology-updater -cert-file=/opt/nfd/updater.crt -key-file=/opt/nfd/updater.key -ca-file=/opt/nfd/ca.crt
diff --git a/master/advanced/worker-commandline-reference.html b/master/advanced/worker-commandline-reference.html
index 52c6e4fb2..fb979a6a0 100644
--- a/master/advanced/worker-commandline-reference.html
+++ b/master/advanced/worker-commandline-reference.html
@@ -1,4 +1,4 @@
- Worker cmdline reference · Node Feature Discovery
Commandline flags of nfd-worker
Table of contents
- -h, -help
- -version
- -config
- -options
- -server
- -ca-file
- -cert-file
- -key-file
- -server-name-override
- -sources
- -no-publish
- -label-whitelist
- -oneshot
- -sleep-interval
- Logging
To quickly view available command line flags execute nfd-worker -help
. In a docker container:
docker run gcr.io/k8s-staging-nfd/node-feature-discovery:master nfd-worker -help
+ Worker cmdline reference · Node Feature Discovery
Commandline flags of nfd-worker
Table of contents
- -h, -help
- -version
- -config
- -options
- -server
- -ca-file
- -cert-file
- -key-file
- -server-name-override
- -sources
- -no-publish
- -label-whitelist
- -oneshot
- -sleep-interval
- Logging
To quickly view available command line flags execute nfd-worker -help
. In a docker container:
docker run gcr.io/k8s-staging-nfd/node-feature-discovery:master nfd-worker -help
-h, -help
Print usage and exit.
-version
Print version and exit.
-config
The -config
flag specifies the path of the nfd-worker configuration file to use.
Default: /etc/kubernetes/node-feature-discovery/nfd-worker.conf
Example:
nfd-worker -config=/opt/nfd/worker.conf
-options
The -options
flag may be used to specify and override configuration file options directly from the command line. The required format is the same as in the config file i.e. JSON or YAML. Configuration options specified via this flag will override those from the configuration file:
Default: empty
Example:
nfd-worker -options='{"sources":{"cpu":{"cpuid":{"attributeWhitelist":["AVX","AVX2"]}}}}'
-server
The -server
flag specifies the address of the nfd-master endpoint where to connect to.
Default: localhost:8080
Example:
nfd-worker -server=nfd-master.nfd.svc.cluster.local:443
diff --git a/master/advanced/worker-configuration-reference.html b/master/advanced/worker-configuration-reference.html
index 05e8b77da..b64f472a3 100644
--- a/master/advanced/worker-configuration-reference.html
+++ b/master/advanced/worker-configuration-reference.html
@@ -1,4 +1,4 @@
- Worker config reference · Node Feature Discovery
Configuration file reference of nfd-worker
Table of contents
See the sample configuration file for a full example configuration.
core
The core
section contains common configuration settings that are not specific to any particular feature source.
core.sleepInterval
core.sleepInterval
specifies the interval between consecutive passes of feature (re-)detection, and thus also the interval between node re-labeling. A non-positive value implies infinite sleep interval, i.e. no re-detection or re-labeling is done.
Note: Overridden by the deprecated --sleep-interval
command line flag (if specified).
Default: 60s
Example:
core:
+ Worker config reference · Node Feature Discovery
Configuration file reference of nfd-worker
Table of contents
See the sample configuration file for a full example configuration.
core
The core
section contains common configuration settings that are not specific to any particular feature source.
core.sleepInterval
core.sleepInterval
specifies the interval between consecutive passes of feature (re-)detection, and thus also the interval between node re-labeling. A non-positive value implies infinite sleep interval, i.e. no re-detection or re-labeling is done.
Note: Overridden by the deprecated --sleep-interval
command line flag (if specified).
Default: 60s
Example:
core:
sleepInterval: 60s
core.sources
core.sources
specifies the list of enabled feature sources. A special value all
enables all feature sources.
Note: Overridden by the deprecated --sources
command line flag (if specified).
Default: [all]
Example:
core:
sources:
diff --git a/master/contributing/index.html b/master/contributing/index.html
index 48ab59538..cf8e89f31 100644
--- a/master/contributing/index.html
+++ b/master/contributing/index.html
@@ -1 +1 @@
- Contributing · Node Feature Discovery
Contributing
Community
You can reach us via the following channels:
- #node-feature-discovery channel in Kubernetes Slack
- SIG-Node mailing list
- File an issue in this repository
Governance
This is a SIG-node subproject, hosted under the Kubernetes SIGs organization in Github. The project was established in 2016 and was migrated to Kubernetes SIGs in 2018.
License
This is open source software released under the Apache 2.0 License.
Node Feature Discovery master
\ No newline at end of file
+ Contributing · Node Feature Discovery
Contributing
Community
You can reach us via the following channels:
- #node-feature-discovery channel in Kubernetes Slack
- SIG-Node mailing list
- File an issue in this repository
Governance
This is a SIG-node subproject, hosted under the Kubernetes SIGs organization in Github. The project was established in 2016 and was migrated to Kubernetes SIGs in 2018.
License
This is open source software released under the Apache 2.0 License.
Node Feature Discovery master
\ No newline at end of file
diff --git a/master/get-started/deployment-and-usage.html b/master/get-started/deployment-and-usage.html
index 2b44a8df8..a66946df4 100644
--- a/master/get-started/deployment-and-usage.html
+++ b/master/get-started/deployment-and-usage.html
@@ -1,4 +1,4 @@
- Deployment and usage · Node Feature Discovery
Deployment and usage
Table of contents
- Requirements
- Image variants
- Deployment options
- Usage
- Worker configuration
- Using node labels
- Uninstallation
Requirements
- Linux (x86_64/Arm64/Arm)
- kubectl v1.21 or later (properly set up and configured to work with your Kubernetes cluster)
Image variants
NFD currently offers two variants of the container image. The "full" variant is currently deployed by default.
Full
This image is based on debian:buster-slim and contains a full Linux system for running shell-based nfd-worker hooks and doing live debugging and diagnosis of the NFD images.
Minimal
This is a minimal image based on gcr.io/distroless/base and only supports running statically linked binaries.
The container image tag has suffix -minimal
(e.g. gcr.io/k8s-staging-nfd/node-feature-discovery:master-minimal
)
Deployment options
Operator
Deployment using the Node Feature Discovery Operator is recommended to be done via operatorhub.io.
- You need to have OLM installed. If you don't, take a look at the latest release for detailed instructions.
-
Install the operator:
kubectl create -f https://operatorhub.io/install/nfd-operator.yaml
+ Deployment and usage · Node Feature Discovery
Deployment and usage
Table of contents
- Requirements
- Image variants
- Deployment options
- Usage
- Worker configuration
- Using node labels
- Uninstallation
Requirements
- Linux (x86_64/Arm64/Arm)
- kubectl v1.21 or later (properly set up and configured to work with your Kubernetes cluster)
Image variants
NFD currently offers two variants of the container image. The "full" variant is currently deployed by default.
Full
This image is based on debian:buster-slim and contains a full Linux system for running shell-based nfd-worker hooks and doing live debugging and diagnosis of the NFD images.
Minimal
This is a minimal image based on gcr.io/distroless/base and only supports running statically linked binaries.
The container image tag has suffix -minimal
(e.g. gcr.io/k8s-staging-nfd/node-feature-discovery:master-minimal
)
Deployment options
Operator
Deployment using the Node Feature Discovery Operator is recommended to be done via operatorhub.io.
- You need to have OLM installed. If you don't, take a look at the latest release for detailed instructions.
-
Install the operator:
kubectl create -f https://operatorhub.io/install/nfd-operator.yaml
-
Create NodeFeatureDiscovery resource (in nfd
namespace here):
cat << EOF | kubectl apply -f -
apiVersion: v1
kind: Namespace
diff --git a/master/get-started/examples-and-demos.html b/master/get-started/examples-and-demos.html
index ec3c84fb3..15347408a 100644
--- a/master/get-started/examples-and-demos.html
+++ b/master/get-started/examples-and-demos.html
@@ -1 +1 @@
- Examples and demos · Node Feature Discovery
Examples and demos
Table of contents
This page contains usage examples and demos.
Demos
Usage demo
Demo use case
A demo on the benefits of using node feature discovery can be found in the source code repository under demo/.
Node Feature Discovery master
\ No newline at end of file
+ Examples and demos · Node Feature Discovery
Examples and demos
Table of contents
This page contains usage examples and demos.
Demos
Usage demo
Demo use case
A demo on the benefits of using node feature discovery can be found in the source code repository under demo/.
Node Feature Discovery master
\ No newline at end of file
diff --git a/master/get-started/features.html b/master/get-started/features.html
index 64814eb48..3ff33438a 100644
--- a/master/get-started/features.html
+++ b/master/get-started/features.html
@@ -1,4 +1,4 @@
- Feature discovery · Node Feature Discovery
Feature discovery
Table of contents
Feature discovery in nfd-worker is performed by a set of separate modules called feature sources. Most of them are specifically responsible for certain domain of features (e.g. cpu). In addition there are two highly customizable feature sources that work accross the system.
Feature labels
Each discovered feature is advertised a label in the Kubernetes Node object. The published node labels encode a few pieces of information:
- Namespace
- all built-in labels use
feature.node.kubernetes.io
- user-specified custom labels (custom and local feature sources)
feature.node.kubernetes.io
and profile.node.kubernetes.io
plus their sub-namespaces (e.g. vendor.profile.node.kubernetes.io
and sub.ns.profile.node.kubernetes.io
) are allowed by default - additional namespaces may be enabled with the
--extra-label-ns
command line flag of nfd-master
- The source for each label (e.g.
cpu
). - The name of the discovered feature as it appears in the underlying source, (e.g.
cpuid.AESNI
from cpu). - The value of the discovered feature.
Feature label names adhere to the following pattern:
<namespace>/<source name>-<feature name>[.<attribute name>]
+ Feature discovery · Node Feature Discovery
Feature discovery
Table of contents
Feature discovery in nfd-worker is performed by a set of separate modules called feature sources. Most of them are specifically responsible for certain domain of features (e.g. cpu). In addition there are two highly customizable feature sources that work accross the system.
Feature labels
Each discovered feature is advertised a label in the Kubernetes Node object. The published node labels encode a few pieces of information:
- Namespace
- all built-in labels use
feature.node.kubernetes.io
- user-specified custom labels (custom and local feature sources)
feature.node.kubernetes.io
and profile.node.kubernetes.io
plus their sub-namespaces (e.g. vendor.profile.node.kubernetes.io
and sub.ns.profile.node.kubernetes.io
) are allowed by default - additional namespaces may be enabled with the
--extra-label-ns
command line flag of nfd-master
- The source for each label (e.g.
cpu
). - The name of the discovered feature as it appears in the underlying source, (e.g.
cpuid.AESNI
from cpu). - The value of the discovered feature.
Feature label names adhere to the following pattern:
<namespace>/<source name>-<feature name>[.<attribute name>]
The last component (i.e. attribute-name
) is optional, and only used if a feature logically has sub-hierarchy, e.g. sriov.capable
and sriov.configure
from the network
source.
The -sources
flag controls which sources to use for discovery.
Note: Consecutive runs of nfd-worker will update the labels on a given node. If features are not discovered on a consecutive run, the corresponding label will be removed. This includes any restrictions placed on the consecutive run, such as restricting discovered features with the -label-whitelist option.
Feature sources
CPU
The cpu feature source supports the following labels:
Feature name Attribute Description cpuid <cpuid flag> CPU capability is supported hardware_multithreading Hardware multithreading, such as Intel HTT, enabled (number of logical CPUs is greater than physical CPUs) power sst_bf.enabled Intel SST-BF (Intel Speed Select Technology - Base frequency) enabled pstate status The status of the Intel pstate driver when in use and enabled, either ‘active' or ‘passive'. turbo Set to ‘true' if turbo frequencies are enabled in Intel pstate driver, set to ‘false' if they have been disabled. scaling_governor The value of the Intel pstate scaling_governor when in use, either ‘powersave' or ‘performance'. cstate enabled Set to ‘true' if cstates are set in the intel_idle driver, otherwise set to ‘false'. Unset if intel_idle cpuidle driver is not active. rdt RDTMON Intel RDT Monitoring Technology RDTCMT Intel Cache Monitoring (CMT) RDTMBM Intel Memory Bandwidth Monitoring (MBM) RDTL3CA Intel L3 Cache Allocation Technology RDTL2CA Intel L2 Cache Allocation Technology RDTMBA Intel Memory Bandwidth Allocation (MBA) Technology
The (sub-)set of CPUID attributes to publish is configurable via the attributeBlacklist
and attributeWhitelist
cpuid options of the cpu source. If whitelist is specified, only whitelisted attributes will be published. With blacklist, only blacklisted attributes are filtered out. attributeWhitelist
has priority over attributeBlacklist
. For examples and more information about configurability, see configuration. By default, the following CPUID flags have been blacklisted: BMI1, BMI2, CLMUL, CMOV, CX16, ERMS, F16C, HTT, LZCNT, MMX, MMXEXT, NX, POPCNT, RDRAND, RDSEED, RDTSCP, SGX, SSE, SSE2, SSE3, SSE4, SSE42 and SSSE3.
NOTE The cpuid features advertise supported CPU capabilities, that is, a capability might be supported but not enabled.
X86 CPUID attributes (partial list)
Attribute Description ADX Multi-Precision Add-Carry Instruction Extensions (ADX) AESNI Advanced Encryption Standard (AES) New Instructions (AES-NI) AVX Advanced Vector Extensions (AVX) AVX2 Advanced Vector Extensions 2 (AVX2)
See the full list in github.com/klauspost/cpuid.
Arm CPUID attribute (partial list)
Attribute Description IDIVA Integer divide instructions available in ARM mode IDIVT Integer divide instructions available in Thumb mode THUMB Thumb instructions FASTMUL Fast multiplication VFP Vector floating point instruction extension (VFP) VFPv3 Vector floating point extension v3 VFPv4 Vector floating point extension v4 VFPD32 VFP with 32 D-registers HALF Half-word loads and stores EDSP DSP extensions NEON NEON SIMD instructions LPAE Large Physical Address Extensions
Arm64 CPUID attribute (partial list)
Attribute Description AES Announcing the Advanced Encryption Standard EVSTRM Event Stream Frequency Features FPHP Half Precision(16bit) Floating Point Data Processing Instructions ASIMDHP Half Precision(16bit) Asimd Data Processing Instructions ATOMICS Atomic Instructions to the A64 ASIMRDM Support for Rounding Double Multiply Add/Subtract PMULL Optional Cryptographic and CRC32 Instructions JSCVT Perform Conversion to Match Javascript DCPOP Persistent Memory Support
Custom
The Custom feature source allows the user to define features based on a mix of predefined rules. A rule is provided input witch affects its process of matching for a defined feature. The rules are specified in the nfd-worker configuration file. See configuration for instructions and examples how to set-up and manage the worker configuration.
To aid in making Custom Features clearer, we define a general and a per rule nomenclature, keeping things as consistent as possible.
Additional configuration directory
Additionally to the rules defined in the nfd-worker configuration file, the Custom feature can read more configuration files located in the /etc/kubernetes/node-feature-discovery/custom.d/
directory. This makes more dynamic and flexible configuration easier. This directory must be available inside the NFD worker container, so Volumes and VolumeMounts must be used for mounting e.g. ConfigMap(s). The example deployment manifests provide an example (commented out) for providing Custom configuration with an additional ConfigMap, mounted into the custom.d
directory.
General nomenclature & definitions
Rule :Represents a matching logic that is used to match on a feature.
Rule Input :The input a Rule is provided. This determines how a Rule performs the match operation.
Matcher :A composition of Rules, each Matcher may be composed of at most one instance of each Rule.
diff --git a/master/get-started/index.html b/master/get-started/index.html
index 2da83f2d3..e57db0028 100644
--- a/master/get-started/index.html
+++ b/master/get-started/index.html
@@ -1,4 +1,4 @@
- Get started · Node Feature Discovery
Node Feature Discovery
Welcome to Node Feature Discovery – a Kubernetes add-on for detecting hardware features and system configuration!
Continue to:
-
Introduction for more details on the project.
-
Quick start for quick step-by-step instructions on how to get NFD running on your cluster.
Quick-start – the short-short version
$ kubectl apply -k https://github.com/kubernetes-sigs/node-feature-discovery/deployment/overlays/default?ref=master
+ Get started · Node Feature Discovery
Node Feature Discovery
Welcome to Node Feature Discovery – a Kubernetes add-on for detecting hardware features and system configuration!
Continue to:
-
Introduction for more details on the project.
-
Quick start for quick step-by-step instructions on how to get NFD running on your cluster.
Quick-start – the short-short version
$ kubectl apply -k https://github.com/kubernetes-sigs/node-feature-discovery/deployment/overlays/default?ref=master
namespace/node-feature-discovery created
serviceaccount/nfd-master created
clusterrole.rbac.authorization.k8s.io/nfd-master created
diff --git a/master/get-started/introduction.html b/master/get-started/introduction.html
index 99fdfd296..d2b4b6d0e 100644
--- a/master/get-started/introduction.html
+++ b/master/get-started/introduction.html
@@ -1,4 +1,4 @@
- Introduction · Node Feature Discovery
Introduction
Table of contents
- NFD-Master
- NFD-Worker
- NFD-Topology-Updater
- Feature Discovery
- Node annotations
- NodeResourceTopology CR
This software enables node feature discovery for Kubernetes. It detects hardware features available on each node in a Kubernetes cluster, and advertises those features using node labels.
NFD consists of three software components:
- nfd-master
- nfd-worker
- nfd-topology-updater
NFD-Master
NFD-Master is the daemon responsible for communication towards the Kubernetes API. That is, it receives labeling requests from the worker and modifies node objects accordingly.
NFD-Worker
NFD-Worker is a daemon responsible for feature detection. It then communicates the information to nfd-master which does the actual node labeling. One instance of nfd-worker is supposed to be running on each node of the cluster,
NFD-Topology-Updater
NFD-Topology-Updater is a daemon responsible for examining allocated resourceson a worker node to account for resources available to be allocated to new pod on a per-zone basis (where a zone can be a NUMA node). It then communicates the information to nfd-master which does the NodeResourceTopology CR creation corresponding to all the nodes in the cluster. One instance of nfd-topology-updater is supposed to be running on each node of the cluster.
Feature Discovery
Feature discovery is divided into domain-specific feature sources:
- CPU
- IOMMU
- Kernel
- Memory
- Network
- PCI
- Storage
- System
- USB
- Custom (rule-based custom features)
- Local (hooks for user-specific features)
Each feature source is responsible for detecting a set of features which. in turn, are turned into node feature labels. Feature labels are prefixed with feature.node.kubernetes.io/
and also contain the name of the feature source. Non-standard user-specific feature labels can be created with the local and custom feature sources.
An overview of the default feature labels:
{
+ Introduction · Node Feature Discovery
Introduction
Table of contents
- NFD-Master
- NFD-Worker
- NFD-Topology-Updater
- Feature Discovery
- Node annotations
- NodeResourceTopology CR
This software enables node feature discovery for Kubernetes. It detects hardware features available on each node in a Kubernetes cluster, and advertises those features using node labels.
NFD consists of three software components:
- nfd-master
- nfd-worker
- nfd-topology-updater
NFD-Master
NFD-Master is the daemon responsible for communication towards the Kubernetes API. That is, it receives labeling requests from the worker and modifies node objects accordingly.
NFD-Worker
NFD-Worker is a daemon responsible for feature detection. It then communicates the information to nfd-master which does the actual node labeling. One instance of nfd-worker is supposed to be running on each node of the cluster,
NFD-Topology-Updater
NFD-Topology-Updater is a daemon responsible for examining allocated resourceson a worker node to account for resources available to be allocated to new pod on a per-zone basis (where a zone can be a NUMA node). It then communicates the information to nfd-master which does the NodeResourceTopology CR creation corresponding to all the nodes in the cluster. One instance of nfd-topology-updater is supposed to be running on each node of the cluster.
Feature Discovery
Feature discovery is divided into domain-specific feature sources:
- CPU
- IOMMU
- Kernel
- Memory
- Network
- PCI
- Storage
- System
- USB
- Custom (rule-based custom features)
- Local (hooks for user-specific features)
Each feature source is responsible for detecting a set of features which. in turn, are turned into node feature labels. Feature labels are prefixed with feature.node.kubernetes.io/
and also contain the name of the feature source. Non-standard user-specific feature labels can be created with the local and custom feature sources.
An overview of the default feature labels:
{
"feature.node.kubernetes.io/cpu-<feature-name>": "true",
"feature.node.kubernetes.io/custom-<feature-name>": "true",
"feature.node.kubernetes.io/iommu-<feature-name>": "true",
diff --git a/master/get-started/quick-start.html b/master/get-started/quick-start.html
index c01b3b14f..3bd386eeb 100644
--- a/master/get-started/quick-start.html
+++ b/master/get-started/quick-start.html
@@ -1,4 +1,4 @@
- Quick start · Node Feature Discovery
Quick start
Minimal steps to deploy latest released version of NFD in your cluster.
Installation
Deploy with kustomize – creates a new namespace, service and required RBAC rules and deploys nfd-master and nfd-worker daemons.
kubectl apply -k https://github.com/kubernetes-sigs/node-feature-discovery/deployment/overlays/default?ref=master
+ Quick start · Node Feature Discovery
Quick start
Minimal steps to deploy latest released version of NFD in your cluster.
Installation
Deploy with kustomize – creates a new namespace, service and required RBAC rules and deploys nfd-master and nfd-worker daemons.
kubectl apply -k https://github.com/kubernetes-sigs/node-feature-discovery/deployment/overlays/default?ref=master
Verify
Wait until NFD master and NFD worker are running.
$ kubectl -n node-feature-discovery get ds,deploy
NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE
daemonset.apps/nfd-worker 2 2 2 2 2 <none> 10s
diff --git a/master/search.html b/master/search.html
index 410167df3..9e636d990 100644
--- a/master/search.html
+++ b/master/search.html
@@ -1 +1 @@
- Search · Node Feature Discovery
Searching
Node Feature Discovery master
\ No newline at end of file
+ Search · Node Feature Discovery
Searching
Node Feature Discovery master
\ No newline at end of file
diff --git a/master/sitemap.xml b/master/sitemap.xml
index b2deb3f6d..14e72762d 100644
--- a/master/sitemap.xml
+++ b/master/sitemap.xml
@@ -1 +1 @@
- https://kubernetes-sigs.github.com/node-feature-discovery/master/get-started/ 1.0 2021-11-05T09:29:30-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/get-started/introduction.html 1.0 2021-11-05T09:29:30-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/advanced/developer-guide.html 1.0 2021-11-05T09:29:30-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/advanced/master-commandline-reference.html 1.0 2021-11-05T09:29:30-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/advanced/ 0.1 2021-11-05T09:29:30-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/get-started/quick-start.html 1.0 2021-11-05T09:29:30-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/contributing/ 0.5 2021-11-05T09:29:30-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/get-started/deployment-and-usage.html 1.0 2021-11-05T09:29:30-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/advanced/worker-commandline-reference.html 1.0 2021-11-05T09:29:30-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/get-started/features.html 1.0 2021-11-05T09:29:30-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/advanced/worker-configuration-reference.html 1.0 2021-11-05T09:29:30-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/advanced/topology-updater-commandline-reference.html 1.0 2021-11-05T09:29:30-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/get-started/examples-and-demos.html 0.5 2021-11-05T09:29:30-05:00
\ No newline at end of file
+ https://kubernetes-sigs.github.com/node-feature-discovery/master/get-started/ 1.0 2021-11-05T10:09:34-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/get-started/introduction.html 1.0 2021-11-05T10:09:34-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/advanced/developer-guide.html 1.0 2021-11-05T10:09:34-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/advanced/master-commandline-reference.html 1.0 2021-11-05T10:09:34-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/advanced/ 0.1 2021-11-05T10:09:34-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/get-started/quick-start.html 1.0 2021-11-05T10:09:34-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/contributing/ 0.5 2021-11-05T10:09:34-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/get-started/deployment-and-usage.html 1.0 2021-11-05T10:09:34-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/advanced/worker-commandline-reference.html 1.0 2021-11-05T10:09:34-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/get-started/features.html 1.0 2021-11-05T10:09:34-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/advanced/worker-configuration-reference.html 1.0 2021-11-05T10:09:34-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/advanced/topology-updater-commandline-reference.html 1.0 2021-11-05T10:09:34-05:00 https://kubernetes-sigs.github.com/node-feature-discovery/master/get-started/examples-and-demos.html 0.5 2021-11-05T10:09:34-05:00
\ No newline at end of file