Manchester City were made to work hard by Peterborough United before sealing a place in the FA Cup quarter-finals.
Riyad Mahrez put the Premier League leaders ahead with his side's first attempt on target before Jack Grealish scored his first FA Cup goal.
Peterborough, bottom of the Championship, should have taken the lead with the game goalless but Sammie Szmodics scuffed his attempt.
Six-time winners City will discover their last-eight opponents on Thursday.
City have now scored 103 goals in all competitions this season.
But Peterborough gave Guardiola and his players a scare before two goals - and two assists by Phil Foden - in the space of seven second-half minutes sealed City's passage.
Peterborough United are bottom of the Championship while Manchester City are top of the Premier LeagueMan City get the job done
City made six changes but still fielded a strong side which included the returning Zinchenko, handed the captain's armband by Fernandinho in a sign of solidarity and support.
It was Zinchenko's first game since his homeland was invaded by Russia and he held the Ukrainian flag on the pitch with Peterborough captain Frankie Kent before kick-off.
A message on the big screen read 'We Stand With Ukraine' and fans held up a banner which read 'Zinchenko: We Stand With You'.
Fans with a banner in support of Oleksandr Zinchenko before kick-offZinchenko, making his first start since 12 February, had a couple of early attempts but City's team of expensive signings and internationals failed to test keeper Steven Benda before Mahrez struck on the hour.
The Algeria winger had lots of work to do after receiving a pass from Foden but showed his quality by creating space for himself to break the deadlock.
Minutes later, Grealish showed why he is the most expensive British player of all time with a quality first touch to bring Foden's long ball forward under control before he rolled it beyond the keeper and into the net.
More to follow.
Player of the match
ZinchenkoOleksandr Zinchenko
Peterborough United
Squad number17Player nameJones
Squad number42Player nameFuchs
Squad number23Player nameWard
Squad number7Player nameSzmodics
Squad number15Player namePoku
Squad number6Player nameKent
Squad number11Player nameGrant
Squad number43Player nameCoulson
Squad number2Player nameEdwards
Squad number12Player nameKnight
Squad number25Player nameBenda
Squad number24Player nameMumba
Squad number14Player nameMarriott
Squad number16Player nameBurrows
Squad number10Player nameBrown
Squad number9Player nameClarke-Harris
Line-ups
Peterborough
Formation 3-4-3
25Benda
12Knight2Edwards6Kent
23Ward42Fuchs11Grant43Coulson
15Poku17Jones7Szmodics
25Benda12Knight2Edwards6Kent23WardSubstituted forMumbaat 79'minutes42Fuchs11Grant43CoulsonSubstituted forBurrowsat 79'minutes15PokuSubstituted forMarriottat 71'minutes17JonesSubstituted forClarke-Harrisat 71'minutes7SzmodicsBooked at 70minsSubstituted forBrownat 71'minutesSubstitutes
5Beevers9Clarke-Harris10Brown13Cornell14Marriott16Burrows22Corbett24Mumba27BarkerMan City
Formation 4-3-3
31Ederson
27Cancelo3Rúben Dias6Aké11Zinchenko
47Foden25Fernandinho8Gündogan
26Mahrez9Gabriel Jesus10Grealish
31Ederson27Cancelo3Rúben DiasSubstituted forStonesat 45'minutes6AkéBooked at 17minsSubstituted forLaporteat 45'minutes11Zinchenko47Foden25FernandinhoBooked at 70mins8Gündogan26Mahrez9Gabriel Jesus10GrealishSubstitutes
5Stones7Sterling14Laporte16Rodri17De Bruyne20Bernardo Silva33Carson84SlickerReferee:Andy MadleyAttendance:13,405Live Text
Match ends, Peterborough United 0, Manchester City 2.
Second Half ends, Peterborough United 0, Manchester City 2.
Jack Grealish (Manchester City) wins a free kick in the defensive half.
Foul by Josh Knight (Peterborough United).
Attempt missed. Phil Foden (Manchester City) header from the centre of the box misses to the right. Assisted by Riyad Mahrez with a cross following a corner.
Corner, Manchester City. Conceded by Frankie Kent.
Attempt missed. Aymeric Laporte (Manchester City) right footed shot from very close range is close, but misses to the right. Assisted by John Stones with a headed pass following a corner.
Corner, Manchester City. Conceded by Bali Mumba.
Attempt missed. Aymeric Laporte (Manchester City) header from the centre of the box misses to the left. Assisted by Ilkay Gündogan with a cross following a corner.
Corner, Manchester City. Conceded by Steven Benda.
Attempt saved. Jack Grealish (Manchester City) right footed shot from the left side of the box is saved in the top centre of the goal. Assisted by Oleksandr Zinchenko.
Foul by Ilkay Gündogan (Manchester City).
Jorge Grant (Peterborough United) wins a free kick in the defensive half.
Foul by Phil Foden (Manchester City).
Jonson Clarke-Harris (Peterborough United) wins a free kick in the defensive half.
Attempt blocked. Ilkay Gündogan (Manchester City) right footed shot from outside the box is blocked.
Jack Grealish (Manchester City) wins a free kick in the attacking half.
Foul by Jeando Fuchs (Peterborough United).
Substitution, Peterborough United. Harrison Burrows replaces Hayden Coulson.
Substitution, Peterborough United. Bali Mumba replaces Joe Ward because of an injury.