Managing a list of user specific resources per node

Cluster information:

Kubernetes version: 1.18.0
Cloud being used: bare-metal
Host OS: Ubuntu 16.04


I would like to know if there is a way I can provide a list of strings(resources) to kubernetes, say [“A”, “B”, “C”, “D”] is a named list of resources from a node. And make sure a pod is scheduled only if resources from this list are available on the node. Each pod tells how many resources it needs from this named resource-list.

And pod may request for one or more(pod gives count of) resources from this named list of strings.
And Kubernetes can allocate any un-used strings from this named list and maintain resources usage across pods.
And when pod goes down, kubernetes should restore the resources it consumed similar to CPU/memory.