I can't speak of the spa services, but we did take a walk through there the first day and they had people offering up appointments, so I am sure you will be able to book on board. They do specials on land days.
Shows, you most definitely should book ahead of time. On our ship they were full and if you wanted to try and get in, you had to wait in line and then they opened it up 10 minutes before the show to people for those who didn't show up.
Around the ship you will find interactive kiosks that will tell you how full any one activity is. If you choose not to book ahead of time and want to plan on the fly, you may want to check these out before getting in line.
Have a great time!
Carnival Triumph - Spring Break Cruise - 2006
Carnival Victory - Birthday/Summer Cruise - 2007
Oasis of the Seas - Group Cruise - 2010