Jacques Rudolph (17) fell early, but Kettleborough (81) and Colin Ingram (30) added 71 for the second wicket.
Kettleborough put on a further 66 with Donald (91 not out) before being caught off the bowling of David Payne.
Chris Cooke also contributed with a quickfire 65, as rain brought about an early close with Glamorgan on 315-4.
The visitors' score could have been even higher were it not for bad weather, as rain saw 19 overs lost.
Donald's half-century was the third of the 18-year-old's career in first-class cricket, and surpassed his previous best of 67  to end the day on 91.
Glamorgan batsman James Kettleborough told BBC Wales Sport:
"It was very satisfying to get some runs though it would have been nice to go on and get to three figures.
"It was tricky this morning with a bit of dampness around and they bowled well but we got through and it got a bit easier as the day went on.
"Aneurin Donald and Chris Cooke played really well and made it our day, it would be brilliant for Aneurin (to become Glamorgan's youngest Championship centurion), so fingers crossed he goes on and gets a big one."
James Kettleborough and Aneurin Donald hit career-best scores as Glamorgan dominated the first day's play against Gloucestershire at Bristol.