A very important and more often than not overlooked aspect of any cloud infrastructure, in this particular case, working with AWS, is the location of the services. AWS has an extensive decentralization and a tight grip on the location of its main data centers, allowing for a more secure and less compromised site for their physical layer. Nevertheless, the location for one’s use of AWS varies in both intensiveness and offered services.
Something often slightly criticized about AWS is its Service Level Agreement (SLA). Something expected about a cloud service is for it to be available 24/7, without a hitch. The problem, as with everything, more larger its extension around the world, and the stronger its products become, they tend to be more complex; the maintenance is something essential, yet very hard to offer full-time. Most services at Amazon are attached to an SLA, though some do not have it at all.
The AWS Customer Agreement is the foundation for the terms and conditions of the overall service one may receive. Its major considerations are:
- Changes: There is bound to be, lots of them. With or without warning. This is the world of software engineering, after all.
- Security & Privacy: Backup images shall be created in order to keep a safe copy of all data, in case of some failure.
- Clients’ Responsibilities & Indemnification: Everything involving the end users is responsibility of Amazon’s client (you), including any illegal actions.
- Quality of Service: Amazon is responsible for this, only if the client proves he has done everything in his power to maintain everything running correctly (OS kernel up-to-date, required network speeds, optimized EBS instances, etc.).
- Availability: Not every service will be available, the customer must plan for this.
Something important to have in mind when using any cloud service is that every service offered is bound to fail, no one knows when or why, but it is something all SLAs state. AWS considers themselves stable, at least for many months, but accidents tend to happen, and the client (whoever hires AWS) must be prepared for this.