Markus Lehtonen
917151728a
Add config file support
...
Support yaml/json based config file for nfd. This commit does not add
any actual consumers for the config file, yet.
By default, nfd tries to read
/etc/kubernetes/node-feature-discovery/node-feature-discovery.conf.
This can be changed by specifying the --config command line flag.
2018-10-10 10:24:34 +03:00
Markus Lehtonen
175305b1ad
Implement detection of IOMMU ( #136 ) ( #137 )
...
* Arrange feature sources alphabetically
Just a cosmetic change, but, a small readability improvement.
* Implement detection of IOMMU (#136 )
Add a new feature source, i.e. 'iommu', which detects if an IOMMU is
present and enabled in the kernel. The new node label is
node.alpha.kubernetes-incubator.io/nfd-iommu-present
2018-07-24 08:24:45 -07:00
Markus Lehtonen
01e2110a5c
Make it possible to run nfd as a DaemonSet ( #105 )
...
* Re-order imports in main.go alphabetically
* Refactor argument parsing
* Run nfd periodically in a loop by default
* Implement --sleep-interval command line option
* Add template for running nfd as a Kubernetes DaemonSet
2018-04-11 09:33:06 -07:00
Naga Ravi Chaitanya Elluri
60de66fc03
Advertise selinux status by adding labels
...
This commit:
- enables node-feature-dicovery to advertise selinux status
on the node by adding a label.
- update the template to mount /sys into the container, this is
needed to know about the selinux status on the host
- adds selinux source for unit tests
2018-04-09 16:13:45 -04:00
Olev Kartau
00615be083
Add memory source and NUMA detection.
...
If multiple nodes are marked online in
/sys/devices/system/node/online, it's a sign of NUMA
architecture. Mark it using nfd-memory-numa label.
2018-03-29 09:43:42 +03:00
Olev Kartau
e22ae236cd
Added nonrotational storage detection
...
This change adds feature source "storage".
Add label if any non-rotational block device is present in the node.
The label will be: nfd-storage-nonrotationaldisk=true
2018-03-27 14:30:27 +03:00
Markus Lehtonen
b999a1a6f4
Fix unit tests ( #98 )
...
* Update unit tests
Make the unit tests pass, again.
* Update project dependencies
* Enable unittests in travis
2018-03-01 10:49:57 -08:00
Andy Xie
0ea8ff631e
refactor sources to source pkg
2017-09-05 21:35:33 -07:00
Balaji Subramaniam
689dfbe1c8
Improved unit test coverage.
...
- Refactored code for testing purposes.
- Misc. comment changes.
2016-12-19 13:54:08 -08:00
nfd-merge-bot
8c37ae2ee7
Merge pull request #46 from balajismaniam/enable-graceful-failure
...
Automatic merge from submit-queue
Enabled graceful failure if discovery for a source fails.
Fixes #37 .
- Handles errors from discovery of source.
- Handles panics from discovery of source using recover().
- Added tests.
Before:
```sh
>docker run quay.io/kubernetes_incubator/node-feature-discovery:e7f35ed --sources=cpuid,pstate,fake --no-publish
2016/11/15 22:39:55 node.alpha.intel.com/node-feature-discovery.version = e7f35ed-dirty
2016/11/15 22:39:55 node.alpha.intel.com/nfd-cpuid-NX = true
2016/11/15 22:39:55 node.alpha.intel.com/nfd-cpuid-MMX = true
2016/11/15 22:39:55 node.alpha.intel.com/nfd-cpuid-SSE = true
2016/11/15 22:39:55 node.alpha.intel.com/nfd-cpuid-SSE4.2 = true
2016/11/15 22:39:55 node.alpha.intel.com/nfd-cpuid-RDTSCP = true
2016/11/15 22:39:55 node.alpha.intel.com/nfd-cpuid-RDSEED = true
2016/11/15 22:39:55 node.alpha.intel.com/nfd-cpuid-MMXEXT = true
2016/11/15 22:39:55 node.alpha.intel.com/nfd-cpuid-SSE3 = true
2016/11/15 22:39:55 node.alpha.intel.com/nfd-cpuid-AVX = true
2016/11/15 22:39:55 node.alpha.intel.com/nfd-cpuid-LZCNT = true
2016/11/15 22:39:55 node.alpha.intel.com/nfd-cpuid-POPCNT = true
2016/11/15 22:39:55 node.alpha.intel.com/nfd-cpuid-CMOV = true
2016/11/15 22:39:55 node.alpha.intel.com/nfd-cpuid-SSSE3 = true
2016/11/15 22:39:55 node.alpha.intel.com/nfd-cpuid-AESNI = true
2016/11/15 22:39:55 node.alpha.intel.com/nfd-cpuid-CLMUL = true
2016/11/15 22:39:55 node.alpha.intel.com/nfd-cpuid-SSE2 = true
2016/11/15 22:39:55 node.alpha.intel.com/nfd-cpuid-SSE4.1 = true
2016/11/15 22:39:55 node.alpha.intel.com/nfd-cpuid-RDRAND = true
2016/11/15 22:39:55 node.alpha.intel.com/nfd-cpuid-CX16 = true
2016/11/15 22:39:55 discovery failed for source [pstate]: can't detect whether turbo boost is enabled: open /sys/devices/system/cpu/intel_pstate/no_turbo: no such file or directory
```
After:
```sh
>docker run quay.io/kubernetes_incubator/node-feature-discovery:e7f35ed-dirty --sources=cpuid,pstate,fake --no-publish
2016/11/15 22:38:55 node.alpha.intel.com/node-feature-discovery.version = e7f35ed-dirty
2016/11/15 22:38:55 node.alpha.intel.com/nfd-cpuid-RDTSCP = true
2016/11/15 22:38:55 node.alpha.intel.com/nfd-cpuid-CMOV = true
2016/11/15 22:38:55 node.alpha.intel.com/nfd-cpuid-MMX = true
2016/11/15 22:38:55 node.alpha.intel.com/nfd-cpuid-SSE2 = true
2016/11/15 22:38:55 node.alpha.intel.com/nfd-cpuid-RDSEED = true
2016/11/15 22:38:55 node.alpha.intel.com/nfd-cpuid-SSE = true
2016/11/15 22:38:55 node.alpha.intel.com/nfd-cpuid-SSE4.2 = true
2016/11/15 22:38:55 node.alpha.intel.com/nfd-cpuid-AESNI = true
2016/11/15 22:38:55 node.alpha.intel.com/nfd-cpuid-POPCNT = true
2016/11/15 22:38:55 node.alpha.intel.com/nfd-cpuid-CX16 = true
2016/11/15 22:38:55 node.alpha.intel.com/nfd-cpuid-MMXEXT = true
2016/11/15 22:38:55 node.alpha.intel.com/nfd-cpuid-SSSE3 = true
2016/11/15 22:38:55 node.alpha.intel.com/nfd-cpuid-SSE4.1 = true
2016/11/15 22:38:55 node.alpha.intel.com/nfd-cpuid-LZCNT = true
2016/11/15 22:38:55 node.alpha.intel.com/nfd-cpuid-RDRAND = true
2016/11/15 22:38:55 node.alpha.intel.com/nfd-cpuid-NX = true
2016/11/15 22:38:55 node.alpha.intel.com/nfd-cpuid-SSE3 = true
2016/11/15 22:38:55 node.alpha.intel.com/nfd-cpuid-AVX = true
2016/11/15 22:38:55 node.alpha.intel.com/nfd-cpuid-CLMUL = true
2016/11/15 22:38:55 discovery failed for source [pstate]: can't detect whether turbo boost is enabled: open /sys/devices/system/cpu/intel_pstate/no_turbo: no such file or directory
2016/11/15 22:38:55 continuing ...
2016/11/15 22:38:55 node.alpha.intel.com/nfd-fake-fakefeature1 = true
2016/11/15 22:38:55 node.alpha.intel.com/nfd-fake-fakefeature2 = true
2016/11/15 22:38:55 node.alpha.intel.com/nfd-fake-fakefeature3 = true
```
2016-11-15 16:42:45 -08:00
Balaji Subramaniam
398deb7cc1
Enabled graceful failure if discovery for a source fails.
...
- Handles errors from discovery of source.
- Handles panics from discovery of source using recover().
- Added tests.
2016-11-15 16:24:53 -08:00
Connor Doyle
58c075c98b
Use out-of-tree k8s go client.
2016-11-15 16:00:51 -08:00
Cody Roseborough
88c15c2358
Fixes #25 : Deletes non-discovered nfd labels
...
Adds RemoveLabels() to remove all labels from a node that contains the
supplied search string. Uses this to remove node-feature-discovery
labels prior to re-applying newly discovered labels.
This behavior applies to consecutive runs of node-feature-discovery and
whatever restrictions are placed on it. For example if a whitelist is
specified that changes the labels that are discovered, any labels that
do not match the whitelist will be removed. Adds a small note to the
readme to point out this fact.
Adds tests to main_test.go to test the behavior of AddLabels and
RemoveLabels.
2016-11-02 14:40:17 -07:00
Connor Doyle
570d1ae5be
Replayed commit history.
2016-08-31 11:44:06 -07:00
Balaji Subramaniam
d5a9c621f9
Added tests.
...
- Updated mock tests.
- Refactored to get more coverage.
- Minor changes to normalize error reporting.
2016-08-30 14:42:59 -07:00