OpenLayers supports google maps as a layer type. And obviously you can add in OpenStreetMap as an alternative layer type for your users in the layer picker, as this example shows.

This is similar to using google maps javascript and adding in an OpenStreetMap layer, but it means you're in OpenLayers-land when it comes to the javascript code for adding marker overlays etc. Advantage of this is your users can still see a google map (if they're insisting upon it), but you are supporting the open source OpenLayers, and perhaps readying your code for the day when you can drop google maps altogether.

Basically the same example as OSM and Google Together