The deal, signed late Saturday, will pay the 28-year-old Ellis $6 million. He set career-highs in batting average (.316) and home runs (13) in 2005 after missing all of the 2004 season with a torn labrum in his right shoulder, and tied a career-high with 52 RBI.
In three major league seasons, Ellis is a .276 lifetime hitter with 28 homers and 139 RBI.
"I had to prove a lot last year and I was able to do that," Ellis said on Oakland's Web site. "Having this deal shows the organization has a lot of confidence in me, and I appreciate that. I'm happy."
The San Francisco Chronicle reported the deal included a $250,000 buyout clause.
Kate Middleton recycles dress at movie premiere
Jordana Brewster on Paul Walker: 'He was an enormous presence in my life'