TSN's Bob McKenzie reports the deal has an average annual value of $1.5 million.
Ballard, 30, has played the past three seasons for the Vancouver Canucks, who used a compliance buyout on the remaining two years on his contract. He had two assists in 36 games in 2012-13.
"I did need a change, so to me, the buyout is a good thing," Ballard told the Star-Tribune before the deal was reached. "In my meetings at the end of the year with management in Vancouver, we all agreed that however it worked out, I needed a change. It's a funny feeling. In a lot of ways I'm very excited, but it's disappointing that it got to this. I'm so excited for the opportunity and what's going to come this next season."