It is the deadliest such attack in Canadian history.
The man was identified as Gabriel Wortman and authorities said he disguised himself as a police officer in uniform at one point and mocked up a car to make it seem like a Royal Canadian Mounted Police (RCMP) vehicle.
He was arrested by the RCMP in a petrol station in Enfield, north west of capital Halifax. Police later announced that he had died.
"In excess of 10 people have been killed," RCMP Chief Superintendent Chris Leather said. "We believe it to be one person who is responsible for all the killings and that he alone moved across the northern part of the province and committed what appears to be several homicides."
Mr Leather said they do not have a final death count.
"It almost certainly will be more than 10. How much more than 10, I do not know," he said.
Brian Sauve, president of the National Police Federation union, said a police officer was among those killed in a shooting and another was injured.
The dead officer was identified as Constable Heidi Stevenson, a mother of two who had served on the force for 23 years.
Police have not provided a motive for the attack. Mr Leather said many of the victims did not know the gunman.
"That fact that this individual had a uniform and a police car at his disposal certainly speaks to it not being a random act," Mr Leather said.
He said they would investigate whether it had anything to do with the coronavirus pandemic.
"We have not yet determined whether there is any link to the Covid-19 crisis," he said.
He said at one point there was an exchange of gunfire between the suspect and police.
By late morning, there were half a dozen police vehicles at the scene. Yellow police tape surrounded the petrol pumps, and a large silver-coloured SUV was being investigated by police.
The incident started in the small, rural town of Portapique, with police advising residents to lock their homes and stay in their basements.
Police found many dead inside and outside the home of the first shooting.
Several structures were on fire in the area as well.
"I never imagined when I went to bed last night that I would wake up to the horrific news that an active shooter was on the loose in Nova Scotia,'' Nova Scotia premier Stephen McNeil said.
"This is one of the most senseless acts of violence in our province's history," he said.
He said it was an additional "heavy burden" amid efforts to contain the new coronavirus.
Lisa Croteau, a spokeswoman with the provincial force, said police received a call about "a person with firearms" at around 10.30pm on Saturday and the investigation "evolved into an active shooting investigation".
"My heart goes out to everyone affected in what is a terrible situation," Prime Minister Justin Trudeau said.
Christine Mills, a resident of the town, said it had been a frightening night for the small town, with armed officers patrolling the streets. In the morning, helicopters flew overhead searching for the suspect.
"I feel better now to know he's in custody,'' Ms Mills said. "It's nerve-wracking because you don't know if somebody has lost their mind and is going to beat in your front door."
Tom Taggart, a lawmaker who represents the Portapique area in the municipality of Colchester, said the quiet community has been shaken.
"This is just an absolutely wonderful, peaceful quiet community and the idea that this could happen in our community is unbelievable,'' Mr Taggart said by phone from his home in Bass River, near the lockdown area.