This question is specific to Rackspace, but I guess it could be applied to something like AWS as well.
Say I have the following group of machines: 1 load balancing VM, 2 web VMs and a database VM. If the database is only accessed by the web machines (over an internal IP where the bandwidth usage is free) and the web machines are only accessed (by the general public) over internal IPs (again, free) via the load balancer, does this mean that the only bandwidth that I'm actually paying for is the incoming and outgoing from the loadbalancer?
Have I got that right?
That sounds correct as long as your load balancer is also acting as a proxy for the web servers. Only the data that goes out directly to and from the user to your servers should incur bandwidth charges, whether the packets are going through the load balancer or directly to your web servers.
Many load balancers, however, act on a strategy of forwarding the request, not proxying it. You may want to double check on a client to see which IP the packets are actually coming from.
Either way, internal traffic such as that between your web servers and your database server is safe.
Typically, yes. You'll have to check with your provider, of course, but most of them will only bill for traffic in and out of their network. You may find you have to pay if, for instance, the servers are in different physical locations; but I don't know of a host that charges for what is effectively LAN usage.
(I can't comment on Rackspace directly, as I haven't used them.)
It depends on the host and your arrangement with them - check their small print and if it doesn't say one way or the other assume that bandwidth used between the servers will be counted against any quota you have (and will be counted against both servers so a query resulting in 1Mbyte leaving a DB server going to a web server would count as 1Mb against both quotas).
In general I would expect most cheap hosts would count the bandwidth used between servers like this.
Larger hosts geared towards people with larger requirements (i.e. large enough to need load balancing) are likely to only count traffic that travels outside the data centre (or probably a little more fine grained that this: they'll probably charge for anything that travels beyond the LAN segment your machines are connected to - but that usually amounts to the same thing), but never assume this unless your agreement with them states it or you get the right response from a relevant pre-sales question.