2-6 Analyse statistique
VI. Evolution et complications :
1) Structure générale
Os serviços oferecidos na Computação em Nuvem envolvem plataforma de software e hardware sob demanda. Por meio da virtualização, pode-se criar um ambiente escalável, em que os usuários podem obter os recursos computacionais de que necessitam, sem a necessidade de interação humana na infraestrutura. O software e hardware dentro da nuvem podem ser reconfigurados de forma automática, orquestrados e essas modificações são transparentes aos usuários.
Diversos privilégios podem ser configurados para diferentes usuários, assim, é possível personalizar os ambientes computacionais de diferentes clientes. A localização da infraes-
2.2. Modelos de Serviços 37
trutura não é de conhecimento dos usuários, alguns provedores disponibilizam somente a região onde se encontra a infraestrutura.
Há três modelos de serviços reconhecidos na Computação em Nuvem pelo NIST [Jan- sen e Grance 2011]. Esses modelos são importantes, pois eles definem um padrão da arquitetura para soluções de Computação em Nuvem. Os três modelos de serviços são: Software como Serviço, Plataforma como Serviço e Infraestrutura como Serviço. Cada modelo tem o seu nível de abstração e controle conforme mostra a Figura 2.3.
Figura 2.3: Modelos de Serviços
Fonte: [Jansen e Grance 2011]
A Figura 2.3 apresenta em camada os modelos de serviços com o nível de abstração e o nível de controle de cada modelo. O nível de abstração está relacionado com a não responsabilidade sobre os componentes da infraestrutura. O nível de controle está relacionado ao gerenciamento do modelo. Quanto mais alta a camada, maior o nível de abstração e menor o controle. Por exemplo, ao contratar um serviço SaaS, o usuário não tem envolvimento com o desenvolvimento, gerenciamento ou administração da solução. Quanto mais baixa a camada do modelo de serviço, maior será o controle e menor a abstração. Como exemplo, quando um usuário contrata um serviço IaaS, ele contrata uma infraestrutura capaz de executar e hospedar seu software sobre o sistema operacional que escolheu, instalar, administrar e gerenciar a sua utilização. A seguir a definição de cada modelo apresentado na Figura 2.3.
2.2.1 Software como um Serviço (SaaS)
O modelo de serviço SaaS é um software oferecido em forma de serviço ou prestação de serviço. O consumidor contrata a utilização de uma aplicação que está hospedada e executada na nuvem. Não é necessário instalar o sistema no computador do cliente, basta acessá-lo pela Internet com um browser. O SaaS é um conceito atrativo para todos os profissionais de TI e usuários comuns em que se deparam, a cada dia, com
software com infindáveis atualizações, correções e alto custo de licenças. Nesse modelo, os aplicativos são executados no ambiente da nuvem, ficando disponíveis por meio da Internet e acessíveis de qualquer lugar a partir de diversos dispositivos conectados à Internet.
No SaaS, os usuários não administram ou controlam a infraestrutura, como por exem- plo, rede, servidores, sistemas operacionais e armazenamento. O responsável por admi- nistrar essa infraestrutura, pelo desenvolvimento e atualizações das aplicações fornecidas aos usuários é o provedor da nuvem. Esse modelo de serviço está cada vez mais presente no dia a dia de diversos usuários. Exemplos de tipos de serviços são Google Docs [Ciurana 2009] e Sales Force [Salesforce 2013].
2.2.2 Plataforma como um Serviço (PaaS)
O modelo de serviço PaaS é a versão intermediária da Computação em Nuvem. Ofe- rece uma infraestrutura de alto nível de integração para implementar e testar aplicações na nuvem. O usuário não administra ou controla a infraestrutura, mas tem controle sobre as aplicações implantadas. O PaaS fornece um sistema operacional, linguagens de progra- mação e ambientes de desenvolvimento para as aplicações, auxiliando a implementação de sistemas de software. No PaaS tem-se o provisionamento de serviços que permitem o desenvolvimento, testagem, implantação, hospedagem e gerenciamento de aplicações com o objetivo de suportar o ciclo de vida de desenvolvimento de aplicações.
O modelo PaaS fornece ambientes de desenvolvimento de software, facilitando a im- plantação de aplicativos sem os custos e complexidades relativas a compra e gerenciamento de hardware necessários para o desenvolvimento de aplicações. Diversos serviços podem ser oferecidos por meio desse modelo de serviço para facilitar projetos de aplicativos. Exemplos de serviços são Google App Engine [Ciurana 2009] e Aneka [Vecchiola et al. 2009].
2.2.3 Infraestrutura como Serviço (IaaS)
O modelo de serviço IaaS é o responsável de prover toda a infraestrutura necessária para o PaaS e o SaaS. Tem como principal objetivo fornecer uma infraestrutura de pro- cessamento, armazenamento, servidores e rede como serviço. Nesse modelo, o consumidor do serviço é cobrado conforme o uso dos recursos. No IaaS o usuário não administra ou controla a infraestrutura em nuvem, mas tem controle sobre os sistemas operacionais, armazenamento e aplicativos implantados.
O modelo IaaS oferece uma infraestrutura que pode ser escalada dinamicamente, au- mentando ou diminuindo os recursos de acordo com as necessidades das aplicações. Suas características o tornam muito rentável para os usuários, porque em vez de comprar no- vos servidores e equipamentos de rede para a ampliação de serviços, podem-se aproveitar
2.2. Modelos de Serviços 39
os recursos disponíveis e adicionar novos à infraestrutura existente de forma dinâmica e transparente. Várias empresas disponibilizam esses serviços por meio da Internet e de máquinas virtuais, como exemplos: Amazon Elastic Cloud Computing (EC2) [Robinson 2008] e Rackspace [Rackspace 2013].
2.2.4 Gerenciamento de Serviços
Cada modelo de serviço reconhecido pelo NIST apresenta a suas particularidades em relação à prestação de serviços aos consumidores. O gerenciamento desses serviços tam- bém é realizado de formas diferentes em cada modelo. Em um modelo tradicional, uma empresa monta toda a sua infraestrutura de TI, que é responsável por gerenciar toda essa infraestrutura, incluindo software e hardware. Nos modelos de serviços de Computação em Nuvem, essas responsabilidades, na maioria das vezes, são repassadas aos provedores dos serviços de Computação em Nuvem dependendo do modelo de serviço utilizado. A Figura 2.4 mostra como é realizado o gerenciamento dos modelos de serviços.
Figura 2.4: Gerenciamento de Serviços
Fonte: Autora
Em IaaS, as aplicações, o tempo de execução, a segurança, a integridade e o banco de dados são gerenciados pelo usuário; já os servidores, a virtualização, o hardware, o armazenamento e a rede são obrigações dos provedores de serviços. Em PaaS, somente as aplicações são gerenciadas pelo usuários, os demais itens são de responsabilidade do pro- vedor de serviço. Por último tem-se o SaaS em que todos os itens são de responsabilidade do provedor de serviço.
A definição do modelo de implantação da nuvem é um dos fatores importantes durante a elaboração do projeto da infraestrutura. O modelo de implantação é o que estabelece a forma de acesso e de controle aos serviços fornecidos pelos provedores. A próxima seção
apresenta os modelos de implantação de nuvem, que dependem do tipo de acesso aos ser- viços. Muitas vezes, empresas necessitam de ambientes restritos, em que somente pessoas autorizadas tenham acesso às informações e serviços, sendo necessário um ambiente mais restrito. Em outras ocasiões, o acesso tende a ser liberado para todos os usuários que tenham conhecimento do serviço.