A arquitetura de computação em nuvem é baseada em camadas, sendo que cada uma delas trata de uma particularidade na disponibilização de recursos para as aplicações. Uma camada é uma divisão lógica de componentes de hardware e software. A camada de

....I.... contém serviços como negociações de QoS, de cobrança, para verificar aceitação de requisições baseado no QoS e preço, de gerenciamento de virtualização.

...II... contém as aplicações de usuários de computação em nuvem.

...III... contém ambientes com interfaces Web 2.0, marshups, componentes, recursos de programação concorrente e distribuída, suporte a workflows, bibliotecas de programação e linguagens de programação.

...IV... contém datacenters, clusters, desktops e outros recursos de hardware, podendo ter recursos heterogêneos.

As camadas I, II, III e IV correspondem, respectivamente: