Edouard Julien, Kyle Farmer and Carlos Correa also homered for the Twins, who won for the fourth time in five games since the All-Star break
Eugenio Suarez went deep for Seattle on his 32nd birthday.
Ober (6-4) allowed three runs on seven hits with no walks and five strikeouts. All three runs and six of the hits against the right-hander came in the first inning.
After giving up a one-out double to Jose Caballero in the second, Ober retired 14 of the final 15 batters he faced. The lone baserunner in that span was Suarez, who was hit by a pitch in the fifth inning.
The Twins scored twice in the first off Mariners rookie Bryan Woo (1-2). Correa singled and Kirilloff drew a one-out walk. Both runners advanced on a wild pitch before Max Kepler lifted a sacrifice fly to left. After Matt Wallner was hit by a pitch, Willi Castro lined a run-scoring single to center
The Mariners took the lead in the bottom of the inning despite having two runners thrown out at the plate
J.P. Crawford led off with a single before Suarez hit a two-run shot to right-center. After singles by Jarred Kelenic and Teoscar Hernandez, Ty France doubled to left to make it 3-2, but Hernandez was thrown out at home, as was France on Mike Ford's single.
The Twins regained the lead in the third. Julien led off with a single and Kirilloff went deep to left to make it 4-3. Minnesota added another run as Kepler walked, advanced on Castro's single and a flyout and scored on catcher Cal Raleigh's throwing error as Castro stole second
The Twins scored twice more in the fourth to knock Woo out of the game. With one out, Julien homered to right, Kirilloff tripled to left-center and Kepler doubled into the right field corner to extend the lead to 7-3
Woo allowed seven runs, six earned, on eight hits in 3 1/3 innings, with three walks and four strikeouts.
Minnesota added a run in the sixth on singles by Julien, Kepler and Castro to make it 8-3.
Farmer and Correa homered in the ninth.
--Field Level Media