Posey's RBI single triggered a four-run first inning that gave the Giants a big early lead and the catcher added a three-run homer in the fifth to put the contest away.
Ryan Theriot and Melky Cabrera each collected three hits and scored a pair of runs as the National League West-leading Giants took the first of a three-game series.
Vogelsong (8-4) breezed through San Diego's lineup, holding the Padres to one run on four hits while walking three and striking out six as he snapped a personal three-start winless streak.
Clayton Richard (7-11) was lit up for seven runs on nine hits in a five-inning effort for San Diego.
Yonder Alonso provided the Padres' lone RBI.