Node Agent¶
CRI Resource Manager can be configured dynamically using the CRI Resource
Manager Node Agent and Kubernetes ConfigMaps. The agent can be build using
the provided Dockerfile. It can be deployed
as a DaemonSet
in the cluster using the provided deployment file.
To run the agent manually or as a systemd
service, set the environment variable
NODE_NAME
to the name of the cluster node the agent is running on. If necessary
pass it the credentials for accessing the cluster using the the -kubeconfig <file>
command line option.
The agent monitors two ConfigMaps for the node, a primary node-specific one, and a secondary group-specific or default one, depending on whether the node belongs to a configuration group. The node-specific ConfigMap always takes precedence over the others.
The names of these ConfigMaps are
cri-resmgr-config.node.$NODE_NAME
: primary, node-specific configurationcri-resmgr-config.group.$GROUP_NAME
: secondary group-specific node configurationcri-resmgr-config.default
: secondary: secondary default node configuration
You can assign a node to a configuration group by setting the
cri-resource-manager.intel.com/group
label on the node to the name of
the configuration group. You can remove a node from its group by deleting the node
group label.
There is a sample ConfigMap spec that contains anode-specific, a group-specific, and a default ConfigMap examples. See any available policy-specific documentation for more information on the policy configurations.