Iraqi activist Nadia Murad was on hand for the unanimous vote in the House of Commons.
The government said it is still sorting out a plan for the airlift and does not yet know how many Yazidi refugees Canada will take in over the 120-day period.
But Immigration Minister John McCallum reminded that Canada had managed to resettle more than 25,000 Syrian refugees in just a few months at the start of the year.
"It is important to emphasize that Canada will always be an open country willing to step up and support people in need from all around the world," Prime Minister Justin Trudeau said in the Commons.
"I am pleased to see Nadia (Murad) again today and reassure her that in the coming months we are committed to bringing in vulnerable Yazidi refugees," he said.
Signup to our newsletter and follow us on Facebook and Twitter!
Murad was taken by the Islamic State group from her home village of Kocho near Iraq's northern town of Sinjar in August 2014 and brought to the city of Mosul.
Among the first things IS forced on her was to disavow her Yazidi faith, an ancient religion with more than half a million adherents in Iraq.
As a captive of the reviled extremist group, Murad, who today is 23, said she was tortured and raped for three months until she managed to escape and flee to Germany.
Since then, she has become a human rights activist, bringing the plight of the Yazidi community, especially the forced sexual enslavement and human trafficking of women and children captured by IS to the forefront of international attention.
Speaking in Ottawa through an interpreter, Murad said: "I would like to tell every single member of parliament that when they were standing I felt at that very critical moment IS was losing something, because IS never thought their slaves would one day come out and speak against them."
Tory MP Michelle Rempel, who brought the asylum motion for a vote, also called for safe zones to be established in Iraq for persecuted minorities such as the Yazidis.
"Canada stands with Nadia and her people," she said.