Pennington made a save on a breakaway by Derek Grant at 4:44 of the first period, and Blues forward Klim Kostin hit the post on a 2-on-1 at 7:44 of the first.
Anaheim's fourth line combined to tie the score 1-1 at 8:23 of the second.
Groulx made a cross-ice pass to Derek Grant coming through the left circle in the St. Louis zone and he fed Sam Carrick coming through the right circle for the redirection.
Carrick has scored in three of his five games this season.
"It's a total team effort right now," Ducks coach Dallas Eakins said. "We don't just need one line or one goalie, or a D-pair, we need all 23 of our players right now. Those players, all 23 of them, are sacrificing [for] each other. They're committed to each other."
NOTES: The Blues had won eight in a row in Anaheim, including all four meetings last season by a combined score of 18-8. ... The Blues played without forward Brayden Schenn, who returned to St. Louis for further evaluation of an upper-body injury he sustained on Oct. 30 against the Chicago Blackhawks. ... Perron played in his 616th game with St. Louis, tied with Bobby Plager for 10th most in Blues history. ... Berube coached his 200th game for St. Louis, becoming the eighth Blues coach to reach that milestone. ... Terry's point streak is the Ducks longest since Getzlaf had an 11-game streak in 2015-16. The Ducks record is a 19-game point streak by Corey Perry in 2009-10. ... Anaheim forward Trevor Zegras missed his second game with an upper-body injury, but participated in warmups. .... The Ducks recalled forward Mason McTavish and defenseman Simon Benoit from San Diego of the American Hockey League. McTavish, the third pick in the 2021 NHL Draft, had not played for the Ducks since sustaining a lower-body injury against the Calgary Flames on Oct. 18. He had two shots, two hits and a blocked shot in 15:39. Benoit had five hits in 12:57.