The 32-year-old will return to the Premier League after a previous unsuccessful spell with Bolton in 2008.
"I'm very happy - I'm really looking forward to starting training with the lads and to playing some games also," he told Norwich's official website.
"I know Norwich City has great fans and there's a great atmosphere in the stadium, plus I know a couple of players here already too.
"I'm very glad that the deal has been done and now I'm looking forward to the season ahead."
"I'm really delighted to bring in a player of Johan's experience, not only at club and Premier League level but as a current international," said Canaries boss Chris Hughton.
"It's great to welcome him to our squad."