The 25-year-old was released in June by Lyon, where he progressed through the youth ranks and scored 11 goals in 86 Ligue 1 appearances from 2012.
The winger has 11 caps for his country and his arrival continues a transfer window of high player turnover in Leonardo Jardim's squad.
"I have the ambition to play at the highest national and international level, and the Monaco sporting project, which won the title and has reached the semi-finals of the Champions League, is fantastic," he told the club's official website.
"After several seasons in Lyon, I needed a new challenge. Everything is present here to make a great season. I cannot wait to meet my teammates and start training."
Monaco began their title defence with a 3-2 win over Toulouse on Friday but have seen a number of stars from last season's glorious efforts depart, with Tiemoue Bakayoko joining Chelsea and Manchester City swooping for Bernardo Silva and Benjamin Mendy.
Teenage sensation Kylian Mbappe and winger Thomas Lemar continue to be linked with moves away from the club, although Youri Tielemans, Terence Kongolo, Soualiho Meite, Jordi Mboula and Ghezzal's former Lyon team-mate Jordy Gaspar are among a host of new arrivals.
Monaco vice-president Vadim Vasilyev said: "We welcome Rachid Ghezzal, whom we have been following for some time.
"He is a talented young player who knows our championship well but also has a solid experience in the Champions League. We believe a lot in Rachid."