The deal is worth $10.25 million, sources told ESPN's Buster Olney.
A Gold Glove winner in 2015, Pollock batted .315 the past season, with 20 homers and 76 RBIs. He produced a team-high 192 hits.
"It's an exciting time to be a Diamondback," Pollock told MLB.com. "I'm glad to get the business side taken care of and focus on helping this team win."
With the 28-year-old Pollock in center and perennial MVP candidate Paul Goldschmidt at first base, the Diamondbacks have two of the NL's best all-around position players.