Polls opened at 7 am local time and will continue for nine hours under tight security, an elections department official said.
Some 1,586,598 of the country's 21 million population are eligible to vote. About 1,076 polling stations have been set for elections. There are 19 candidates in the fray.
The main fight is between Rajapaksa and his former minister Maithripala Sirisena.
"There is heavy polling everywhere," Keerthi Tennakoon of Campaign for Free and Fair Elections (CAFFE) said.
Also Read
Rajapaksa said he was confident he would return to power as he cast his ballot.
"We will have a resounding victory. That is very clear. From tomorrow, we will start implementing our manifesto," he told reporters in his constituency in Hambantota in the south of the country.
In the Tamil minority northern province, people turned out in large numbers.
"People are keen to vote, there were several hundreds already queueing up when the poll stations opened," E Saravanabhavan, a Tamil parliamentarian from Tamil National Alliance (TNA) said.
"In a polling station for 1,200 voters, 800 of them finished voting in the first hour," Tennakoon said.
69-year-old Rajapaksa had called the election two years ahead of schedule, hoping to win a record third six-year term before the defeat of the Tamil Tigers fades in the memory of the people of the island which saw a three decades war over the demand of a separate Tamil Eelam.
The veteran politician was taken by surprise by the candidacy of former health minister, Sirisena, 63, who walked out of the government a day after polls were called.
Both the president and his challenger belong to the majority Sinhala Buddhist community and much depends on how the minorities Tamils and Muslims vote in the elections.
President Rajapaksa has been the undisputed leader of the country for nearly a decade. But Sri Lanka is still grappling with divisions between the Sinhalese majority and Tamil minority groups.