Três razões para fazer testes na nuvem
A realização de testes contínuos é fundamental para garantir a segurança, o desempenho e a resiliência de workloads
Por: Reinaldo Yunes
Há quase três anos um executivo sênior da Amazon Web Services afirmou que “A nuvem é o novo normal”. Desde então, essa onda de migrações para a nuvem se tornou incontrolável, pois as empresas estão cada vez mais em busca da agilidade, escalabilidade e economia que a nuvem oferece. No seu relatório State of the Hybrid Cloud, publicado em 2017, a Microsoft afirma que 63 por cento das empresas de médio e grande porte já implantaram um ambiente de nuvem híbrida, com infraestruturas de nuvem pública e in situ. Segundo o ultimo Global Cloud Index da Cisco, até 2020 92 por cento dos workloads corporativos serão processados em centros de dados públicos e privados e apenas oito por cento serão processados em centros de dados físicos.
Ou seja, o futuro está na nuvem, com as empresas adotando estratégias de nuvem híbrida através de serviços fornecidos por um mix de provedores. No entanto, independentemente dos serviços de nuvem utilizados ou do setor onde operam, todas as empresas possuem objetivos comuns: que os seus aplicativos de negócios proporcionem uma experiência de qualidade aos usuários, em quaisquer condições; que esses aplicativos sejam seguros e resilientes; e que operem da maneira mais eficiente possível.
Responsabilidade compartilhada
No entanto, esses objetivos nem sempre são fáceis de alcançar. Parafraseando a afirmação do analista de segurança computacional Graham Cluley, a nuvem pública é basicamente o computador de outra pessoa. Embora o provedor tenha que oferecer uma fundação sólida para aplicações seguras e de alto desempenho, a empresa precisa assumir a responsabilidade pela segurança, disponibilidade, desempenho e gerenciamento dos processos associados a esses aplicativos, pois esta responsabilidade não pode ser ignorada. Além disso, a empresa também é responsável pela configuração e gerenciamento adequados dos controles de segurança fornecidos pelos provedores de nuvem.
Vamos analisar os desafios que as empresas enfrentam para garantir a segurança dos seus aplicativos de nuvem e para proporcionar uma experiência rentável e de qualidade ao usuário.
Desafio nº1: Segurança na nuvem
Segurança adequada na nuvem é um desafio por três motivos. Primeiro: tanto nos ambientes in situ quanto na nuvem, é difícil entender os níveis atuais de segurança de uma empresa, as áreas que requerem proteção adicional e onde há vulnerabilidades em potencial. Como há um número cada vez maior de produtos e plataformas de segurança para gerenciar em ambientes híbridos complexos, é muito difícil obter uma visão única e abrangente dos procedimentos de segurança. Segundo: a natureza altamente dinâmica dos ambientes de nuvem, somada às crescentes ameaças cibernéticas, exige que a segurança nesses ambientes também seja flexível e fluida – ou seja, as políticas precisam ser ampliadas em linha com as infraestruturas que elas estão protegendo. Terceiro: devido à falta de especialistas em segurança no mercado, as equipes de TI precisam se desdobrar para gerenciar as ferramentas e os processos dentro do ambiente híbrido.
As soluções de segurança na nuvem também geram um grande volume de eventos de segurança, dificultando ainda mais a priorização e a remediação de riscos.
Desafio nº2: Experiência do usuário
Aplicativos diferentes possuem ANS e expectativas dos usuários diferentes (pense na diferença entre um Sandbox de treinamento e os aplicativos de varejo online em tempo real). A experiência do usuário geralmente é baseada em dois aspectos: o desempenho do aplicativo e a disponibilidade do serviço. Se esses elementos forem comprometidos, a insatisfação do usuário pode rapidamente transformar-se em prejuízos para a empresa.
Apesar disso, a complexidade das escolhas de múltiplos designs na nuvem pública – desde arquiteturas de hardware até tipos de ocorrência otimizados para diferentes aplicativos – dificulta a garantia de uma experiência de usuário mais consistente. Fatores como o aplicativo ser hospedado numa infraestrutura de nuvem subjacente; a conectividade de rede entre o usuário e o aplicativo; o desempenho dos elementos de operação do aplicativo (por exemplo, balanceadores de carga de sessão); e o design e arquitetura do aplicativo podem afetar a experiência do usuário.
Desafio nº3: Custo e eficiência
Os provedores de nuvem oferecem uma variedade de opções para a construção de aplicativos rentáveis, escalonáveis e de alta disponibilidade. Desde modelos utilitários com cobranças baseadas em demanda até opções de preços de reserva e identificação de lances, as empresas podem escolher o modelo que melhor se adapta às suas necessidades. Nesse caso, o desafio é identificar o melhor.
Sendo assim, para otimizar os custos é necessário considerar o preço e o desempenho de acordo com as necessidades específicas da empresa. As configurações e os designs de arquitetura devem ser otimizados de forma a oferecer um auto escalonamento de aplicativo necessário e suportar picos e quedas de demanda. As escolhas de design relativas à segurança dos workloads variam desde terminais de segurança operando dentro de cada instância e aplicativos de segurança de rede em vários locais até um controle de segurança oferecido pelo provedor de nuvem.
Cada uma dessas escolhas opera com custos diferentes, afeta o desempenho dos aplicativos de maneiras diferentes e oferece segurança com vários níveis de eficácia. Devido a essa complexidade, é difícil identificar as soluções mais eficientes – a não ser que a empresa consiga modelar o aplicativo e os vetores de ameaça direcionados ao mesmo.
Enfrentando os desafios: como os testes podem gerar valor
Para enfrentar esses desafios, as empresas que migram parte ou a totalidade dos seus volumes de trabalho para a nuvem precisam estar preparadas para incluir testes constantes nos seus processos- tanto na fase de pré-produção quanto de produção. Há uma relação direta entre testes e riscos – ao adotar procedimentos de teste desde o começo, as empresas conseguem reduzir drasticamente a exposição aos riscos e usufruir plenamente dos benefícios da nuvem.
Durante a fase de pré-produção, antes de migrar para a nuvem é recomendado realizar testes que permitam aos arquitetos de segurança e de rede e às equipes de segurança obter informações quantificáveis sobre os vendedores e sobre os processos de desempenho e de otimização de custos e de ampliação, disponibilidade e treinamento. Por exemplo, na hora de escolher um vendedor, após certificar-se de que os requisitos de funcionalidade foram atendidos, os gerentes de aquisição devem buscar os vendedores de nuvem pública mais rentáveis tanto em termos de preço quanto de desempenho. Além disso, precisam identificar as ferramentas de segurança de workload de aplicativos mais eficientes, seguras e principalmente, ideais para as suas necessidades específicas.
Em relação ao desempenho e à otimização de custos, os gerentes de TI e de segurança precisam otimizar as políticas e arquiteturas de segurança e adotar as melhores configurações para uma política de auto escalonamento. Essas decisões são baseadas numa série de fatores, desde a utilização de memória até novos índices de conexão, e a consolidação e análise desses fatores só pode ser feita através de um processo de testes rigoroso e realista.
Além disso, há questões sobre o desempenho da arquitetura de nuvem após a sua implantação. Quais os gargalos que aparecerão na arquitetura do aplicativo conforme este vai se ampliando? Quanto tempo os aplicativos levam para se auto recuperar de erros e como a experiência do usuário será afetada no caso de falha num aplicativo?
Testes nas fases de pré e pós-produção
Para responder essas perguntas, é necessário um programa extenso de testes durante a fase de pré-produção, com cargas realistas e modelagem de vetores de ameaça, bem como cenários de failover. Isto garantirá que a arquitetura de nuvem traga vantagens aos negócios ao invés de restringi-los. Além disso, também permite que os engenheiros de segurança e os analistas entendam melhor os elementos com os quais estão trabalhando.
No entanto, os testes não devem ser interrompidos após a implantação do ambiente de nuvem. Na fase de produção, é essencial manter testes contínuos para monitorar ocorrências de degradação nos serviços e ao mesmo tempo, manter uma validação de segurança contínua para garantir os serviços de segurança.
Como a nuvem é o “novo normal”, a realização de testes contínuos nos workloads na nuvem também precisa ser encarada como algo normal durante todos os estágios da implantação e entrega do aplicativo. A realização de testes é a única maneira de garantir que as empresas usufruam ao máximo os benefícios da nuvem, sem correr o risco de violações de segurança, experiências de usuário negativas ou custos desnecessários.
Fonte: CIO
Texto original:
http://cio.com.br/tecnologia/2017/10/11/tres-razoes-para-fazer-testes-na-nuvem/