Fog is a Ruby gem which you can grab with “gem install fog“.
Its a Cloud services Library which will allow you to communicate with multiple cloud vendor platforms. Its the Fog Ruby library that Opscode Chef recipes Knife uses to allow it to integrate with the differing cloud platforms and push your recipes to your new cloud instances.
Whilst my preference would be to use the Opscode platform along with Knife (as it incorporates all of the features Fog offers and lots more), Fog can be used on its own without Chef/Knife, as follows (example source http://rubydoc.info/gems/fog/0.5.1/frames) :
>> server = AWS.servers.create ArgumentError: image_id is required for this operation >> server = AWS.servers.create(:image_id => 'ami-5ee70037') <Fog::AWS::EC2::Server [...]> >> server.destroy # cleanup after yourself or regret it, trust me true
I would recommend taking a look here for more info:http://rubydoc.info/gems/fog/0.5.1/frames, as it helps you to see how Fog works, what happens behind the scenes and other things you can do with Fog.