The deal is worth $5.75 million per season, a source told ESPN.com Thursday.
"We are very pleased that Andrei has made the decision to pursue his career with the Montreal Canadiens," GM Pierre Gauthier said in a statement. "A player drafted and developed by our organization, Andrei brings a high level of talent and leadership to our team. We look forward to having him back in our lineup for the start of the upcoming season."
Markov, who the Canadiens selected in the sixth round of the 1998 draft, played in just seven games last season after suffering a season-ending injury to his right knee Nov. 13 against the Carolina Hurricanes. The defenseman, who would have become an unrestricted free agent July 1, has 366 points (81 goals, 285 assists) in 623 NHL regular-season games.
Information from ESPN.com's Pierre LeBrun was used in this report.