Pro-Kremlin rebels have announced a major new offensive after rocket fire killed at least 30 people in a strategic government-held Ukrainian port linking rebel territory with Russian-occupied Crimea.

The local mayor's office said 97 people were also wounded in the city of Mariupol by rockets that smashed into a packed residential district early in the morning and then again shortly after noon on Saturday (local time).

A towering cloud of grey smoke billowed over homes and a row of high-rise apartment buildings while fire brigades scrambled to put out blazes sparked by the heavy shells.

"The morgue has already received 20 bodies, but the number is constantly growing," Vyacheslav Abroskin, head of the Donetsk regional interior ministry, said in a televised meeting.

Ukraine's interior ministry said Grad rockets hit a residential district located next to roads that were attacked by separatist militias in recent days.

Rockets hit the eastern Ukrainian city of Mariupol. ( Reuters )

The leader of the so-called Donetsk People's Republic, Alexander Zakharchenko, was quoted by Russia's RIA news agency as saying rebels had launched the attack.

"Today an offensive was launched on Mariupol," he was quoted as saying at a memorial ceremony in the rebel-held city of Donetsk.

"This will be the best possible monument to all our dead."

His deputy earlier denied responsibility for the civilian deaths and Mr Zakharchenko did not refer directly to the rocket fire.

A spot inspection conducted by monitors from the Organisation for Security and Co-operation in Europe (OSCE) concluded that the Grad and Uragan rocket fire came from two locations "controlled by the 'Donetsk People's Republic'".

"Right now there are problems with the cellphone network so it is impossible to call relatives who live in that part of town," Mariupol resident Eduard said.

"Obviously, everyone in the city is very scared.

"The rebels have already seized the airport and now they are starting to destroy Mariupol itself."

Ukrainian prime minister Arseniy Yatsenyuk immediately asked the UN Security Council to censure Russia for allegedly spearheading the militants' advance on the biggest pro-Kiev city left standing in the shattered war zone.

Mr Yatsenyuk immediately convened an emergency security meeting designed to prepare a response to the attack on Mariupol.

Mr Zakharchenko said on Friday he was ripping up the September agreement and launching an all-out offensive aimed at seizing eastern lands still allied with the pro-Western authorities in Kiev.

Ukrainian soldiers patrol around a damaged building after shelling in Mariupol's densely-populated residential district. ( AFP )

We need an immediate ceasefire: OSCE

The OSCE mission chief Ertugrul Apakan denounced the rocket strikes as "disgraceful" and demanded an "immediate ceasefire".

"This dangerous situation can't continue," he said.

"Ukraine and its people need and deserve peace. The parties must return to the negotiating table without further delay and implement fully the Minsk agreements."

Latvia, which holds the EU's six-month rotating presidency until July, called for an emergency meeting of the EU foreign affairs council next week.

The Latvian foreign ministry said it was increasingly evident that Russia "is not interested in a peaceful resolution of the conflict" in Ukraine.

"Those responsible for the aggression should be aware that the international community will undoubtedly and sharply react to further escalation," the ministry said in a statement.

NATO secretary general Jens Stoltenberg urged Russia to "stop destabilising Ukraine and respect its international commitments".

"Fighting in eastern Ukraine has sharply escalated, with indications of a large-scale offensive by Russian-backed separatists," he said in a statement.

"This is in utter disregard of the ceasefire."

A rebel assault on the Mariupol port in August saw Kiev repel the attack at a heavy cost that prompted Ukraine president Petro Poroshenko to agree to a September 5 ceasefire.

AFP/Reuters