I am not aware of any such implementation. You should be able to give it a try, it shouldn't be too complicated if you have the LB data somewehre already as you say.
On a side note, the current implementation is not just random as in "random cluster node" -- it used already connected nodes. IIRC each client should connect to different set of node thus distribute the load and keep number of connections sane.
You can implement and use a custom node selector.
You have to implement ClusterNodeSelector and set the correct properties in your client.
See my example and check the project to see hoe the properties must be set.