Police have carried out a series of raids across Belgium after bombs exploded at Brussels airport and in the city's subway system, killing at least 31 people.

A nail-filled bomb, chemical products and an Islamic State flag were found during a house search in the Schaerbeek neighbourhood as police hunted one of three suspected airport bombers who remained at large.

The airport blasts, in which two suicide bombers are believed to have died, left behind a chaotic scene of splattered blood in the departure lounge as windows were blown out, ceilings collapsed and travellers streamed out of the smoky building.

About an hour later, another bomb exploded on a rush-hour subway train near the European Union headquarters. Terrified passengers had to evacuate through darkened tunnels to safety.

"What we feared has happened," Belgian Prime Minister Charles Michel said. "In this time of tragedy, this black moment for our country, I appeal to everyone to remain calm but also to show solidarity."

Belgium raised its terror alert to the highest level, diverting planes and trains and ordering people to stay where they were for most of the workday.

Authorities also released a photo taken from closed-circuit TV of three men pushing luggage carts, saying two of them apparently were the suicide bombers and that the third - dressed in a light-coloured coat, black hat and glasses - was at large. They urged the public to contact them if they recognised him.

Airports across Europe - and in the New York area - tightened security.

"We are at war," French Prime Minister Manuel Valls said after a crisis meeting in Paris. "We have been subjected for the last few months in Europe to acts of war."

French President Francois Hollande added: "Terrorists struck Brussels, but it was Europe that was targeted, and it is all the world which is concerned by this."

European security officials have been bracing for a major attack for weeks and warned that the Islamic State group was actively preparing to strike.

The arrest on Friday of Salah Abdeslam, a key suspect in the Paris attacks last Novermber, heightened those fears, as investigators said many more people were involved than originally thought and that some are still on the loose.

The Islamic State group claimed responsibility for the Brussels attacks, saying in a post on the group's Amaq news agency that its extremists opened fire in the airport and "several of them" detonated suicide belts. It said another suicide attacker struck in the subway.

Authorities found and neutralised a third bomb at the airport once the chaos after the two initial blasts had eased, said Florence Muls, a spokeswoman for the airport.

Mr Michel said there was no immediate evidence linking the attacks with Abdeslam. After his arrest, Abdeslam told authorities he had created a new network and was planning new attacks.

US President Barack Obama pledged to "do whatever is necessary" to help Belgian authorities seek justice.

"We stand in solidarity with them in condemning these outrageous attacks against innocent people," Mr Obama said in Havana, where he was closing a three-day visit.

Tuesday's explosions at the airport in the Brussels suburb of Zaventem came shortly after 8am, one of its busiest periods when thousands of people were inside.

Belgian Health Minister Maggie de Block said 11 people were killed and 81 wounded. Eleven people had serious injuries, Marc Decramer of the Gasthuisberg hospital in Leuven told broadcaster VTM. The nails apparently came from one of the bombs.

Zach Mouzoun, who arrived on a flight from Geneva about 10 minutes before the first blast, told BFM television that the second, louder explosion brought down ceilings and ruptured pipes, mixing water with victims' blood.

"It was atrocious. The ceilings collapsed," he said. "There was blood everywhere, injured people, bags everywhere."

"We were walking in the debris. It was a war scene," he said.

Anthony Deloos, an airport worker for Swissport, which handles check-in and baggage services, said the first explosion took place near the counters where customers pay for overweight bags. He and a colleague said the second blast hit near a Starbucks cafe.

"I jumped into a luggage chute to be safe," Deloos said.

The subway bombing came after 9am, killing 20 people and wounding more than 100, Mayor Yvan Majeur said.

"The metro was leaving Maelbeek station for Schuman when there was a really loud explosion," said Alexandre Brans, 32, wiping blood from his face. "It was panic everywhere. There were a lot of people in the metro."

Near the entrance to the station, rescue workers set up a makeshift medical treatment centre in a pub.

The airport was ordered closed for the rest of the day and CEO Arnaud Feist said the facility would be closed at least through Wednesday. About 600 flights in or out of Brussels were diverted or cancelled, Mr Muls said.

The metro also was ordered closed as the city was locked down.

By the end of the workday, city officials said residents could begin moving around on the streets of the capital and train stations were reopening. But Peter Mertens of the Belgian crisis centre said the threat of more attacks "is still real and serious".

At least one and possibly two Kalashnikovs were found in the departure lounge at the airport, according to a European security official.