sexta-feira, 11 de maio de 2018

Computação nas nuvens


Computação nas nuvens


UP-FC Departamento de Ciências de Computação
Geraldo Carlos Nhadumbuque, José Alexandre Amorim e Paulo Vilares.
Porto, Março, 2010.


Abstract


Este trabalho aborda aspectos essenciais relacionados ao termo cloud computing(computação nas nuvens), começando por definir, caracterizar, e no final apresenta as respectivas conclusões. 

Keywords: Cloud, Computing


1. Introdução

O surgimento das redes de computadores representa um marco histórico bastante assinalável que veio inovar o mundo das TIC’s, criando a possibilidade de comunicação e compartilhamento de dados entre computadores independentemente da localização geográfica.
Como o mundo tecnológico não para de evoluir, novos cenários de trabalho tem sido criados com vista a optimização de resultados no processamanto de dados, o exemplo disso é o surgimento da computação grid, uma modelo de trabalho que permite a interacção entre os diferentes centros de computação geograficamente dispersos, executando tarefas pesadas de forma distribuída. Seguindo o ritmo das grandes inovações, passo a passo caminha-se para uma nova forma de trabalho designada
cloud computing em que o software, os dados e a plataforma ficam disponíveis através da internet como um serviço a ser explorado, sem necessidade de se instalar ou alocar localmente.
Mas como será isso possível ou seja o que é cloud computing. Quais são as suas princípais características? Ou ainda de que forma veio modificar e inovar o mundo das TIC’s? Como será
possível trabalhar numa máquinas sem necessidade de instalar programas, e efectuar backups?
No desenrolar deste trabalho terá-se como foco principal a resposta a essas e outras questões de género, introduzindo sempre que necessário, conceitos de relevância que serão naturalmente desenvolvidos.

2. Conceito de Cloud computing

O cloud computing projecta-se para uma nova forma de estar no mundo tecnológico em que o software, serviço, plataforma e os dados ficam disponíveis nas nuvens (internet). Esta nova abordagem pressupõe a existência de um Service Provider (Provedor de serviços), entidade que vela pela disponibilização do software, desencadeando todo o processo de desenvolvimento, armazenamento, manutenção, actualização, backup, escalonamento, etc.. Deste modo o utilizador poderá aceder a diversos serviços e dados, independentemente do local e plataforma de acesso bastando para isso ter uma máquina conectada a rede de internet que tenha um browser compatível.
Com o decorrer do tempo grandes empresas como o Amazon, Google, têm se apercebido que apenas uma pequena parcela de memória disponível para o armazenamento de dados esta a ser utilizada. Com isto tornou se prático o arrendamento da memória e do armazenamento de dados nas nuvens em
servidores remotos[3] (ver fig. a seguir).

                                                        Fig. 1 Computação em nuvens [3].
 
Informações e dados são armazenados temporariamente na memória cash de servidores remotos, notebooks, computadores de mesa, telefones celulares ou outros dispositivos. Empresas como a Amazon’s Amazon Elastic Computer Cloud (EC2) e Simple Storage Solution (S3) e Google representam o exemplo actual desta prática.

3. Cloud Service

Cloud computing define três níveis de serviços: Software as a Service (SaaS), Platform as a Service (PaaS), e Infrastructure as a service (IaaS) [1], [5].

3.1 SaaS

O software como serviço é uma modalidade de trabalho em que o software é disponibilizado ao utilizador como um serviço. Um provedor de SaaS normalmente encarrega-se pela hospedagem e gestão de aplicações em seu próprio centro de processamento de dados, e ainda fornece à vários nós e utilizadores conectados através de uma plataforma Web. Deste modo o utilizador apenas acede e explora as funcionalidades do software em causa, a instalação, actualização, segurança e verificação formal do software esta a cargo do Service Provider.

3.2 PaaS

PaaS significa plataforma como um serviço, é um paradigma utilizado para disponibilizar ferramentas de desenvolvimento de aplicações como um serviço através da internet sem necessidade de se efectuar o download ou instalação. Facilita o desenvolvimento e implantação de aplicações, gestão da
infrastutura disponibilizando um acompanhamento integral associado ao suporte do ciclo de vida das aplicações Web. Esta plataforma consiste numa infrastrutura de software, e integra uma base de dados, midleware e ferramentas necessárias para o desenvolvimento de aplicações. Algumas ofertas PaaS têm uma linguagem de programação específica ou API. Por exemplo, o Google tem uma oferta AppEngine PaaS onde os desenvolvedores podem programar em linguagem Python ou Java [1].
A alternativa desenvolve aplicações Web recorrendo a ferramentas de desenvolvimento desktop, como Oracle, Visual Basic para posteriormente implementarem manualmente em uma nuvem que providencia a hospedagem da plataforma, que pode ser a Amazon EC2 por exemplo[4]. Essa plataforma e aplicações desenvolvidas devem integrar a funcionalidade de suporte a múltiplos utilizadores e cada um com um projecto activo, ferramentas para o monitoramento e facturamento em
função de tempo de execução.

3.3 IaaS
IaaS é a disponibilização de um centro de recursos digitais (hardware e rede), software associado como um serviço a ser explorado por terceiros. Uma determinada empresa ou entidade singular (utilizadores de serviços) em vez de comprar servidores, licenças de software, equipamentos de rede, acedem esses elementos nas nuvens com vista a satisfazerem suas necessidades de processamento, como se os mesmos estivessem disponíveis em seus próprios centros de dados.
Organizações comprometidas com a investigação e desenvolvimento de softwares podem construir suas aplicações de forma bastante célere, sem necessidade de aquisição de um novo hardware ou ainda esperar pela sua configuração.
A aplicação popular desta modalidade consiste na hospedagem de sites das organizações.

4. Tipos de nuvens

As nuvens podem ser classificadas em três tipos nomeadamente:
públicas, privadas e híbridas. A escolha depende fundamentalmente das necessidades do utilizador [1].

4.1 Nuvens públicas

As nuvens públicas são aquelas que são executadas por organizações externas que se encarregam por disponibilizar a infra-estrutura e a gestão necessária para o funcionamento da nuvem. É disponibilizada ao público em geral e as aplicações são susceptíveis de se misturarem em servidores de nuvens.

4.2 Nuvens privadas

Corresponde a nuvens que são geridas e mantidas exclusivamente a entidades privadas como empresas. Caso o utilizadoro queira aumentar os recursos utilizados em sua nuvem privada, ele deve adquirir novos equipamentos, como sistemas de armazenamento, por exemplo, já que a sua nuvem
está limitada à capacidade de seu sistema físico [5].

4.3 Nuvens híbridas

Conteplam os dois tipo de nuvens descritos em secções anteriores, possuem dados em nuvens públicas e privadas. Aplicações críticas com preocupações significativas podem ser alocados em nuvens privadas e outras aplicações que requerem requisitos menos rigorosos, podem ser hospedados em nuvens públicas. Este tipo de nuvem requer uma coordenação minuciosa entre as infranstutura da nuvem privada e pública, e definição de políticas entre as entidades envolvidas.

5. Últimas considerações

Cloud computing garante uma maior disponibilidade da informação uma vez que os dados podem ser acedidos independentemente da máquina, local de acesso e devido a utilização do modelo baseado em “pay-per-use” (o utilizador paga apenas por aquilo que consome). Como este modelo é baseado na disponibilização de serviços terá como grande desafio manter as características principais de um serviço (maior segurança, maior disponibilidade, confiabilidade, escalabilidade e segurança).

6. Conclusão

Cloud computing é um modelo de computação onde produtos e serviços residem em grandes servidores virtuais, essa característica traz benefícios tanto a utilizadores, programadores, empresas e a toda comunidade, pois não haverá necessidade de se preocupar com a instalação, manutenção de software, e aquisição de servidores ou ainda na aquisição de máquinas velozes, e que tenham um grande potencial de hardware, pois estas responsabilidades são transferidas ao Service Provider.
Este modelo é eficaz apenas se os requisitos de segurança forem salvaguardados pelo Service Provider pois a indisponibilidade do serviço pode causar enormes prejuízos a todos utilizadores conectados a nuvem e principalmente a empresas. Para regiões em que o sistema de rede local dificulta a disponibilidade dos dados tal como nos países pobres poderá-se demorar mais tempo para o alcance deste modelo.
 

7. Bibliografia

[1] BENNETT, S., BHULLER, M., COVINGTON, R.: Architectural Strategies for Cloud Computing, 2009. http://www.oracle.com/technology/architect/entarch/pdf/archite ctural_strategies_for_cloud_computing.pdf

[2] ALECRIM, A.: O que é Cloud Computing (Computação nas Nuvens)?, 2010. http://www.infowester.com/cloudcomputing.php
 
[3] SRINIVASA, R. V., NAGESWARA, R. N. K., E KUSUMA, K.: Cloud Computing: An Overview, Jatitit, 2009. http://www.jatit.org/volumes/researchpapers/Vol9No1/10Vol9No1.pdf

[4] KEENE, C. : What Is Platform as a Service (PaaS)? 2009. http://www.keeneview.com/2009/03/what-is-platform-asservice-paas.html

[5] CHIRIGATI, F. S.: Computação em Nuvem, 2009. http://www.gta.ufrj.br/ensino/eel879/trabalhos_vf_2009_2/seabra/arquitetura.html
Share:

0 comentários:

Enviar um comentário

Seguidores

Visitantes do blog

Pesquisar neste blogue

posts recentes

Traduzir