Munster, thanks to a dominant scrum had the best try scoring chances before they eventually created the space out wide for Barnes to score and deservedly lead at the break.
O'Gara extended the lead with a penalty on the 49th minute, before Danny Barnes added his second try seven minutes later.
Ospreys fullback Richard Fussell scored a late try to give a final score of 18 points to 11 in Munster's favour.
Munster now go on to play Leinster in the Magners League Grand Final on Saturday, May 28th, ko 5.05pm.
And looking towards the local derby final McGahan said "We'll certainly need to raise the stakes. They're a really settled side playing excellent rugby and have come through against some excellent opposition this season."
The update on Denis Leamy "he got a bit of a head knock so we'll just take a look at some scans and see how he is on Monday."
Munster: F Jones; D Howlett, D Barnes, L Mafi, K Earls; R O'Gara, C Murray; M Horan, D Varley, J Hayes; D O'Callaghan, P O'Connell capt; D Ryan, D Wallace, J Coughlan. Replacements: M Sherry, W du Preez, S Archer, D Leamy, N Ronan, P Stringer, P Warwick, S Zebo.
Ospreys: R Fussel, T Bowe, A Bishop, J Hook, N Walker, D Biggar, R Webb, P James, H Bennett, A Jones, I Gough, A Wyn Jones capt, R Jones, J Tipuric, J Thomas Replacements: R Hibbard, R Bevington, C Griffiths, J Collins, T Smith, M Holah, T Isaacs, A Beck.