ST. LOUIS -- Lance Berkman is headed back to the NL Central, joining a team he knows really well.

The former Houston Astros slugger agreed to an $8 million, one-year contract with St. Louis on Saturday, solidifying the Cardinals' roster ahead of the upcoming winter meetings.

The 34-year-old first baseman-outfielder is a five-time NL All-Star with the Astros and last year batted .248 with Houston and the New York Yankees, finishing with 14 homers and 58 RBIs. Berkman was traded to the Yankees on July 31 and helped them win the wild card.

"I think he had greater opportunities out there financially," St. Louis general manager John Mozeliak said. "This was just a place he wanted to play."

The Cardinals have an opening in right field after using a combination of younger players there last season, but Mozeliak said Saturday that Matt Holliday has volunteered twice to move to right if it would help the team. That could put Berkman in left field, a more familiar position for him.

Mozeliak said the team might take the question to spring training.

"Matt's a baseball player, and I think he'd play anywhere," Mozeliak said.

The Cardinals are gambling that Berkman still can be an effective outfielder. He began last season on the 15-day disabled list after undergoing arthroscopic surgery on his left knee and was primarily a designated hitter with the Yankees at the end of the year.

Berkman passed a physical Saturday in Orlando, Fla.

"Obviously, it's a question," Mozeliak said. "Today he looked in great shape, he's lost some weight and he feels like he's running very well. So we have a high level of confidence he can do that."

Berkman has started more than 100 games at all three outfield positions, with more than half of his 841 outfield starts coming as a left fielder. In any case, the new outfield would lean heavily on the young legs of center fielder Colby Rasmus.

If he can stay healthy and field his position well enough, Berkman should provide a lift with his bat. The switch hitter has a .313 batting average in 154 career games against St. Louis, with 39 homers and 118 RBIs. He's a .299 hitter against the NL Central with 169 homers and 540 RBIs in 767 games.

The agreement with Berkman capped a busy week for the Cardinals, who acquired shortstop Ryan Theriot from the Dodgers and announced a deal with left-handed reliever Brian Tallet on Tuesday.

"We've really just changed the look of our clubhouse and added some new energy," Mozeliak said. "What you're looking at now is pretty much a set club."

Until a few days ago, Mozeliak thought there was about a "10 percent" chance that Berkman would pick St. Louis. Berkman had been seeking a multiyear deal after finishing a six-year, $85 million contract.

"I think he had greater opportunities out there financially," Mozeliak said. "This was just a place he wanted to play, and based on his desire to be here, that's when we started to realize we had a chance to get this deal done."

Jon Jay and Allen Craig both played a lot of outfield last year, especially the last two months after right fielder Ryan Ludwick was traded to San Diego.

Mozeliak said Craig might be used as backup help at third base next season and also could help in the outfield.

The general manager said Saturday's deal did not change shortstop Brendan Ryan's status. Mozeliak said he would listen to offers but also could use Ryan, who said he wants to stay with the Cardinals, as a reserve.