2022-04-12 07:46:55 +00:00
<!DOCTYPE html> < html lang = "en" dir = "auto" > < head > < meta charset = "utf-8" > < meta name = "viewport" content = "width=device-width, initial-scale=1, maximum-scale=5, user-scalable=no" > < meta name = "description" content = "Introduction Table of contents NFD-Master NFD-Worker NFD-Topology-Updater Feature Discovery Node annotations NodeResourceTopology CR This software ..." > < meta name = "revised" content = "" > < meta name = "author" content = "Kubernetes SIGs" > < meta name = "generator" content = "rundocs/jekyll-rtd-theme v2.0.10" > < meta name = "theme-color" content = "#2980b9" > < title > Introduction · Node Feature Discovery< / title > < meta name = "twitter:title" content = "Introduction · Node Feature Discovery" > < meta name = "twitter:description" content = "Introduction Table of contents NFD-Master NFD-Worker NFD-Topology-Updater Feature Discovery Node annotations NodeResourceTopology CR This software ..." > < meta name = "twitter:card" content = "summary" > < meta name = "twitter:site" content = "@Kubernetes SIGs" > < meta name = "twitter:url" content = "https://kubernetes-sigs.github.com/node-feature-discovery/v0.10/get-started/introduction.html" > < meta name = "twitter:creator" content = "@rundocs/jekyll-rtd-theme v2.0.10" > < meta property = "og:title" content = "Introduction · Node Feature Discovery" > < meta property = "og:description" content = "Introduction Table of contents NFD-Master NFD-Worker NFD-Topology-Updater Feature Discovery Node annotations NodeResourceTopology CR This software ..." > < meta property = "og:locale" content = "en" > < meta property = "og:url" content = "https://kubernetes-sigs.github.com/node-feature-discovery/v0.10/get-started/introduction.html" > < meta property = "og:type" content = "article" > < meta property = "article:author" content = "Kubernetes SIGs" > < meta property = "article:published_time" content = "2016-07-23T00:07:52-05:00" > < meta property = "article:modified_time" content = "2022-04-12T02:46:45-05:00" > < script type = "application/ld+json" > { "@context" : "https://schema.org" , "@type" : "Article" , "mainEntityOfPage" : { "@type" : "WebPage" , "@id" : "https://kubernetes-sigs.github.com/node-feature-discovery/v0.10/get-started/introduction.html" } , "headline" : "Introduction · Node Feature Discovery" , "image" : [ ] , "author" : { "@type" : "Person" , "name" : "Kubernetes SIGs" } , "datePublished" : "2016-07-23T00:07:52-05:00" , "dateModified" : "2022-04-12T02:46:45-05:00" , "publisher" : { "@type" : "Organization" , "name" : "Kubernetes SIGs" , "logo" : { "@type" : "ImageObject" , "url" : "https://avatars.githubusercontent.com/u/36015203?v=4" } } , "description" : "Introduction Table of contents NFD-Master NFD-Worker NFD-Topology-Updater Feature Discovery Node annotations NodeResourceTopology CR This software ..." } < / script > < link rel = "dns-prefetch" href = "https://cdn.jsdelivr.net" > < link rel = "next" href = "https://kubernetes-sigs.github.com/node-feature-discovery/v0.10/get-started/quick-start.html" > < link rel = "canonical" href = "https://kubernetes-sigs.github.com/node-feature-discovery/v0.10/get-started/introduction.html" > < link rel = "icon" type = "image/svg+xml" href = "/node-feature-discovery/v0.10/assets/images/favicon.svg" > < link rel = "icon" type = "image/png" href = "/node-feature-discovery/v0.10/assets/images/favicon-16x16.png" sizes = "16x16" > < link rel = "icon" type = "image/png" href = "/node-feature-discovery/v0.10/assets/images/favicon-32x32.png" sizes = "32x32" > < link rel = "icon" type = "image/png" href = "/node-feature-discovery/v0.10/assets/images/favicon-96x96.png" sizes = "96x96" > < link rel = "mask-icon" href = "/node-feature-discovery/v0.10/assets/images/favicon.svg" color = "#2980b9" > < link rel = "apple-touch-icon" href = "/node-feature-discovery/v0.10/assets/images/apple-touch-icon-300x300.jpg" > < link rel = "stylesheet" href = "https://cdn.jsdelivr.net/gh/rundocs/jekyll-rtd-theme@2.0.10/assets/css/theme.min.css" > < style > @ media ( min-width : 1280px ) { . content-wrap { max-width : 1200 px } } < / style > < script > w i n d o w . u i = { t i t l e : " N o d e F e a t u r e D i s c o v e r y " , b a s e u r l : " / n o d e - f e a t u r e - d i s c o v e r y / v 0 . 1 0 " , i 1 8 n : { s e a r c h _ r e s u l t s : " S e a r c h R e s u l t s " , s e a r c h _ r e s u l t s _ f o u n d : " S e a r c h f i n i s h e d , f o u n d # p a g e ( s ) m a t c h i n g t h e s e a r c h q u e r y . " , s e a r c h _ r e s u l t s _ n o t _ f o u n d : " Y o u r s e
2022-01-11 18:18:50 +00:00
< / span > < span class = "nl" > "feature.node.kubernetes.io/cpu-< feature-name> "< / span > < span class = "p" > :< / span > < span class = "w" > < / span > < span class = "s2" > "true"< / span > < span class = "p" > ,< / span > < span class = "w" >
< / span > < span class = "nl" > "feature.node.kubernetes.io/custom-< feature-name> "< / span > < span class = "p" > :< / span > < span class = "w" > < / span > < span class = "s2" > "true"< / span > < span class = "p" > ,< / span > < span class = "w" >
< / span > < span class = "nl" > "feature.node.kubernetes.io/kernel-< feature name> "< / span > < span class = "p" > :< / span > < span class = "w" > < / span > < span class = "s2" > "< feature value> "< / span > < span class = "p" > ,< / span > < span class = "w" >
< / span > < span class = "nl" > "feature.node.kubernetes.io/memory-< feature-name> "< / span > < span class = "p" > :< / span > < span class = "w" > < / span > < span class = "s2" > "true"< / span > < span class = "p" > ,< / span > < span class = "w" >
< / span > < span class = "nl" > "feature.node.kubernetes.io/network-< feature-name> "< / span > < span class = "p" > :< / span > < span class = "w" > < / span > < span class = "s2" > "true"< / span > < span class = "p" > ,< / span > < span class = "w" >
< / span > < span class = "nl" > "feature.node.kubernetes.io/pci-< device label> .present"< / span > < span class = "p" > :< / span > < span class = "w" > < / span > < span class = "s2" > "true"< / span > < span class = "p" > ,< / span > < span class = "w" >
< / span > < span class = "nl" > "feature.node.kubernetes.io/storage-< feature-name> "< / span > < span class = "p" > :< / span > < span class = "w" > < / span > < span class = "s2" > "true"< / span > < span class = "p" > ,< / span > < span class = "w" >
< / span > < span class = "nl" > "feature.node.kubernetes.io/system-< feature name> "< / span > < span class = "p" > :< / span > < span class = "w" > < / span > < span class = "s2" > "< feature value> "< / span > < span class = "p" > ,< / span > < span class = "w" >
< / span > < span class = "nl" > "feature.node.kubernetes.io/usb-< device label> .present"< / span > < span class = "p" > :< / span > < span class = "w" > < / span > < span class = "s2" > "< feature value> "< / span > < span class = "p" > ,< / span > < span class = "w" >
< / span > < span class = "nl" > "feature.node.kubernetes.io/< file name> -< feature name> "< / span > < span class = "p" > :< / span > < span class = "w" > < / span > < span class = "s2" > "< feature value> "< / span > < span class = "w" >
< / span > < span class = "p" > }< / span > < span class = "w" >
< / span > < / code > < / pre > < / div > < / div > < h2 id = "node-annotations" > Node annotations< / h2 > < p > NFD also annotates nodes it is running on:< / p > < table > < thead > < tr > < th > Annotation< / th > < th > Description< / th > < / tr > < / thead > < tbody > < tr > < td > [< instance> .]nfd.node.kubernetes.io/master.version< / td > < td > Version of the nfd-master instance running on the node. Informative use only.< / td > < / tr > < tr > < td > [< instance> .]nfd.node.kubernetes.io/worker.version< / td > < td > Version of the nfd-worker instance running on the node. Informative use only.< / td > < / tr > < tr > < td > [< instance> .]nfd.node.kubernetes.io/feature-labels< / td > < td > Comma-separated list of node labels managed by NFD. NFD uses this internally so must not be edited by users.< / td > < / tr > < tr > < td > [< instance> .]nfd.node.kubernetes.io/extended-resources< / td > < td > Comma-separated list of node extended resources managed by NFD. NFD uses this internally so must not be edited by users.< / td > < / tr > < / tbody > < / table > < p > NOTE: the < a href = "/node-feature-discovery/v0.10/advanced/master-commandline-reference.html#instance" > < code class = "language-plaintext highlighter-rouge notranslate" > -instance< / code > < / a > command line flag affects the annotation names< / p > < p > Unapplicable annotations are not created, i.e. for example master.version is only created on nodes running nfd-master.< / p > < h2 id = "noderesourcetopology-cr" > NodeResourceTopology CR< / h2 > < p > When run with NFD-Topology-Updater, NFD creates CR instances corresponding to node resource hardware topology such as:< / p > < div class = "language-yaml highlighter-rouge notranslate" > < div class = "highlight" > < pre class = "highlight" > < code > < span class = "na" > apiVersion< / span > < span class = "pi" > :< / span > < span class = "s" > topology.node.k8s.io/v1alpha1< / span >
< span class = "na" > kind< / span > < span class = "pi" > :< / span > < span class = "s" > NodeResourceTopology< / span >
< span class = "na" > metadata< / span > < span class = "pi" > :< / span >
< span class = "na" > name< / span > < span class = "pi" > :< / span > < span class = "s" > node1< / span >
< span class = "na" > topologyPolicies< / span > < span class = "pi" > :< / span > < span class = "pi" > [< / span > < span class = "s2" > "< / span > < span class = "s" > SingleNUMANodeContainerLevel"< / span > < span class = "pi" > ]< / span >
< span class = "na" > zones< / span > < span class = "pi" > :< / span >
< span class = "pi" > -< / span > < span class = "na" > name< / span > < span class = "pi" > :< / span > < span class = "s" > node-0< / span >
< span class = "na" > type< / span > < span class = "pi" > :< / span > < span class = "s" > Node< / span >
< span class = "na" > resources< / span > < span class = "pi" > :< / span >
< span class = "pi" > -< / span > < span class = "na" > name< / span > < span class = "pi" > :< / span > < span class = "s" > cpu< / span >
< span class = "na" > capacity< / span > < span class = "pi" > :< / span > < span class = "m" > 20< / span >
< span class = "na" > allocatable< / span > < span class = "pi" > :< / span > < span class = "m" > 16< / span >
< span class = "na" > available< / span > < span class = "pi" > :< / span > < span class = "m" > 10< / span >
< span class = "pi" > -< / span > < span class = "na" > name< / span > < span class = "pi" > :< / span > < span class = "s" > vendor/nic1< / span >
< span class = "na" > capacity< / span > < span class = "pi" > :< / span > < span class = "m" > 3< / span >
< span class = "na" > allocatable< / span > < span class = "pi" > :< / span > < span class = "m" > 3< / span >
< span class = "na" > available< / span > < span class = "pi" > :< / span > < span class = "m" > 3< / span >
< span class = "pi" > -< / span > < span class = "na" > name< / span > < span class = "pi" > :< / span > < span class = "s" > node-1< / span >
< span class = "na" > type< / span > < span class = "pi" > :< / span > < span class = "s" > Node< / span >
< span class = "na" > resources< / span > < span class = "pi" > :< / span >
< span class = "pi" > -< / span > < span class = "na" > name< / span > < span class = "pi" > :< / span > < span class = "s" > cpu< / span >
< span class = "na" > capacity< / span > < span class = "pi" > :< / span > < span class = "m" > 30< / span >
< span class = "na" > allocatable< / span > < span class = "pi" > :< / span > < span class = "m" > 30< / span >
< span class = "na" > available< / span > < span class = "pi" > :< / span > < span class = "m" > 15< / span >
< span class = "pi" > -< / span > < span class = "na" > name< / span > < span class = "pi" > :< / span > < span class = "s" > vendor/nic2< / span >
< span class = "na" > capacity< / span > < span class = "pi" > :< / span > < span class = "m" > 6< / span >
< span class = "na" > allocatable< / span > < span class = "pi" > :< / span > < span class = "m" > 6< / span >
< span class = "na" > available< / span > < span class = "pi" > :< / span > < span class = "m" > 6< / span >
< span class = "pi" > -< / span > < span class = "na" > name< / span > < span class = "pi" > :< / span > < span class = "s" > node-2< / span >
< span class = "na" > type< / span > < span class = "pi" > :< / span > < span class = "s" > Node< / span >
< span class = "na" > resources< / span > < span class = "pi" > :< / span >
< span class = "pi" > -< / span > < span class = "na" > name< / span > < span class = "pi" > :< / span > < span class = "s" > cpu< / span >
< span class = "na" > capacity< / span > < span class = "pi" > :< / span > < span class = "m" > 30< / span >
< span class = "na" > allocatable< / span > < span class = "pi" > :< / span > < span class = "m" > 30< / span >
< span class = "na" > available< / span > < span class = "pi" > :< / span > < span class = "m" > 15< / span >
< span class = "pi" > -< / span > < span class = "na" > name< / span > < span class = "pi" > :< / span > < span class = "s" > vendor/nic1< / span >
< span class = "na" > capacity< / span > < span class = "pi" > :< / span > < span class = "m" > 3< / span >
< span class = "na" > allocatable< / span > < span class = "pi" > :< / span > < span class = "m" > 3< / span >
< span class = "na" > available< / span > < span class = "pi" > :< / span > < span class = "m" > 3< / span >
2022-04-12 07:46:55 +00:00
< / code > < / pre > < / div > < / div > < / div > < / div > < div class = "navigation-bottom d-flex flex-justify-between py-3" role = "navigation" aria-label = "footer navigation" > < div class = "prev" > < / div > < div class = "next" > < a href = "/node-feature-discovery/v0.10/get-started/quick-start.html" class = "btn" title = "Quick start" accesskey = "n" rel = "next" > Next < i class = "fa fa-arrow-circle-right" > < / i > < / a > < / div > < / div > < hr > < div class = "copyright text-center text-gray" role = "contentinfo" > < i class = "fa fa-copyright" > < / i > < span class = "time" > 2016-2022,< / span > < a class = "text-gray" href = "https://github.com/kubernetes-sigs" rel = "noreferrer" target = "_blank" > Kubernetes SIGs< / a > Revision < a class = "text-gray" href = "https://github.com/kubernetes-sigs/node-feature-discovery/commit/" title = "" rel = "noreferrer" target = "_blank" > < / a > < br > < div class = "generator" > Built with < a href = "https://pages.github.com" rel = "noreferrer" target = "_blank" title = "github-pages v209" > GitHub Pages< / a > using a < a href = "https://github.com/rundocs/jekyll-rtd-theme" rel = "noreferrer" target = "_blank" title = "rundocs/jekyll-rtd-theme v2.0.10" > theme< / a > provided by < a href = "https://rundocs.io" rel = "noreferrer" target = "_blank" > RunDocs< / a > . < / div > < / div > < / div > < / div > < div class = "addons-wrap d-flex flex-column overflow-y-auto" > < div class = "status d-flex flex-justify-between p-2" > < div class = "title p-1" > < i class = "fa fa-book" > < / i > Node Feature Discovery < / div > < div class = "branch p-1" > < span class = "name" > v0.10 < / span > < i class = "fa fa-caret-down" > < / i > < / div > < / div > < div class = "addons d-flex flex-column height-full p-2 d-none" > < dl id = "versions" > < dt > Versions< / dt > < script src = "/node-feature-discovery/versions.js" > < / script > < script > var dt = document . getElementById ( 'versions' ) ; var items = getVersionListItems ( ) ; for ( var i = 0 ; i < items . length ; i ++ ) { var dd = document . createElement ( 'dd' ) ; var a = dd . appendChild ( document . createElement ( 'a' ) ) ; a . appendChild ( document . createTextNode ( items [ i ] . name ) ) ; a . href = items [ i ] . url ; dt . appendChild ( dd ) ; } < / script > < / dl > < dl > < dt > GitHub< / dt > < dd > < a href = "https://github.com/kubernetes-sigs/node-feature-discovery" title = "Stars: 424" > < i class = "fa fa-github" > < / i > Homepage < / a > < / dd > < dd > < a href = "https://github.com/kubernetes-sigs/node-feature-discovery/issues" title = "Open issues: 23" > < i class = "fa fa-question-circle-o" > < / i > Issues < / a > < / dd > < dd > < a href = "https://github.com/kubernetes-sigs/node-feature-discovery/zipball/gh-pages" title = "Size: 83458 Kb" > < i class = "fa fa-download" > < / i > Download < / a > < / dd > < / dl > < hr > < div class = "license f6 pb-2" > This < a href = "/node-feature-discovery/v0.10/" title = "Node Feature Discovery" > Software< / a > is under the terms of < a href = "https://github.com/kubernetes-sigs/node-feature-discovery" > Apache License 2.0< / a > . < / div > < / div > < / div > < script src = "https://cdn.jsdelivr.net/gh/rundocs/jekyll-rtd-theme@2.0.10/assets/js/jquery.min.js" > < / script > < script src = "https://cdn.jsdelivr.net/gh/rundocs/jekyll-rtd-theme@2.0.10/assets/js/theme.min.js" > < / script > < / body > < / html >