I've had a lot of people ask...
In my opinion, 12 months in advance is too early, as most musicians won't book events that far in advance. The farther in advance you book, the more likely you are to get cancellations, and that is no good!
2 months is probably too late, as the best musicians will likely be booked, and then you're stuck with less than professional options!
I think 3-6 months in advance is just right, as you'll have plenty of time to feel out the options, choose your music, and get a feel for the musician(s) you chose. Once you get down to the wire, you're not going to want to have so many things on your plate, so the earlier you start thinking the better.
I suggest using sites such as GigMasters.com, GigSalad.com, or even Weddingwire.com to find potential musicians in your area. Be sure to get bids from various vendors and then make your decision based on reviews, musical samples, response time, and overall professionalism.