Conectando Sistemas de Missão Crítica na Nuvem – Parte II – Cuidados

Author Photo
11:31 am - 12 de julho de 2017

Diante do conjunto crescente de benefícios na conexão de sistemas de missão crítica na computação em nuvem, apresentados na primeira parte deste artigo, é necessário avaliar criteriosamente os pré-requisitos a serem preenchidos para que essa integração não coloque em risco a ‘missão crítica’ das empresas.

AUDITABILIDADE E NÍVEIS DE SERVIÇO

Da mesma forma que ocorre com qualquer sistema e serviço consumido por grandes empresas, recursos da computação em nuvem, quando usados no contexto corporativo, precisam ser “auditáveis”: assim como na contabilidade, cada operação individual onde a empresa está envolvida precisa de registros de controle. A posterior análise, totalização e verificação desse ‘big data’ só gera benefícios adicionais.

Ainda, por se tratar de serviços computacionais, os registros auditáveis permitem comprovar que o nível de serviço acordado com os fornecedores externos ou prometido aos clientes (externos ou internos) está sendo atingido. Por exemplo, se o acordo de nível de serviço prevê que 99,9% das requisições são processadas e respondidas em menos de dez segundos, isto pode ser comprovado observando os registros auditáveis.

Um das razões da baixa adoção corporativa de sistemas disponibilizados ‘como serviço’ na nuvem é que eles não permitem a sua auditabilidade por usuários externos.

RESILIÊNCIA A CONEXÕES INSTÁVEIS

A computação em nuvem, por ser baseada nas conexões de Internet, não possui o mesmo grau de confiabilidade das redes internas das empresas: os sistemas de missão crítica não apenas precisam ‘resistir’ a comunicações interrompidas ou suspensas por falhas nas comunicações, mas precisam estar preparados para lidar com dispositivos externos que pertencem aos clientes ou usuários (como celulares, tablets e máquinas de cartão de crédito) que simplesmente desaparecem da rede quando sua fonte de energia (sua bateria) acaba (como é o caso, por exemplo, de tablets, celulares e máquinas de cartão de crédito), sem completar as transações em andamento.

A integração desses dispositivos com sistemas de missão crítica exige que estes não sofram qualquer interferência no caso de significativos volumes de transações incompletas.

PLANEJAMENTO DE CAPACIDADE

Outra consequencia da conexão dos sistemas de missão crítica com a computação em nuvem é que o número total de usuários tende a aumentar de forma bastante significativa.

Tipicamente, os servidores responsáveis pelos sistemas de missão crítica foram dimensionados para atender aos usuários internos das empresas. Através da nuvem, esses mesmos equipamentos agora podem receber demandas diretamente de clientes, parceiros ou dispositivos conectados, fazendo com que o número total de usuários se amplie muito.

A ampliação do parque de computadores que suporta o ambiente de missão crítica na mesma proporção do crescimento da base de usuários resulta em custos economicamente inviáveis. Mesmo tendo sido projetados com alguma folga na capacidade, existe o risco de que a capacidade de processamento disponível não seja suficiente para atender a todos os usuários.

Por se tratar de sistemas de missão crítica projetados para os usuários internos das empresas, estes devem ser os últimos a sentirem as consequencias de eventuais problemas na capacidade de processamento (ou, dito de outra forma, devem dispor de atendimento prioritário para não sentirem esse impacto).

Para atingir esse objetivo é necessário limitar o número de demandas oriundas da computação em nuvem a serem processadas, de forma a garantir capacidade de processamento disponível para os usuários internos.

SEGURANÇA

O acesso aos sistemas de missão crítica da empresa deve se valer de todas as técnicas possíveis, criadas pelos profissionais de segurança da informação. O cadastramento dos usuários é um pré-requisito fundamental, porém insuficiente para a segurança dos sistemas de missão crítica.

É necessário que o código fonte dos aplicativos móveis, das páginas web ou do software dos dispositivos conectados não contenha nenhuma senha de acesso a recursos disponibilizados nos servidores de missão crítica (como p.ex. contas de usuário ou de bancos de dados específicos). Caso contrário, esta senha ficaria disponível a qualquer hacker capaz de aplicar técnicas de ‘engenharia reversa’ aos códigos citados.

Outra ‘brecha’ a ser evitada na conexão de sistemas de missão crítica com a nuvem consiste em permitir o acesso aos recursos críticos a partir de dispositivos com qualquer endereço de IP na Internet. O uso de ferramentas adequadas para limitar o acesso a poucos, ou mesmo a um único endereço de IP, conhecido pelo firewall, aumenta o nível de segurança. Em casos onde a segurança é extremamente importante (como no caso dos bancos), esse único IP deve pertencer à nuvem privada.

RESILIÊNCIA A ATAQUES DE NEGAÇÃO DE SERVIÇO

Ataques de negação de serviço (conhecidos como DoS = Denial of Service, em inglês) deixaram de ser ficção científica há muito tempo: este tipo de ataque consiste em executar tentativas de acesso não autorizado aos sistemas em grande volume e de forma simultânea.

Desta forma, a demanda de capacidade cresce muito rapidamente, fazendo com que os servidores responsáveis passem a ter dificuldades ou mesmo não consigam prestar o serviço devido aos usuários legítimos.

Ao conectar sistemas de missão crítica na nuvem é necessário garantir que na ocorrência de um ataque deste tipo (aos recursos disponibilizados por meio da nuvem), o serviço prestado aos usuários conectados pela rede interna da empresa não sofra qualquer prejuízo.

CONTROLE DE REENTRÂNCIA

A reentrância consiste na capacidade de um sistema de permitir novas chamadas (a serviços ou rotinas) por parte de um mesmo usuário antes mesmo de que uma chamada anterior provocada por este tenha sido concluída.

Desde o surgimento das técnicas de programação recursiva nos anos 60, quase todas as plataformas de computação evoluíram para dar suporte à reentrância.

Embora seja útil, um uso excessivo deste recurso pode gerar problemas de processamento e, no limite, resultar no mesmo comportamento de um ataque de negação de serviço.

Assim, mesmo quando os servidores de missão crítica possuem capacidade de processar muitos milhares de transações simultaneamente, é necessário dispormos de bloqueios de rechamada para cada usuário individual.

Por exemplo, no caso de um servidor pertencente a um banco, nenhum usuário deveria iniciar uma nova transação de transferência de dinheiro de uma conta corrente para outra em menos de dez segundos (até mesmo se ele estiver operando com o banco em dispositivos diferentes).

INTERNACIONALIZAÇÃO CRESCENTE

Os arquitetos, projetistas e desenvolvedores dos sistemas de missão crítica pensaram, quando da sua criação, apenas nos usuários internos das empresas: este tipo de público possui preferências culturais e idiomáticas bem conhecidas.

Por meio da computação em nuvem, esses sistemas são conectados com novos públicos, cujas preferências podem ser bem diferentes. Por exemplo, aplicações pela nuvem podem atrair usuários que falam outros idiomas, para os quais o sistema de missão crítica não possui suporte. Nem por isso devemos abrir mão de dispor de suporte a esses novos idiomas humanos e preferências culturais na interface de usuário disponibilizada por meio da nuvem.

PRODUTIVIDADE DOS DESENVOLVEDORES

A complexidade de soluções que integram servidores de missão crítica, a computação em nuvem e dispositivos de usuário final é maior do que na média dos sistemas em uso.

Assim é frequente que, após longos esforços de desenvolvimento, ao iniciar os testes (por exemplo, usando páginas Web para acionar serviços de missão crítica pela nuvem) o único resultado obtido seja uma tela em branco ou uma resposta vazia. Nesses casos, identificar a causa do problema pode se transformar num pesadelo para os desenvolvedores (ou em muitas noites mal dormidas).

Esse tipo de situação poderia ser evitado se o ambiente de nuvem fosse capaz de reportar sobre os problemas encontrados ao transferir as demandas aos servidores de missão crítica. A criação de infraestrutura na nuvem com esse objetivo, porém, não apresenta benefícios evidentes para o serviço prestado pela nuvem aos usuários (além de ser muito custosa para ser incluída no orçamento de qualquer projeto individual).

Conclusão – ROI é a Chave!

Os benefícios da conexão dos sistemas de missão crítica, descritos na primeira parte, só devem ser disponibilizados se todos os cuidados citados na segunda parte forem atendidos adequadamente – não apenas do ponto de vista funcional, mas do ponto de vista econômico. Em outras palavras, o retorno sobre o investimento (ROI = Return On Investment, em inglês) precisa ser compensador para que as empresas se disponham a desenvolver projetos deste tipo em escala mais significativa. Esta equação econômica é a responsável pelo avanço restrito da chamada “Economia das APIs” no mundo corporativo.

Por outro lado, observamos que todos os cuidados citados na segunda metade deste artigo não são específicos de um determinado tipo de software, ou de um determinado segmento de mercado vertical. Pelo contrário, esses cuidados representam um conjunto de requisitos imposto a qualquer sistema de missão crítica que se deseje efetivamente integrar na nuvem.

A partir dessa constatação, e diante da inexistência de ferramentas desse tipo no mercado global, a MBI criou um middleware na nuvem que disponibiliza todos esses cuidados ‘as a service’, chamado VersaCloud (www.versacloud.technology).

Newsletter de tecnologia para você

Os melhores conteúdos do IT Forum na sua caixa de entrada.