The 32-year-old, whose previous contract expired at the end of last season, has an option of a further year should he play a set number of games.
But the Nigerian said: "I love it here and I want to be part of the team so I'm happy to have signed my contract."
The striker told Portsmouth's website: "I have said from day one that I love the club and I want to do more for the club.
"I want to do well for the fans - they're the best supporters in the Premier League, like the 12th man."
He said the influence of manager Harry Redknapp and the prospect of playing in Europe were key factors in his decision to remain on the south coast.
"I've been together with these players for a couple of years now, and the spirit is very good," said Kanu, who has scored 19 goals in 69 games for Portsmouth.
"And, of course, Harry is the main man. Everyone wants to play for him. We want to achieve great things.
"Scoring at Wembley in the FA Cup semi-final and then the final meant a lot to me. We're in the history books now, because this is the first time we're going to be competing in Europe.
"Everybody wants to play in Europe, and being in the Uefa Cup gives us a greater opportunity to attract great players to the club."