If you pay much attention to IT people on Twitter, blogs, and at conferences you’ll hear a lot of arguments about public vs private clouds, essentially around whether or not a “Private Cloud” can really exist, make any sense, and achieve the level of pricing and scalability that a “Public cloud” (like Amazon EC2 or Rackspace Cloud) can achieve. There’s also plenty of people who’d say that a private cloud can achieve better security than a public cloud, though I’m not sure I’d agree fully with that.
What I do think though is that there is one fundamental difference between a public and private cloud, and it’s not a technical but a contractual one – the right of the public cloud supplier to terminate your service.
In the Amazon Web Services Customer Agreement, section 3.3.2 currently states:
3.3.2. Paid Services (other than Amazon FPS and Amazon DevPay). We may suspend your right and license to use any or all Paid Services (and any associated Amazon Properties) other than Amazon FPS and Amazon DevPay, or terminate this Agreement in its entirety (and, accordingly, cease providing all Services to you), for any reason or for no reason, at our discretion at any time by providing you sixty (60) days’ advance notice in accordance with the notice provisions set forth in Section 15 below.
To me, this is a fundamental difference between a public and private cloud, and why private clouds are being built, and will continue to be built for the foreseeable future.
In a public cloud, the supplier will always want to retain the right to terminate your service if you are doing something they don’t like, and right now there’s no easy way to migrate your services to a new supplier.
Perhaps once the cloud migration tools have achieved a level of functionality and stability that a 60 day notice period isn’t an issue, then public clouds will take another step towards becoming the dominant form of IT services provision.