The World Cup winner was released by Bayern at the end of his contract, departing the club after 10 years in Bavaria.
Boateng played 229 Bundesliga matches at Bayern – a tally only bettered by three team-mates over that period, in Thomas Muller (311), Manuel Neuer (282) and David Alaba (276).
Those four players were stalwarts as Germany's most successful club won nine straight titles.
But Alaba left for Real Madrid as Boateng was also let go, with ardent supporter Hansi Flick quitting as head coach.
Boateng, now 32, did not rush into his next move, yet his arrival at Lyon in France was confirmed on Wednesday following the closure of the transfer window.
He said at a news conference: "I want to thank everyone for the warm welcome.
"I can't wait to write a new chapter in my story. I can't wait to meet my team-mates. I know the team is young and I will try to bring my experience."
Twice a Champions League winner, Boateng will indeed bring a wealth of experience to a leaky defence.
Lyon have conceded seven goals in four Ligue 1 games so far this season, as many as basement side Troyes.
Two of those were own goals, including one from Marcelo, who was later demoted to the reserves for "inappropriate behaviour" in the dressing room.
Goalkeeper Anthony Lopes committed an error leading to a goal, too, as Lyon took only two points from their first three matches before getting back on track with a win at Nantes ahead of the international break.
Boateng will be expected to bring calm in the back line as they look to make up ground, already seven points behind leaders Paris Saint-Germain – opponents Bayern beat in the 2019-20 Champions League final.
"I haven't played since May but I have done everything to stay in shape," he said. "I want to regain my best level as soon as possible and be at 100 per cent to be able to help the team."