The 21-year-old — who last year helped Ajax reach the Europa League final having joined on a season-long loan deal — leaves Stamford Bridge having been pushed down the pecking order under Antonio Conte.
Burkina Faso international Traore made his Blues debut in 2015 and went on to make 16 starts in the 2015-16 season under Jose Mourinho, scoring four goals.
The fee paid for Traore also includes a 15 per cent sell on clause for Chelsea should Lyon decide to cash in on the striker in the future.
Mourinho's sacking and the arrival of Michy Batshuayi saw him pushed out of contention under Conte, and he was sent on loan to Ajax to gain further experience.
He scored 13 goals in 35 appearances for the Eredivisie outfit and now moves to Ligue 1, with Lyon looking likely to lose star striker Alexandre Lacazette this summer despite a move to Atletico Madrid falling through.
Lyon president Jean-Michel Aulas and head coach Bruno Gensio announced Traore's arrival at the club, with the manager praising his ability to play in multiple areas of the pitch.
"He has a great versatility for us, he is able to play on one side or in the middle, can take up spaces and bring something to the game that is different from what we are used to doing," Genesio said.
"He was one of the players we wanted to see at Olympique Lyonnais."