Putin, speaking to workers at a factory in St Petersburg that makes air defence systems, said overall military equipment output was rising even as demand for it was growing because of what he calls Russia's "special military operation" in Ukraine.

"In terms of achieving the end result and the victory that is inevitable, there are several things ... It is the unity and cohesion of the Russian and multinational Russian people, the courage and heroism of our fighters ... and of course the work of the military-industrial complex and factories like yours and people like you," said Putin.

"Victory is assured, I have no doubt about it."

Putin said Russian arms companies manufactured about the same number of anti-aircraft missiles as the rest of the world combined, and three times more than the United States.

Earlier, he had attended an event with veterans to mark the 80th anniversary of the lifting of the World War Two siege of the city, then known as Leningrad, which Nazi German forces had blockaded for nearly 900 days.

He told the veterans that Russia was fighting in Ukraine to defend ethnic Russians and Russian-speakers, which Moscow says are subject to systematic discrimination in Ukraine.

Kyiv rejects the allegation and says Moscow is using it as a pretext for a naked colonial-style land grab.

"What we're doing today, including with our special operation, is an attempt to stop this war and protect our people who live on these territories," said Putin.

"These are our historical territories," he said - a reference to the fact that large parts of today's Ukraine were once part of the Russian Empire.

(Reporting by Reuters; Writing by Andrew Osborn; Editing by Kevin Liffey)