Computação em nuvem: o que se esconde por trás disso?
Quem não quiser ou não puder criar um centro de dados próprio pode recorrer à computação em nuvem. Trata-se de um modelo que oferece várias vantagens interessantes, tanto para particulares como para empresas. Descubra o que é a computação em nuvem e quais são as suas vantagens e desvantagens.
O que é a computação em nuvem?
Ter um centro de dados próprio implica uma certa complexidade e um investimento financeiro considerável, uma vez que requer pessoal especializado. Além disso, não é possível expandir a capacidade conforme necessário, razão pela qual muitas vezes são alocados mais recursos do que o necessário, o que representa uma desvantagem em termos de eficiência.
Com a computação em nuvem, muitos destes problemas desaparecem. Em vez de terem de adquirir, instalar e manter um centro de dados, as empresas e os particulares recorrem a serviços web alojados por um único fornecedor. Desta forma, os utilizadores beneficiam tanto das economias de escala como da possibilidade de escalar os seus recursos de forma rápida, fácil e dinâmica. Na maioria dos casos, esta forma de externalização funciona através de um sistema de aluguer.
Com a computação em nuvem, não há um limite definido para os serviços oferecidos. Estes podem ir desde o simples armazenamento na nuvem, em que os utilizadores obtêm recursos de armazenamento em servidores remotos a par do próprio armazenamento em disco, até à infraestrutura na nuvem, através da qual as empresas podem obter centros de dados completos pela Internet.
De acordo com a publicação do Instituto Nacional de Padrões e Tecnologia (NIST), os serviços oferecidos que se enquadram no conceito de computação em nuvem devem cumprir uma série de características:
- Autoatendimento sob demanda: os utilizadores devem poder aceder aos recursos de que necessitam sem terem de contactar o fornecedor.
- Acesso amplo à rede: o acesso à computação em nuvem é feito através da Internet e não requer a utilização de um protocolo específico ou de técnicas pouco comuns. A utilização de métodos padronizados garante que todos os utilizadores tenham acesso ao serviço sem problemas.
- Pool de recursos: a combinação de diferentes instâncias de computação, que na maioria dos casos consiste num parque de servidores, é praticamente um requisito para a computação em nuvem. Estes pools permitem que vários utilizadores disponham da capacidade de armazenamento ou da potência de cálculo necessária ao mesmo tempo. Além disso, o cliente não precisa de saber qual o dispositivo utilizado para o efeito, uma vez que os recursos são atribuídos de forma dinâmica.
- Elasticidade e escalabilidade: os recursos devem estar à disposição dos utilizadores com rapidez e de acordo com as necessidades de cada um. Na melhor das hipóteses, existem automatismos ativos que servem para ativar ou desativar recursos sem a intervenção de clientes ou funcionários.
- Serviço mensurável: a utilização dos serviços na nuvem é monitorizada em permanência, o que proporciona transparência tanto para o fornecedor como para o utilizador.
A computação em nuvem baseia-se num grande centro de processamento ou num parque de servidores, onde os computadores ou servidores se ligam entre si, agrupando os recursos. Este tipo de computação em rede (grid computing) permite obter um elevado desempenho. Além disso, se combinada com a virtualização, é possível criar instâncias virtuais dentro da rede para utilizadores individuais, mesmo que estes não saibam em que dispositivo se encontram os dados. E, mesmo sem dispor desta informação, o acesso ocorre de forma rápida e sem problemas.
Variantes da computação em nuvem
Ao longo do tempo, têm surgido diferentes ofertas no mercado, que se distinguem principalmente no que diz respeito ao modelo de camadas e à forma de implementação, embora também variem em termos de preços e serviços oferecidos.
Modelo de capas
Cada camada corresponde a um modelo específico do serviço: existem diferentes tipos de camadas «como serviço», dependendo do âmbito da oferta, que se organizam numa estrutura piramidal: enquanto o modelo «infraestrutura como serviço» tem o âmbito mais vasto, o «software como serviço» centra-se numa aplicação específica.
- Infraestrutura como serviço (IaaS, Infrastructure as a Service). Nesta camada, o fornecedor oferece soluções completas de hardware: capacidade de processamento, espaço de armazenamento e tecnologia de rede, tratando-se de instâncias totalmente virtualizadas distribuídas no conjunto de recursos. A IaaS serve de base para as restantes camadas, embora também seja oferecida como produto individual.
- Plataforma como serviço (PaaS, Platform as a Service). Esta camada vai um passo além e coloca à disposição do utilizador não só o hardware, mas também um ambiente completo. O PaaS destina-se sobretudo a programadores de software. O fornecedor encarrega-se de disponibilizar um ambiente de desenvolvimento já criado na nuvem em hardware alojado, pelo que os programadores poupam na instalação e manutenção do ambiente.
- Software como Serviço (SaaS, Software as a Service). Na camada superior, é oferecido aos utilizadores um software completo na nuvem; é por isso que o SaaS se destina principalmente ao consumidor comum, que não necessitará de instalação nem manutenção e tem a certeza de que o desempenho do hardware é suficiente para o funcionamento do software. Para aceder ao software, os utilizadores utilizam ou o navegador web ou um programa restrito que carrega a parte principal na nuvem.
- Everything as a Service (XaaS). A par dos três modelos mencionados, são anunciados cada vez com mais frequência outros serviços, embora isso se deva normalmente a motivos de marketing. Um XaaS serve para designar qualquer uma das camadas anteriores, embora também possa não ter nada a ver com a computação em nuvem. É o caso do Humans as a Service (HuaaS), que descreve um tipo de crowdsourcing.
Modelo de implementação
Estes modelos descrevem o tipo de oferta: as instâncias são reservadas para um único utilizador ou empresa, ou são partilhadas num conjunto com outros utilizadores?
- Nuvem privada: o servidor será utilizado por um único utilizador. Uma nuvem privada pode estar, embora não obrigatoriamente, numa rede interna (nuvem interna). Mesmo com um fornecedor de alojamento que disponha de parques de servidores, é possível recorrer a hardware dedicado ao qual os restantes utilizadores do fornecedor não têm acesso.
- Nuvem comunitária: uma nuvem comunitária funciona de forma semelhante a uma nuvem privada, só que, neste caso, são vários clientes que partilham uma instância de hardware dedicado. A combinação de utilizadores não é aleatória, mas sim porque pertencem ao mesmo setor de atividade ou partilham os mesmos interesses. Este tipo de nuvem pode ser gerido tanto a nível interno como externo e, em comparação com a nuvem privada, representa uma poupança de custos.
- Nuvem pública: este tipo de implementação corresponde ao verdadeiro ideal em que se baseia o conceito de nuvem. O utilizador utiliza, tal como as restantes pessoas, a mesma ligação ao servidor e desconhece quem utiliza que hardware, nem pode determiná-lo.
- Nuvem híbrida: trata-se de uma fusão entre a nuvem pública e a privada. É a empresa ou o particular que decide que parte da operação ocorre na nuvem privada (por exemplo, aspetos importantes em matéria de segurança) e que parte atribui à nuvem pública.
Vantagens e desvantagens da computação em nuvem
A computação em nuvem oferece inúmeras vantagens, sobretudo para as pequenas e médias empresas. A aquisição de uma infraestrutura de TI própria, que inclua servidores, é complicada, pois exige um investimento financeiro significativo, além de um serviço de manutenção constante, o que requer pessoal especializado. Além disso, na melhor das hipóteses, o centro de dados cresce à medida que a empresa cresce, embora isso não signifique que o faça de acordo com os recursos necessários. Em vez disso, o hardware é adquirido em ciclos pré-determinados, estimando a procura futura. Tudo isto implica uma aquisição de recursos superior à que é realmente necessária.
Para além da escalabilidade, a computação em nuvem oferece outras vantagens. Além disso, os parques de servidores profissionais, como os utilizados pelos fornecedores de computação em nuvem, costumam dispor de uma proteção superior à que se poderia obter localmente, uma vez que o pessoal de segurança impede o acesso de terceiros, os técnicos protegem os servidores contra ataques digitais e os especialistas em proteção garantem que os dados não sejam danificados ou destruídos. A isto acrescenta-se o facto de alguns fornecedores de computação em nuvem realizarem cópias de segurança obrigatórias.
No entanto, estes sistemas também apresentam desvantagens, razão pela qual muitas empresas continuam relutantes em implementá-los. Para algumas empresas, a falta de flexibilidade é um dos motivos para recusar a sua implementação, uma vez que cria uma dependência das configurações dos diferentes fornecedores. Além disso, se o fornecedor, por qualquer motivo, deixar de oferecer os seus serviços, a empresa depara-se com um problema real. A tudo isto há que acrescentar a necessidade de dispor de uma ligação estável à Internet, pois se esta for frequentemente interrompida ou muito lenta, o trabalho não é eficaz.
Apesar de tudo, a proteção de dados é provavelmente o tema que suscita maior relutância: embora seja verdade que os dados estão protegidos no espaço de armazenamento, a transmissão através da Internet representa sempre um risco. Outro dos problemas tem a ver com a localização do centro de dados. Se, por exemplo, o centro de dados se situar nos EUA, as empresas são obrigadas por lei a revelar os dados às autoridades norte-americanas, caso tal seja exigido. Dado que as empresas que utilizam a computação em nuvem lidam frequentemente com dados confidenciais de terceiros, tendem a encarar este tema com algum cepticismo.
Vantagens da computação em nuvem
- Sem compromisso de capital
- Soluções escaláveis
- Não requer pessoal especializado
- A manutenção e a proteção dos centros de dados estão garantidas
Desvantagens da computação em nuvem
- Requer uma ligação à Internet rápida e estável
- Considerações sobre as políticas de proteção de dados
- Dependência do fornecedor
- A transmissão acarreta riscos de segurança
- Os preços reduzidos levam frequentemente a recorrer a mais recursos do que os necessários
História da computação em nuvem
Ao contrário do que se possa pensar, a interligação de terminais com o objetivo de oferecer maior capacidade de armazenamento e poder de computação a mais utilizadores não é uma descoberta recente. Já na década de 1950, o surgimento dos mainframes marcou o início do que hoje se conhece como computação em nuvem. Por mainframe entendia-se um computador central ao qual os utilizadores podiam ligar-se a partir de diferentes terminais dentro de uma mesma organização (sejam elas empresas ou universidades), permitindo-lhes utilizar as suas capacidades. No entanto, nos seus primórdios, os utilizadores tinham de partilhar o tempo, ou seja, reservar um tempo de computação durante o qual podiam utilizar os serviços do mainframe.
Nas décadas seguintes, desenvolveu-se a virtualização, graças à qual era possível utilizar instâncias de computação abstratas e totalmente virtuais. Com a descoberta da Internet, toda a gente começou a ter acesso a estes ambientes virtualizados e, finalmente, a sua comercialização na década de 90 levou a que estes modelos ficassem disponíveis para o grande público.
A partir daí, a «nuvem» como conceito começou a ganhar popularidade, embora só no início do novo milénio é que as empresas e os particulares começaram a prestar atenção a este tipo de tecnologia. As primeiras ofertas de computação em nuvem consistiam em serviços individuais, tais como espaço de armazenamento para a troca de dados ou as folhas de cálculo do Google, nas quais vários utilizadores podem trabalhar num mesmo documento simultaneamente. Ao mesmo tempo, a Amazon começou a disponibilizar aos utilizadores a sua vasta oferta de servidores. A plataforma Amazon Web Services (AWS) permite que outras empresas utilizem a infraestrutura do gigante do comércio eletrónico e executem programas nessa infraestrutura.
A computação em nuvem faz agora parte do dia-a-dia de muitas pessoas. A maioria dos telemóveis e, mais concretamente, a Internet das Coisas, está em contacto constante com a nuvem. Por exemplo, quando os utilizadores tiram uma fotografia, os telemóveis carregam-na diretamente para a nuvem da Google ou da Apple, para que a imagem possa ser acedida a partir de outros dispositivos.