Ulster enjoyed in the majority of possession in the early stags of the game and opened the scoring on 13 minutes, turning over Hartpury inside the Ulster 22, then running the length of the field in two phases before lock Matthew Dalton crossed the whitewash. Johnny McPhillips added the extra two to make it 0-7.
McPhillips almost pushed Ulster further in front with a 50m penalty but it drifted just wide, before Hartpury responded by driving over from a lineout maul.
On 32 minutes Hartpury crossed again when centre Luke Eves crashed over after an attacking scrum. Outhalf Lloyd Evans conversion put the home side 12-7 in front.
Despite controlling possession for the remainder of the half, the Championship side were unable to extend their lead before the interval.
Ulster came out of the blocks faster in the second half, and just two minutes in Callum Patterson benefited from a quick tap with the home side napping to level the sides at 12-12.
Six minutes later Rob Lyttle worked his way over to put Ulster back in front.
Hartpury came back with a purple patch of pressure but the Ulster defence stood up to the test manfully before scrum-half Harry Cochrane got in under the posts for a deserved converted try.
Ulster responded almost immediately with the pack taking play up to the Hartpury line and Adam McBurney finishing it off for the try bonus point.
On 67 minutes Hartpury got a try bonus point of their own, Cochrane making the break and number 8 Darrell Dyer in support to touch down. The conversion attempt went just wide, leaving the sides level at 24-24.
With few clear scoring chances in the final 10 minutes, it looked like a draw was on the cards. However, with Ulster pressing high up the pitch, the ball was turned over then hacked through, with Busby on hand to seize the win for the Ulster men.
Hartpury RFC team:
(1-8): Dan Murphy, Will Crane, Josh Ibuanopke, BJ Edwards, Rhys Oakley (C), Iain Grieve, Aaron Hinkley, Darrel Dyer;
(9-15): Harry Cochrane, Lloyd Evans, Ed Sheldon, Luke Eves, Tom Seabrook, Alex Ducker, Ed Coulson.
Replacements: Joe Mullis, Mike Flook, Tom Heard, Joe Quinn, Matt Gilbert, Mike Wilcox, James Williams.
Ulster A team:
(1-8): Tommy O'Hagan, Adam McBurney, Tom O'Toole, Peter Browne, Matthew Dalton, Clive Ross, Aaron Hall, Greg Jones (C);
(9-15): Jonny Stewart, Johnny McPhillips, Rob Lyttle, Rory Butler, Callum Patterson, David Busby, Jack Owens.
Replacements: Zack McCall, Eric O'Sullivan, John McCusker, Marcus Rea, Aaron Cairns, Dave Shanahan, Angus Kernohan.
British & Irish Cup Pool Stage Fixtures:
Round 1: Ulster A 24-18 Scarlets Premiership Select, Saturday 14th October at Banbridge RFC (2.30pm)
Round 2: Cornish Pirates 23-14 Ulster A, Sunday 22nd October at Mennaye Field, Penzance (2.30pm)
Round 3: Hartpury RFC 24-29 Ulster A, Saturday 9th December at Hartpury College (2.30pm)
Round 4: Ulster A v Hartpury RFC, Saturday 16th December at Ballymena RFC (2.30pm)
Round 5: Ulster A v Cornish Pirates, 12-14th January at Shaw's Bridge (TBC)
Round 6: Scarlets Premiership Select v Ulster A, Saturday 20th January at Llandovery RFC (3.00pm)