"My family and I feel really blessed to have the opportunity to play at least the next two seasons in Houston," Harris told MLB.com. "I'm grateful to the Astros' organization and looking forward to getting to work this spring and to see the guys, and also getting to know the new guys we've added."
Harris, 32, posted a 2.25 ERA in 66 appearances, including a stint at closer last season, en route to making his first All-Star appearance. He set career highs in strikeouts (69), saves (12), strikeout-to-walk ratio (4.6), ground-ball percentage (58) and walks per nine innings ratio (2.11).
The Harris deal leaves the Astros with two remaining arbitration-eligible players: right-handed starter Collin McHugh and infielder Marwin Gonzalez. McHugh, who has a Feb. 10 arbitration hearing date set, is asking for $3.85 million, and the team filed for $3.35 million. Gonzalez, who has a Feb. 14 hearing, is asking for $4.2 million, and the Astros filed for $3.25 million.
The Astros have already settled on deals with four other arbitration-eligible players: right-handed starter Mike Fiers ($3.9 million), left-handed starter Dallas Keuchel ($9.15 million) and outfielders George Springer ($3.9 million) and Jake Marisnick ($1.1 million).
The only case the Astros have had reach a hearing under general manager Jeff Luhnow came last year, when catcher Jason Castro was paid $5 million after asking for $5.25 million.
Gonzalez, a switch-hitter, set career highs in 2016 in games (141), at-bats (484), runs (55), hits (123), doubles (26), triples, (three), homers (13), RBIs (51), walks (22) and stolen bases (12), while starting at first base (74 games), third base (16), left field (14), second base (eight) and shortstop (six).
McHugh went 13-10 with a 4.34 ERA in 33 starts for the Astros in 2016, including a six-game winning streak to end the year. The righty was tied for the club lead in quality starts (16) with Keuchel and Doug Fister, and he has won 43 games the last three years.