</span></code></pre></div></div><h2id="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/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><blockquote><p><strong>NOTE:</strong> the <ahref="/node-feature-discovery/master/reference/master-commandline-reference.html#instance"><codeclass="language-plaintext highlighter-rouge notranslate">-instance</code></a> command line flag affects the annotation names</p></blockquote><p>Unapplicable annotations are not created, i.e. for example <codeclass="language-plaintext highlighter-rouge notranslate">nfd.node.kubernetes.io/extended-resources</code> is only placed if some extended resources were created by NFD.</p><h2id="custom-resources">Custom resources</h2><p>NFD takes use of some Kubernetes Custom Resources.</p><p><ahref="/node-feature-discovery/master/usage/custom-resources.html#nodefeature">NodeFeature</a>s is be used for representing node features and requesting node labels to be generated.</p><p>NFD-Master uses <ahref="/node-feature-discovery/master/usage/custom-resources.html#nodefeaturerule">NodeFeatureRule</a>s for custom labeling of nodes.</p><p>NFD-Topology-Updater creates <ahref="/node-feature-discovery/master/usage/custom-resources.html#noderesourcetopology">NodeResourceTopology</a> objects that describe the hardware topology of node resources.</p></div></div><divclass="navigation-bottom d-flex flex-justify-between py-3"role="navigation"aria-label="footer navigation"><divclass="prev"></div><divclass="next"><ahref="/node-feature-discovery/master/get-started/quick-start.html"class="btn"title="Quick start"accesskey="n"rel="next"> Next <iclass="fa fa-arrow-circle-right"></i></a></div></div><hr><divclass="copyright text-center text-gray"role="contentinfo"><iclass="fa fa-copyright"></i><spanclass="time">2016-2023,</span><aclass="text-gray"href="https://github.com/kubernetes-sigs"rel="noreferrer"target="_blank">Kubernetes SIGs</a> Revision <aclass="text-gray"href="https://github.com/kubernetes-sigs/node-feature-discovery/commit/"title=""rel="noreferrer"target="_blank"></a><br><divclass="generator"> Built with <ahref="https://pages.github.com"rel="noreferrer"target="_blank"title="github-pages v228">GitHub Pages</a> using a <ahref="https://github.com/rundocs/jekyll-rtd-theme"rel="noreferrer"target="_blank"title="rundocs/jekyll-rtd-theme v2.0.10">theme</a> provided by <ahref="https://rundocs.io"rel="noreferrer"target="_blank">RunDocs</a>. </div></div></div></div><divclass="addons-wrap d-flex flex-column overflow-y-auto"><divclass="status d-flex flex-justify-between p-2"><divclass="title p-1"><iclass="fa fa-book"></i> Node Feature Discovery </div><divclass="branch p-1"><spanclass="name"> master </span><iclass="fa fa-caret-down"></i></div></div><divclass="addons d-flex flex-column height-full p-2 d-none"><dlid="versions"><dt>Versions</dt><scriptsrc="/node-feature-discovery/versions.js"></script><script>vardt=document.getElementById('versions');varitems=getVersionListItems();for(vari=0;i<items.length;i++){vardd=document.createElement('dd');vara=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><ahref="https://github.com/kubernetes-sigs/node-feature-discovery"title="Stars: 633"><iclass="fa fa-github"></i> Homepage </a></dd><dd><ahref="https://github.com/kubernetes-sigs/node-feature-discovery/issues"title="Open issues: 21"><iclass="