Chile 1-1 Australia: match report
Germany progressed as group winners following a 3-1 victory over Cameroon in Sochi, with the world champions to face Mexico for a place in the July 2 final in Saint Petersburg.
Veteran forward Tim Cahill collected his 100th international cap at Spartak Stadium, joining long-serving former goalkeeper Mark Schwarzer (109) as the only other Australia player to reach the landmark.
Alexis Sanchez went tumbling to ground early on following a last-ditch intervention from Mark Milligan, but the video assistant referee dismissed penalty claims as replays showed a clear touch from the Australian defender.
Claudio Bravo returned for Chile following a calf injury and the Manchester City goalkeeper produced a smart block to deny a lunging Massimo Luongo, although Australia forged ahead on 42 minutes.
A risky pass from Bravo was intercepted inside the Chile half, allowing Robbie Kruse to steer the ball across the face of the box to an unmarked Troisi who clipped over the advancing keeper.
Arturo Vidal nearly replied instantly when his stooping header was blocked on the line by Milligan with the rebound eluding Jose Fuenzalida.
Australian centre-back Trent Sainsbury spoiled a glorious chance for a second goal before the break, lashing wildly over on the volley after Chile's defence momentarily switched off.
But the introduction of Rodriguez and Pablo Hernandez at half-time proved crucial as Chile levelled midway through the second half.
Eduardo Vargas beat his marker to a looping ball in the area, knocking down into the path of Rodriguez who smuggled the ball beyond Matt Ryan for his first international goal.
Vargas headed fractionally wide after Sanchez had escaped down the left and picked out his striking partner, while Jamie MacLaren miscued badly in front of Bravo after a brilliant delivery from Troisi before the contest gradually petered out.
Chile 1-1 Australia: as it happened
Follow the live coverage match of semi-final of Confederations Cup between: Portugal-Chile