Cloud Computing: problemas de implementação

Na minha publicação anterior sobre cloud, tentei explicar o meu entendimento sobre a computação em nuvem até agora. Nesta publicação, estou tentando destacar alguns dos pontos e preocupações importantes, de vários estudos de pesquisa, que precisam de atenção ao planejar serviços baseados em nuvem para qualquer organização.

Problemas com a adoção da nuvem

Existem três tipos de usuários potenciais de serviços de computação em nuvem: consumidores, organizações pequenas e organizações de médio e grande porte. Os consumidores e as pequenas organizações têm requisitos relativamente mais simples para a adoção de uma nova tecnologia do que as organizações de médio e grande porte, e têm muito menos a perder se a adoção for errada.

Existem pelo menos sete tipos de problemas de adoção para a computação em nuvem. Eles são

  • Interrupção (disponibilidade)
  • Segurança
  • Desempenho
  • Conformidade
  • Nuvens privadas
  • Integração
  • Custo

Destes, a interrupção, a segurança e o desempenho são questões de qualidade de serviço (QoS). Somente algumas questões de adoção interessam a consumidores e pequenas organizações. No entanto, todos eles são preocupantes para organizações de médio e grande porte.

1. Interrupção

Uma interrupção pode ser temporária ou permanente. Uma interrupção permanente ocorre quando um provedor de serviços na nuvem sai do mercado. Isso aconteceu e acontecerá de novo. A interrupção temporária de serviços de computação em nuvem parece ser inevitável.

Pode acontecer várias vezes por ano, e cada vez que pode durar algumas horas ou quase um dia inteiro ou mesmo mais. Quando os grandes serviços da nuvem se tornam indisponíveis, existe uma cobertura mundial quase instantânea da interrupção. Serviços como Amazon, Google, Citrix, etc., tiveram interrupções altamente divulgadas durante os últimos dois anos.

Os usuários de um serviço na nuvem devem exercer prudência e tomar uma ou mais das seguintes precauções. Primeiro, eles não devem confiar suas aplicações e dados de missão crítica aos provedores de serviços em nuvem, ou seja, eles devem usar serviços em nuvem para aplicativos e dados que não sejam de missão crítica, ao menos em um momento inicial. Pessoal neste ponto, estamos falando de empresas que simplesmente decidiram migrar aplicações para nuvem. Não estou falando tradicionalmente de empresas que exercem testes, homologação, etc… ok ?

Isso explica os usos atuais dos serviços em nuvem para hospedagem na web, testes de software e backup de dados on-line. Em segundo lugar, eles devem manter backups de aplicativos e dados em servidores e armazenamento no local, ou em um serviço secundário da nuvem. Em terceiro lugar, eles devem garantir um acordo de nível de serviço (SLA) o menor possível do provedor de serviços da nuvem para uma compensação parcial favorável em caso de interrupções temporárias.

Observamos que nenhuma dessas precauções é inteiramente satisfatória. O primeiro limita o uso do serviço da nuvem. O segundo e terceiro corroem a vantagem de custo do serviço da nuvem. O terceiro nunca compensa totalmente os danos reais.

2. Segurança

A segurança dos sistemas e dos dados armazenados neles, podem ser comprometidos de muitas maneiras, a segurança 100% é simplesmente impossível. Hackers podem invadir praticamente qualquer sistema.

Uma nuvem pode se tornar um alvo fácil para atrair invasores. Os acidentes podem ocorrer durante o transporte físico ou transferência eletrônica de um grande volume de dados. Acredito, no entanto, que as nuvens não são menos seguras do que nos sistemas locais. Não há nenhuma razão para que as melhores tecnologias e processos de segurança adotados para sistemas de computação no local não possam ser usados ??pelos provedores de serviços em nuvem. Alias, tratei um artigo sobre isso:

Ideias erradas sobre segurança na nuvem

Além disso, os efeitos das violações de segurança nos provedores de serviços na nuvem são tão grandes ou mesmo maiores do que aqueles em organizações de médio e grande porte. Como tal, os provedores de serviços em nuvem devem estar altamente motivados a fazer o melhor para garantir seus servidores e dados.

As medidas de segurança que a Amazon Web Services emprega podem servir de modelo para outros provedores de serviços em nuvem. O usuário pode executar sua imagem de máquina personalizada com um acesso raiz completo. O usuário pode ter seu próprio firewall. O usuário também pode ter controle de acesso granular para cada arquivo. O usuário precisa do seu proprio certificado, uma chave pública, uma string ID, uma ID de segurança para acessar os recursos da Amazon.

3. Desempenho

Uma grande fonte de problemas de desempenho para serviços em nuvem é o tempo de comunicação entre o computador cliente e o servidor na nuvem.

Este problema torna-se sério à medida que o número de usuários simultâneos aumenta e a quantidade de dados transferidos para e da nuvem aumenta. Mesmo a distância física entre o computador cliente e a nuvem faz a diferença. Às vezes, as organizações descobrem a necessidade de aumentar substancialmente a largura de banda de comunicação pouco depois de adotar serviços na nuvem.

Antes de adotar serviços em nuvem, as organizações devem avaliar os requisitos de largura de banda de comunicação e avaliar o comportamento de desempenho das aplicações em relação à transferência de grandes quantidades de dados.

Outra fonte de problema de desempenho é a incapacidade do provedor de serviços de expandir suas infraestruturas de computação à medida que as demandas dos clientes aumentam além da expectativa original. Antes de adotar serviços em nuvem, as organizações devem entender os pressupostos de capacidade do provedor de serviços e os planos de escala sobre a infra-estrutura de computação.

4. Conformidade

Na maioria dos países, as empresas estão sujeitas a algumas regulamentações governamentais relativas ao armazenamento seguro, privacidade e divulgação de dados.

Esses regulamentos foram escritos sem considerar a computação em nuvem, ou seja, uma empresa que armazena dados em instalações de computação de terceiros compartilhadas com outras empresas. Não está claro se a computação em nuvem violará esses regulamentos.

5. Nuvens Privadas

Uma nuvem privada é uma nuvem local. Uma nuvem privada, exceto sua localização física, funciona como uma nuvem normal ou pública. As máquinas virtuais e o armazenamento são criados pela virtualização de recursos de computação física, e os recursos de computação virtual são alocados dinamicamente e desalinhados com base nas necessidades dos usuários. Além disso, os usuários ou departamentos da empresa são cobrados pelos serviços que eles realmente usam.

Uma vez que o termo “nuvem” foi usado para se referir a um provedor de serviços externo remoto, o termo “nuvem privada” é um estupido. Além disso, uma das principais motivações para os serviços em nuvem foi considerada como a liberdade de ter que administrar recursos de computação no local.

Uma possível justificativa para o uso do termo nuvens privadas é o fato de que uma nuvem privada é vista como uma nuvem central para uma empresa, e é acessada por usuários em departamentos diferentes, como se fosse um recurso de computação remota. Em qualquer caso, o conceito de nuvens privadas ganhou terreno recentemente.

Nuvens privadas podem servir como um passo a adoção de serviços públicos em nuvem. As empresas podem ganhar experiência usando serviços na nuvem e preparar sua infraestrutura de TI e equipe corretamente.

Além disso, as empresas podem fazer uso de serviços de nuvem híbrida com base em nuvens privadas e algumas nuvens públicas. Por exemplo, quando a capacidade da nuvem privada é excedida, a empresa pode acessar a nuvem pública. Existem problemas de adoção para serviços em nuvem híbridos. Hoje, se uma carga de trabalho for movida de uma nuvem privada para uma nuvem pública, ambas as nuvens requerem o mesmo hipervisor, os mesmos chipsets para os servidores e o mesmo sistema de arquivos. Além disso, os fornecedores de virtualização têm diferentes formatos de máquinas virtuais.

6. Integração

Uma vez que as organizações podem precisar adotar vários provedores de serviços por vários motivos, eles precisam integrar aplicativos e dados em várias nuvens públicas. Além disso, é provável que muitas organizações adotem nuvens híbridas, precisam integrar aplicativos e dados entre as nuvens privadas e as nuvens públicas.

Tecnologias como integração de informações empresariais (ou sistemas de banco de dados federados), integração de aplicativos empresariais e serviços corporativos podem ser adaptadas para abordar os problemas de integração da nuvem.

7. Custo

O custo geralmente não é considerado um problema de implementação quando se fala em nuvem. Sempre achamos que será mais em conta, sem efetuar cálculos ou projeções.

As pessoas tomam o “pagamento único pelo que você usa” parte da definição de marketing da computação em nuvem como uma dada.

Nas décadas de 1980 e 1990, as pessoas deram por adquirida a promessa de economia de custos no desenvolvimento de software por terceirização. A economia de custos, ainda que significativa, revelou-se muito menos do que se presumiu, devido à necessidade de comunicação entre as duas partes, re-fazer o trabalho que não foi feito de forma adequada, gradual aumento das taxas cobradas, etc.

Da mesma forma, os benefícios de custo prometidos da computação em nuvem devem ser corroídos. Conforme observado acima, a necessidade de manter serviços de backup ou de nuvem secundários para diminuir o impacto de interrupções ocasionais certamente aumenta o custo.

A necessidade de aumentar a largura de banda de comunicação para manter um nível de desempenho desejado aumenta o custo. Além disso, a “administração remota de recursos de computação” parte da definição de marketing da computação em nuvem não significa que as organizações que adotam serviços em nuvem podem depender totalmente dos provedores de serviços para a administração de sistemas, máquinas virtuais e armazenamento.

As organizações ainda precisam monitorar o desempenho e a disponibilidade dos recursos de computação virtual.

Existem várias ferramentas de monitoramento, comerciais e de código aberto. O monitoramento requer tempo de equipe e possivelmente ferramentas comerciais. Estes aumentam o custo.

Os provedores de serviços da IaaS criam recursos de computação virtual a partir de recursos de computação física e alocam recursos de computação virtual para diferentes usuários. Isso significa que vários usuários compartilham recursos comuns de computação física.

Algumas organizações insistem em ter recursos de computação física dedicados na nuvem para evitar que outros “inquilinos” possam possivelmente atravessar caminhos comuns de comunicação de dados. O uso de recursos físicos dedicados na nuvem pode reduzir substancialmente os benefícios de custo da computação em nuvem.