There are many methods to implement load balancing; but regarding k2 black pearl is there a recommended method to do so?
As for the k2 server database what is the recommended clustering?
For the K2 server, there isn't a definitive answer to that as it depends on the company's corporate standard. i.e. hardware, software of DNS round robin. Note the DNS round robin doesn't detect node failures so I don't normally recommend that. Hardware performs better but there is a cost associated with it and you also require experience to manage it. In any case, you need to configure it to use IP based session affinity (not cookie based) if you have any K2 web components running on the cluster. This is what NLB uses.
For the SQL clustering, it depends on what you are trying to do. See http://technet.microsoft.com/en-us/library/cc739522(WS.10).aspx. It gives a good description of when to use each type of clustering.
The link provded by Matthew doesn't work anymore, so I am posting proper/working link for the same section of K2 documentation: