1
0
Fork 0
mirror of https://github.com/kubernetes-sigs/node-feature-discovery.git synced 2024-12-14 11:57:51 +00:00
Commit graph

451 commits

Author SHA1 Message Date
Ukri Niemimuukko
0a2e3bb18d Topology-updater introduction typo fix
Signed-off-by: Ukri Niemimuukko <ukri.niemimuukko@intel.com>
2021-11-12 12:10:33 +02:00
Elias Koromilas
e22b937391 Implicitly generate the worker ConfigMap name
Signed-off-by: Elias Koromilas <elias.koromilas@gmail.com>
2021-11-03 11:21:58 +02:00
Swati Sehgal
ab62172a8d Documentation capturing enablement of NFD-Topology-Updater in NFD
Prior to this feature, NFD consisted of only software components namely
nfd-master and nfd-worker. We have introduced another software component
called nfd-topology-updater.

NFD-Topology-Updater is a daemon responsible for examining allocated resources
on a worker node to account for allocatable resources on a per-zone basis (where
a zone can be a NUMA node). It then communicates the information to nfd-master
which does the CRD 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.

Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
2021-10-29 10:14:38 +01:00
Markus Lehtonen
9e9ff951b2 docs: mention minimum required kubectl version
Kubectl prior to v1.21 contains too old version of kustomize for our
(kustomize-based) deployment to work.
2021-10-26 18:01:25 +03:00
Wei Zhang
158a5590ab deployment: add topology updater helm chart
Signed-off-by: Wei Zhang <kweizh@gmail.com>
2021-10-26 10:52:40 +08:00
Elias Koromilas
c17a898c4c
deployment: Simplify NFD worker configuration in Helm (#627)
* Simplify NFD worker service configuration in Helm

Signed-off-by: Elias Koromilas <elias.koromilas@gmail.com>

* Update docs/get-started/deployment-and-usage.md

Co-authored-by: Markus Lehtonen <markus.lehtonen@intel.com>

Co-authored-by: Markus Lehtonen <markus.lehtonen@intel.com>
2021-10-25 09:34:23 -07:00
Markus Lehtonen
d65d6ab2f4 docs: update ruby deps 2021-10-11 11:27:16 +03:00
Markus Lehtonen
f8bacd9097 docs: update jekyll-rdt-theme to v2.0.10
Update jekyll-rdt-theme to the latest released version. Also sync site
customization (docs/_includes) with that.
2021-10-11 11:26:37 +03:00
Markus Lehtonen
819f333118 docs: fix TOCs
Make table of contents in the pages cleaner and more readable by
dropping the main heading (H1 level) from TOCs. This was the original
intention with the usage of "no_toc" kramdown magic, which was broken,
however. The kramdown class magic needs to be specified on the line
immediately following the headinds, otherwise it has no effect. We need
to disable MD022 rule of mdlint as it does not understand this magic.
2021-09-30 10:26:25 +03:00
krishna2603
dbb99c6f18
Update developer-guide.md
changed exapmle to example
2021-09-29 23:58:27 +05:30
Markus Lehtonen
89d0f4ff3c docs: remote wip note from worker configuration reference
All configuration options are documented.
2021-09-27 15:37:50 +03:00
Carlos Eduardo Arango Gutierrez
6f4fbefacd
Fix broken link on docs/get-started
Signed-off-by: Carlos Eduardo Arango Gutierrez <carangog@redhat.com>
2021-09-21 07:57:55 -05:00
Carlos Eduardo Arango Gutierrez
f9e09e5fd4
Fix broken link for worker-conf example
Signed-off-by: Carlos Eduardo Arango Gutierrez <carangog@redhat.com>
2021-09-02 11:41:03 -05:00
Kubernetes Prow Robot
92920d48d3
Merge pull request #589 from vaibhav2107/link-deploy
Fix a link in deployment-and-usage.md
2021-09-02 05:46:10 -07:00
Vaibhav
ac720ef57a Fix a link in deployment-and-usage.md 2021-09-01 22:41:04 +05:30
Kubernetes Prow Robot
189f86bec8
Merge pull request #548 from marquiz/devel/profile-ns
nfd-master: allow profile.node.kubernetes.io label ns
2021-08-27 07:24:04 -07:00
Vaibhav Goel
87feb9610b
Fix the typo in deployment-and-usage.md (#575)
* Fix the typo in deployment-and-usage.md

* Update in doc/get-started/deployment-and-usage.md
2021-08-25 00:32:39 -07:00
Kubernetes Prow Robot
c07c6354fc
Merge pull request #572 from marquiz/docs/cstate
docs: clarify the cpu.cstate feature
2021-08-19 07:55:24 -07:00
Markus Lehtonen
7dfd7d289f docs: document all the provided kustomize overlays 2021-08-18 15:10:25 +03:00
Markus Lehtonen
63c1256d08 Drop deployment templates
Resort to kustomize, instead. Update docs and scripts, accordingly.

Bump cert-manager version in the deployment instructions to v1.5.1.
2021-08-18 15:10:25 +03:00
Markus Lehtonen
0f2554abf1 helm: move files under deployment/helm 2021-08-16 14:44:26 +03:00
Markus Lehtonen
4ef58d7fc8 docs: clarify the cpu.cstate feature 2021-08-13 11:43:03 +03:00
Markus Lehtonen
55bd633425 nfd-master: allow profile.node.kubernetes.io label ns
Add a separate label namespace for profile labels, intended for
user-specified higher level "meta features". Also sub-namespaces of this
(i.e. <sub-ns>.profile.node.kubernetes.io) are allowed.
2021-08-10 19:39:59 +03:00
Kubernetes Prow Robot
4a22a39928
Merge pull request #536 from marquiz/devel/label-sub-ns
nfd-master: allow sub-namespaces of the default label ns
2021-08-10 04:19:18 -07:00
Markus Lehtonen
eb666f521d nfd-master: allow sub-namespaces of the default label ns
Allow <sub-ns>.feature.node.kubernetes.io label namespaces. Makes it
possible to have e.g. vendor specific label ns without the need to user
-extra-label-ns.
2021-08-10 11:41:52 +03:00
Carlos Eduardo Arango Gutierrez
59172007b2
Remove wrong comands
Signed-off-by: Carlos Eduardo Arango Gutierrez <carangog@redhat.com>
2021-08-04 21:01:02 -05:00
Markus Lehtonen
31bd91988f cpuid: correct the name of SSE4* cpuid flags
The naming was changed in when with cpuid v2
(github.com/klauspost/cpuid/v2) and we didn't catch this in NFD. No
issue reports of the inadvertent naming change so let's just adapt to
the updated naming in NFD configuration. The SSE4* labels are disabled
by default so they're not widely used, if at all.
2021-07-06 11:54:55 +03:00
Markus Lehtonen
4d19e1ab85 docs: show full version number in sidebar
Change the sidebar customization so that the full version (e.g. v0.8.2)
is displayed, instead of the truncated "releae branch version" (e.g.
v0.8) in the top left corner of the page. The items in the version menu
are unchanged and will still show the shorter form.
2021-05-19 11:02:10 +03:00
Jorik Jonker
d857f88d2d Add support for using USB device serial number
In my homelab, I have different FTDI serial converters connected to
several utility meters. They all have identical vendor/device, but
different serials.

In order to detect a specific FTDI unit (eg.  the one connected to my
electricity meter), I'd like feature labels triggered by a specific USB
serial.

Signed-off-by: Jorik Jonker <jorik@kippendief.biz>
2021-05-06 13:34:39 +00:00
Jordan Jacobelli
630e97a52c helm: add extraLabelNs master flag
Signed-off-by: Jordan Jacobelli <jordanjacobelli04@gmail.com>
2021-04-20 16:25:12 +02:00
robertdavidsmith
77bd4e4cf6
Accept client certs based on SAN, not just CN (#514)
* first attempt at SAN-based VerifyNodeName

* Update docs on verify-node-name
2021-04-20 01:44:32 -07:00
rmr-silicom
a896ff3011
Add support for configurable runtime full and minimal images. (#513)
* Add support for configurable runtime full and minimal images.

* Fixups and renamings.

* Change variables *_IMG_* to *_IMAGE_*

* Fix args in Dockerfile also.
2021-04-20 00:42:33 -07:00
Markus Lehtonen
72a4162c98 docs: fixes in Helm documentation
Use correct spelling of Helm in heading (start with a capital letter).
Use https url for the chart repo.
2021-04-13 10:09:43 +03:00
Kubernetes Prow Robot
ba51a92d63
Merge pull request #492 from adrianchiris/doc-fix-1
Docs: Add Table header to master/worker chart parameters
2021-03-18 10:11:20 -07:00
Adrian Chiris
30dabcf7bf Docs: Add Table header to master/worker chart parameters
While on the project website it looks OK, it does
not render correctly in Markdown.

Signed-off-by: Adrian Chiris <adrianc@nvidia.com>
2021-03-18 15:31:41 +00:00
Markus Lehtonen
11def7b459 docs: describe Helm repo as the primary option for Helm 2021-03-18 16:55:28 +02:00
Kubernetes Prow Robot
b8a1426252
Merge pull request #481 from marquiz/docs/config-reference
docs: document all config file options
2021-03-17 06:28:56 -07:00
Markus Lehtonen
c670526d9f docs: unify the presentation of defaults in worker config reference 2021-03-16 15:09:53 +02:00
Markus Lehtonen
30ef376568 docs: document all config file options
Add rudimentary documentation of all options related to feature sources.
Now all options are covered in the config reference.
2021-03-16 15:09:53 +02:00
Markus Lehtonen
9ba153e081 docs: fix some internal references
Some reference point to the wrong section after headings have changed.
2021-03-16 14:24:15 +02:00
Kubernetes Prow Robot
a78a5d5973
Merge pull request #472 from marquiz/documentation/helm
docs: updates to documentation of Helm parameters
2021-03-16 02:46:34 -07:00
Kubernetes Prow Robot
d15227fe5b
Merge pull request #471 from marquiz/devel/image-minimal
docs: describe deployment of the minimal image
2021-03-15 08:05:05 -07:00
Mikko Ylinen
ee261b8288 Document cert-manager usage
cert-manager can be used to automate TLS certificate management for
nfd-master and the nfd-worker pod(s).

Add a template to deploy cert-manager CA Issuer and Certificates and
document steps how to use them.

Signed-off-by: Mikko Ylinen <mikko.ylinen@intel.com>
2021-03-12 09:39:30 +02:00
Markus Lehtonen
02e5e50dbb docs: describe deployment of the minimal image 2021-03-11 20:35:21 +02:00
Kubernetes Prow Robot
e0d700d378
Merge pull request #463 from bfournie/new_cpu_features
Support for additional cpu features
2021-03-11 07:30:21 -08:00
Kubernetes Prow Robot
344f412e95
Merge pull request #470 from marquiz/docs/headings
docs: unify capitalization of headings
2021-03-11 02:12:24 -08:00
Markus Lehtonen
7fc6cd632c docs: unify capitalization of headings 2021-03-11 12:07:01 +02:00
Markus Lehtonen
708576cd71 docs: change the default of Helm image.repository parameter
Take the default value displayed for the image.repository Helm chart
parameter dynamically from the Jekyll configuration. This way, we
get the correct value for releases/release branches.
2021-03-10 14:21:19 +02:00
Markus Lehtonen
4039278fdf docs: document the image.tag helm parameter 2021-03-10 14:21:17 +02:00
Markus Lehtonen
f4e0c589b8 docs: update documentation on the image variants 2021-03-10 11:10:08 +02:00
Bob Fournier
a65f73e834 Support for additional cpu features
This adds additional cpu features:
- pstate status from status of intel_pstate driver
- pstate scaling settings from scaling_governor
- cstate enable from max_cstates in intel_idle driver
2021-03-05 13:15:49 -05:00
Markus Lehtonen
7e6f740c9f test/e2e: make openshift bits optional
Only enabled if OPENSHIFT is specified in the environment when running
make e2e-test, for example:

  $ OPENSHIFT=y make e2e-test
2021-02-25 17:54:07 +02:00
Markus Lehtonen
3f18e880b4 nfd-worker: dynamic configuration of klog
Make it possible to dynamically (at run-time) alter most of the logging
configuration from the config file.
2021-02-25 16:10:43 +02:00
Markus Lehtonen
7da7fde8f6 nfd-worker: switch to klog
Greatly expands logging capabilities and flexibility with verbosity
options, among other things.
2021-02-25 16:10:43 +02:00
Kubernetes Prow Robot
efa74905ba
Merge pull request #445 from marquiz/devel/klog
nfd-master: switch to klog
2021-02-25 05:43:25 -08:00
Markus Lehtonen
3886cfb99e docs: fix mdlint issues 2021-02-25 15:13:40 +02:00
Markus Lehtonen
bc289d0783 docs: enable markdown linting 2021-02-25 15:13:40 +02:00
Markus Lehtonen
3ffb7b8fc5 nfd-master: switch to klog 2021-02-25 07:50:37 +02:00
Markus Lehtonen
7c9943e634 docs: align docs with the single-dash command line flags
After moving to the flags package for command line argument parsing NFD
accepts command line arguments (flags) starting with a single dash (e.g.
-no-publish in addition to --no-publish). Even if double-dash can be
used the single-dash version is printed e.g. in the usage string (from
-h, -help) so align documentation with that.
2021-02-24 21:31:07 +02:00
Kubernetes Prow Robot
d36500789e
Merge pull request #429 from slintes/configmap-hostname-labels
Added nodename rule to custom source
2021-02-24 09:20:50 -08:00
Marc Sluiter
7038e49d02
source/custom: Add nodename rule
There are cases when the only available metadata for discovering
features is the node's name. The "nodename" rule extends the custom
source and matches when the node's name matches one of the given
nodename regexp patterns.
It is also possible now to set an optional "value" on custom rules,
which overrides the default "true" label value in case the rule matches.
In order to allow more dynamic configurations without having to modify
the complete worker configuration, custom rules are additionally read
from a "custom.d" directory now. Typically that directory will be filled
by mounting one or more ConfigMaps.

Signed-off-by: Marc Sluiter <msluiter@redhat.com>
2021-02-24 16:26:35 +01:00
Markus Lehtonen
3fd61eacdb nfd-worker: switch to flag in command line parsing 2021-02-24 12:06:16 +02:00
Markus Lehtonen
47033db9c1 nfd-master: use flag for command line parsing 2021-02-24 12:06:16 +02:00
Ivan Kolodyazhny
88bd80d415 Add NFD master '--instance' flag support to Helm chart 2021-02-21 09:45:20 +02:00
Adrian Chiris
e80900b8ee Add helm chart for NFD
This commit adds Helm chart for node-feature-discovery

Signed-off-by: Adrian Chiris <adrianc@nvidia.com>
Signed-off-by: Ivan Kolodiazhnyi <ikolodiazhny@nvidia.com>
2021-02-18 17:19:09 +02:00
Markus Lehtonen
d761bc4fcd docs: update documentation regarding configuration
Publish an incomplete version of the NFD Worker Configuration File
Reference, currently covering only the newly added 'core' configuration
flags.
2021-02-17 21:42:52 +02:00
Markus Lehtonen
7e88f00e05 nfd-worker: add core.sources config option
Add a config file option for controlling the enabled feature sources,
aimed at replacing the --sources command line flag which is now marked
as deprecated. The command line flag takes precedence over the config
file option.
2021-02-17 21:36:20 +02:00
Markus Lehtonen
ed177350fc nfd-worker: add core.labelWhiteList config option
Add a config file option for label whitelisting. Deprecate the
--label-whitelist command line flag. Note that the command line flag has
higher priority than the config file option.
2021-02-17 21:35:44 +02:00
Markus Lehtonen
d1d8de944e nfd-worker: add core.sleepInterval config option
Add a new config file option for (dynamically) controlling the sleep
interval. At the same time, deprecate the --sleep-interval command line
flag. The command line flag takes precedence over the config file option.
2021-02-17 21:35:13 +02:00
Markus Lehtonen
e52ec3480f nfd-master: implement --instance flag
This can be used to help running multiple parallel NFD deployments in
the same cluster. The flag changes the node annotation namespace to
<instance>.nfd.node.kubernetes.io allowing different nfd-master intances
to store metadata in separate annotations.
2021-02-10 13:48:31 +02:00
Kubernetes Prow Robot
8aa9460e66
Merge pull request #406 from mythi/cpuid-v2.0
go.mod: update klauspost/cpuid
2020-12-04 06:21:59 -08:00
Kubernetes Prow Robot
c624c88b10
Merge pull request #412 from marquiz/devel/prune
Add namespace and RBAC rules to nfd-prune.yaml.template
2020-12-03 05:41:00 -08:00
Markus Lehtonen
c7e66d910f Add namespace and RBAC rules to nfd-prune.yaml.template
Makes it possible to run prune on its own. Reflect this change in the
documentation.
2020-12-03 14:41:54 +02:00
Markus Lehtonen
d2bfa3c39b docs: more options in uninstallation instructions 2020-12-03 14:36:42 +02:00
Mikko Ylinen
94f49b9418 go.mod: update klauspost/cpuid
The latest changes in klauspost/cpuid add detection for Sapphire Rapids
new instructions.

Signed-off-by: Mikko Ylinen <mikko.ylinen@intel.com>
2020-11-30 19:04:41 +02:00
Markus Lehtonen
979d3b88fe Add nfd-worker-conf ConfigMap to deployment templates
Add a virtually empty ConfigMap that is mounted inside the workers.
Makes it easier to start customizing the worker deployment e.g. with just:

  $ kubectl -n ${NFD_NS} edit configmap nfd-worker-conf

Create a new 'templates' make target for inserting the content of
nfd-worker.conf.example into the configmap spec of the templates. Thus,
'make templates' should be run whenever the example config is update.
Update the verify.sh prow script to check that the templates are up to
date.

This patch also streamlines the documentation about configuration
management, reflecting the changes.
2020-11-23 18:49:52 +02:00
Kubernetes Prow Robot
83e2a9defb
Merge pull request #356 from marquiz/devel/sources-flag
nfd-worker: add special handling for --sources=all
2020-11-22 01:53:33 -08:00
Markus Lehtonen
40be2c7e0c docs: specify container image in config 2020-11-20 17:00:19 +02:00
Markus Lehtonen
29cbb2429c nfd-worker: add special handling for --sources=all
A new special value 'all' is a shortcut for enabling all feature
sources. It should be the only name specified -- if any other names are
specified 'all' does not take effect, but, we only enable the listed
feature sources. E.g.
  --sources=all enables all sources, but
  --sources=all,cpu only enables the cpu source

Also, print a warning if unknown sources are specified.
2020-11-20 16:23:53 +02:00
Markus Lehtonen
417bc6cdcf docs: improve documentation of the custom source
Better explain where the rules configuration is supposed to be
specified.
2020-11-20 12:10:02 +02:00
Markus Lehtonen
880ef462f7 docs: drop broken/outdated reference to kubernetes-incubator 2020-11-02 17:07:12 +02:00
Markus Lehtonen
f3db20bdcb docs: support versioned links to gihub blobs
Make the links point to the blob from the release corresponding the
documentation.
2020-11-02 17:05:39 +02:00
Markus Lehtonen
18ffd2a06d docs: fix broken refs 2020-11-02 13:51:09 +02:00
Markus Lehtonen
5295feb1ee docs: polish the version menu
Only show the dynamic version menu in production environment where it's
available. Local (development) builds only show a stub version menu with
one item.

Also, fix the theme customization. Append version list items to the
correct element in html so that they are displayed correctly. Drop
unnecessary <div/>.
2020-10-30 08:41:33 +02:00
Markus Lehtonen
e036d26953 docs: update the navbar versions menu
Make it hidden, by default. Unify style with other items in the navbar
(making version list horizontal, for example). Show current version next
to the caret mark that opens the menu.
2020-10-29 22:32:25 +02:00
Markus Lehtonen
82f5c89e1a docs: sync navbar from jekyll-rdt-theme v2.0.9 2020-10-29 22:27:42 +02:00
Kubernetes Prow Robot
12b6812456
Merge pull request #371 from marquiz/documentation/dynamic-version-menu
docs: make the list of available versions dynamic
2020-10-29 13:08:07 -07:00
Markus Lehtonen
f6669e7d66 docs: add todo/placeholder pages under advanced
Placeholders for content that will be added in the future. Do not
publish these virtually empty pages.
2020-10-29 14:08:16 +02:00
Markus Lehtonen
fb106558e8 docs: instructions for uninstallation and operator usage
Describe NFD deployment via the operator.

Add minimal documentation for uninnstalling NFD. Add instructions and
template spec for running "nfd-master --prune".  Also modify the RBAC
rules in nfd-master spec template to make it possible doing --prune
(allow nfd-master to list nodes in the cluster).
2020-10-29 14:08:16 +02:00
Markus Lehtonen
409ad01a1c docs: describe deployment using templates
Use the existing content as a base but with heave editing. Move local
examples involving make to the developers guide.

Drop the really hackish label-nodes.sh. Just replace it with command
line examples in the documentation. If somebody really is dying for this
write it from scratch and put under scripts/hack.
2020-10-29 14:08:16 +02:00
Markus Lehtonen
0c276b6298 docs: add instructions for working on documentation 2020-10-29 14:08:16 +02:00
Markus Lehtonen
6c0d6c9003 docs: add commandline references for nfd-master and nfd-worker 2020-10-29 14:08:16 +02:00
Markus Lehtonen
2469db839f docs: markdown style fixes
Fix markdown syntax and style for content that was moved from README.md
to docs/:
- get-started/introduction
- examples-and-demos
- get-started/features
- contributing

Unify the spelling of master and worker in headings and beginning of
senctences.

Also, env variable for container name in developers-guide.
2020-10-29 14:08:16 +02:00
Markus Lehtonen
a9d45c80ac README: move content over to docs/
Move all content from README.md to the Jekyll site under docs/. Also
re-organize it into multiple sub-pages.

Populate README with fresh content turning it into virtually a big link
to the html-based documentation site. Spiced up with super-quick-start
instructions.
2020-10-29 14:07:08 +02:00
Markus Lehtonen
2215cfa7c6 docs: add landing page and quick-start guide 2020-10-29 13:29:10 +02:00
Markus Lehtonen
c05c6f2e5b docs: make the list of available versions dynamic
Make the list of available versions dynamic. The items displayed is now
generated with javascript. The parent directory of the site is supposed
to contain versions.js providing getVersionListItems() that returns the
available versions.

The update-gh-pages.sh script is modified to update/create versions.js
on every invocation. It simply lists all directories in the root
directory and adds them to the version list.
2020-10-22 21:44:49 +03:00
Markus Lehtonen
194f42f5c9 docs: pin version of jekyll-rtd-theme
Sync our customizations under _includes/ with v2.0.9 of
jekyll-rtd-theme. Also, pin the theme version in order to avoid abrupt
build failures in the future (caused by our customization becoming
incompatible with the rolling latest version).

Also, drop jekyll-rtd-theme from the Gemfile. It's useless there as it's
being mandated by remote-theme setting in _config.yml.
2020-10-22 21:32:17 +03:00
Markus Lehtonen
37cbf80c19 docs: customize the theme to show current version
Show current version (configured in _config.yml) in the sidebar instead
of the latest release from Github.
2020-10-08 10:53:27 +03:00
Markus Lehtonen
611612fd97 docs: add support for versioned documentation
Customize the Jekyll theme to add a simple list of versions.
2020-10-08 10:51:13 +03:00
Markus Lehtonen
5ec91935df Makefile: add rules for building html docs
Add rules for building and serving the html documentation inside a
container.
- 'make site-build' will build the html content unders docs/_site.
- 'make site-serve' builds the site content and serves it at
  http://localhost:4000/
2020-10-08 10:51:13 +03:00
Markus Lehtonen
d8ed7a7131 docs: initial site setup
Bootstrap a new Jekyll site with stub content for testing gh-pages
integration.

Use jekyll-rdt-theme from
https://github.com/rundocs/jekyll-rtd-theme
2020-10-08 10:50:04 +03:00