Berkman, who socked 366 home runs and drove in 1,234 runs over his 1,879-game career, was a free agent after the Texas Rangers declined to pick up an option on the 37-year-old slugger for 2014.
He battled right-knee problems in recent years.
"It doesn't make sense to play in the physical condition I'm in," he told MLB.com. "I'm not going to keep trying to run out there for the heck of it."
Berkman batted .242 with six home runs, 10 doubles and 34 RBI in 73 games for the Rangers last season.
The Texas native and Rice University product spent 11-plus seasons with the Astros, who selected him in the first round (16th overall) of the 1997 amateur draft.
He led the majors in doubles with 55 in 2001 and 46 in 2008 while with Houston and topped the National League with 128 RBI in 2002.
He later played with the New York Yankees, St. Louis Cardinals and the Rangers.