Benatia struggled to make an impact on the first team at Bayern since joining from Roma in 2014, making just 29 appearances in two years.
The 29-year-old did struggle with injury during his spell at the Allianz Arena, but his opportunities were also limited by the emergence of young German defender Joshua Kimmich.
The Morocco international was keen to move to get more regular first team football and saw Juventus as the ideal destination.
"I wanted to return to Italy and to join Juventus was a logical choice for me," he said at a news conference.
"The aim is to retain our supremacy in Italy and be competitive in Europe. I don't think Juventus are missing a whole lot to win the Champions League.
"I can play both in a three and four-man defence. I'm available to help the team whatever the formation."
Benatia is likely to get his first run out for Juventus in the club's pre-season friendly against Melbourne Victory at the Melbourne Cricket Ground on Saturday.