The team said on its Web site that the left-handed slugger received $13.25 million.
Ibanez, 31, began his career with the Mariners, and was a 36th-round draft pick in 1992. For the past three seasons, he has played for Kansas City, batting .280, .294 and .294 for the Royals, with 55 home runs and 247 RBI in 1,384 at-bats.
"He is a great fit," said Manager Bob Melvin. "He fits in our ballpark the way the ball carries to right field."
In 2003, Ibanez hit .294 with 18 homers and 90 RBI. For his career, he has a lifetime batting average of .278 with 69 home runs and 305 RBI in 629 games. He also has a career fielding percentage of .988, and has only 18 errors while playing three of the four infield positions as well as the outfield.