The Mariners announced the contract on Tuesday. It will be his second stint with the Mariners, although Heilman's first season in Seattle never got started as he was traded to the Chicago Cubs before the 2009 season began.
Heilman is a nine-year veteran. He spent last year with Arizona, going 4-1 with a 6.88 ERA in 32 games before being released in July. He ended the 2011 season pitching for the Triple-A affiliates of Philadelphia and Pittsburgh.
Heilman spent six seasons with the New York Mets and also pitched for the Cubs and Diamondbacks. He's made 405 relief appearances over the last six seasons.