Is there a vaccine to prevent shingles?

Yes. A vaccine similar to that given to protect kids from chickenpox has been developed to prevent shingles. It has about 50x the strength of the childhood vaccine to accomplish that task.
Yes, Zostavax. Zostavax is a vaccine to prevent shingles in adults. Some age limitations apply. The vaccine is helpful but not completely protective, so some people still get shingles even though they were vaccinated. Shingles can cause permanent pain in the affected skin area.