Conteúdo


Usar Redes Definidas por Software para Otimizar o IaaS

Gerencie a rede por meio de camadas de abstração de software para aprimorar a sua infraestrutura em nuvem

Comments

A rede definida por software (SDN) é uma abordagem à rede que permite que administradores gerenciem os serviços de rede abstraindo as funcionalidades de nível mais baixo. A SDN separa o plano de controle— , que determina para onde o tráfego é enviado — do plano de dados,— que encaminha o tráfego para o destino escolhido.

Neste artigo, explicamos a combinação de SDN e serviços de infraestrutura da nuvem para otimizar ao IaaS. Eu me concentro nestas áreas:

  • Garantir a interoperabilidade do IaaS
  • Utilizar totalmente o modelo de serviço de nuvem do IaaS
  • Atender as expectativas de usuários, desenvolvedores, provedores e mantenedores com projetos da OpenStack Foundation e da OpenDayLight
  • Proporcionar a mitigação de riscos com custo reduzido para otimizar o IaaS

Interoperabilidade da IaaS

Um administrador da rede pode alcançar o objetivo de interoperabilidade do IaaS usando a arquitetura da SDN com a Virtualização das Funções de Rede (NFV). O conceito de arquitetura NFV requer o uso de tecnologias de virtualização para virtualizar classes inteiras de funções de nós de rede em blocos de construção que podem ser interconectados para criar serviços de comunicação. Uma dessas funções de rede virtualizadas pode ser formada por uma máquina virtual ou mais que podem executar diversos softwares e processos com base em uma infraestrutura em nuvem.

A arquitetura SDN permite que o administrador tenha uma visão global do comportamento do tráfego de um dispositivo de rede para outro em um IaaS a partir de um console central. Quando necessário, também detalha como o tráfego deve ser otimizado antes de movê-lo para um IaaS compatível.

O núcleo da arquitetura SDN é o controlador, um aplicativo de software livre que separa as funções de controle das funções de dados dos dispositivos de rede proprietários. O administrador pode usar o controlador para informar aos dispositivos de rede para onde eles devem redirecionar ou reenviar os pacotes se um dispositivo de rede começar a ter um tráfego pesado. O administrador pode aumentar a quantidade de VMs do IaaS quando necessário: por exemplo, para mover quantidades enormes de dados de dispositivos de rede com mau desempenho para dispositivos melhores.

A NFV separa as funções de rede — como conversão de endereço de rede (NAT), firewall, detecção de intrusão, serviço de nome de domínio (DNS) e armazenamento em cache — dos dispositivos de hardware proprietários, para que as funções possam executar os controles no software. Consolida os componentes de rede necessários para suportar uma infraestrutura de rede totalmente virtualizada.

O controlador de SDN e NFV deve estar configurado adequadamente para que o administrador otimize ou faça outras alterações nos fluxos de tráfego de rede. A configuração inadequada pode levar a indisponibilidades ou ataques ao IaaS. Configurações adequadas podem ser realizadas por meio de projetos de software livre, como OpenStack e OpenDayLight.

Para constatar quantos profissionais de rede preferem o software livre para as soluções SDN de fornecedores comerciais, a OpenDayLight fez uma pesquisa de opinião. O relatório envolveu 600 tomadores de decisões de TI e tecnólogos em organizações de porte médio a grande em organizações corporativas (300) e de provedores de serviços (300) na América do Norte. A pesquisa de opinião mostra que 95% dos profissionais de rede querem software livre em suas soluções de SDN, mas 76% preferem o software livre dos fornecedores comerciais. ("Relatório de Open Source de SDN e NFV: o ponto de vista do operador.")

Ao escolher o software livre dos fornecedores comerciais, o controlador de SDN e NFV pode ser usado para otimizar ao IaaS.

Modelo de serviço de nuvem de IaaS

Para entender melhor como a otimização do IaaS com a SDN funcionaria, é necessário comparar os principais atores do modelo de serviço de nuvem do IaaS em relação ao controle de uma nuvem de IaaS. Os participantes importantes são:

  • Usuários do serviço de nuvem de IaaS
  • Desenvolvedores de serviço de nuvem de PaaS/IaaS
  • Provedores de serviço de nuvem de IaaS
  • Administradores de SDN

Usuários do serviço de nuvem de IaaS

Vamos examinar o nível de controle que os usuários do serviço de nuvem de IaaS têm. Esse grupo inclui usuários de IaaS e de SaaS.

O usuário de IaaS (geralmente um especialista em rede ou infraestrutura):

  • Controla os sistemas operacionais, o equipamento de rede e os aplicativos implementados no nível da máquina virtual.
  • O especialista em infraestrutura pode aumentar ou diminuir a escala dos serviços virtuais ou dos blocos da área de armazenamento.
  • Ele também pode ser o administrador da SDN que usa o controlador para otimizar o fluxo de tráfego de um dispositivo para outro.

Por outro lado, o único controle que o usuário de SaaS tem (independentemente de ser um indivíduo, uma empresa ou um órgão governamental) é o acesso ao aplicativo de SaaS; o controle do administrador de SDN em relação ao fluxo do tráfego é transparente para ele. O usuário do SaaS também pode ser o provedor do SaaS que procura atender às expectativas do usuário quanto ao controle de acesso, sistema, tempo de resposta (rendimento) e respostas a consultas.

Desenvolvedores de serviço de nuvem de PaaS/IaaS

Qual é o nível de controle dos desenvolvedores de serviços de nuvem de PaaS e IaaS?

O desenvolvedor de PaaS controla e protege todos os aplicativos encontrados em um ciclo de vida de negócios completo. Por exemplo, o desenvolvedor cria, implementa e executa um aplicativo de gerenciamento de warehouse customizado. Como parte do ciclo de vida do negócio, o desenvolvedor usa planilhas, processadores de texto, faturamento, processamento da folha de pagamento e faturação. O desenvolvedor de PaaS precisa garantir que o aplicativo funcione bem nas redes sobre as quais o administrador de SDN tem controle.

O desenvolvedor de IaaS controla o desenvolvimento do ciclo de vida de uma nuvem particular ou pública de IaaS que pode interoperar com outra nuvem de IaaS hospedada por outro provedor de serviço. O desenvolvedor de IaaS garante que o IaaS se baseie no OpenStack. O desenvolvedor de IaaS trabalha em conjunto com os desenvolvedores de PaaS na execução de aplicativos de SaaS no IaaS ou PaaS no ambiente de teste.

Provedores de serviço de nuvem de IaaS

No mínimo, o provedor de IaaS controla a infraestrutura dos recursos de informática convencionais subjacentes às máquinas virtuais. O provedor configura os níveis de limite de usuários, recursos e solicitações de dados e pode permitir a negociação sobre a mudança dos níveis de limite com os provedores de PaaS. O provedor também pode ser o administrador da SDN, que controla o tráfego entre dispositivos de rede.

Administradores de SDN

Em uma nuvem de IaaS, o administrador tem controle sobre as funções da SDN separadas do plano de dados e as funções da NFV separadas dos dispositivos de hardware proprietários. O administrador terá que colaborar com os atores do modelo de serviço de nuvem de IaaS na otimização do IaaS de software livre.

Atender as expectativas: OpenStack Foundation

Os clientes atuais e futuros do serviço de nuvem esperam um padrão aberto do serviço de nuvem, para permitir que um IaaS interopere com outro IaaS hospedada por outro provedor. O OpenStack tomou medidas proativas para atender suas expectativas: o Projeto OpenStack Foundation permite que os desenvolvedores e tecnólogos da computação em nuvem colaborem na produção da plataforma de computação de software livre em nuvem para as nuvens públicas e particulares do IaaS.

Vamos abordar a OpenStack Foundation mais detalhadamente e examinar o que a fundação vem fazendo com o OpenStack para padronizar o IaaS. Em seguida, abordaremos os componentes da arquitetura modular, serviços compartilhados, Neuron e SDN.

O trabalho da fundação

O OpenStack é um sistema operacional na nuvem do IaaS que controla grandes conjuntos de recursos de computação, armazenamento e rede em todo um datacenter. Todos os recursos são gerenciados por um painel que dá aos administradores controle e, ao mesmo tempo, permite que usuários e desenvolvedores forneçam recursos por meio de uma interface da web.

A OpenStack Foundation supervisiona o projeto OpenStack que integra o código da plataforma Nebula da NASA à plataforma da Rackspace. As mudanças nesse projeto são realizadas por membros da OpenStack Foundation, que derivou da Rackspace em 2011. Os desenvolvedores e tecnólogos de computação em nuvem colaboram globalmente para produzir plataformas de computação em nuvem de software livre para nuvens particulares e públicas.

Em abril de 2012, a IBM e a Red Hat concordaram em passar a fazer parte da fundação como membros Platinum, ou seja, passarão a contribuir com US$ 500.000 por ano durante os próximos três anos. Outras empresas, como AT&T, Canonical, HP, Nebula, Rackspace e SUSE, também pretendem se tornar membros Platinum.

Componentes de arquitetura modular

O OpenStack tem uma arquitetura modular que inclui três componentes como parte do esforço para padronizar ao IaaS. Cada um recebe um nome de código.

  • Computação (Nova): fornece software livre e padrões para implementações em larga escala de instâncias de computação virtual fornecidas automaticamente.
  • Armazenamento de objetos (Swift): fornece software livre e padrões para o armazenamento redundante em larga escala de objetos estáticos.
  • Rede (Neuron): fornece a "rede como serviço" entre os dispositivos de interface de rede (vNICs) gerenciados por outros serviços da OpenStack, como a Nova.

Serviços compartilhados

O OpenStack tem vários serviços compartilhados que englobam os três pilares de computação, armazenamento e rede. Esses serviços são:

  • Identidade para fornecer autenticação unificada em todos os projetos do OpenStack
  • Imagem para prestar serviços de entrega referentes a imagens de disco virtual
  • Telemetria para fornecer dados agregados de uso e desempenho de todos os serviços implementados em uma nuvem do OpenStack
  • Orquestração para fornecer um mecanismo acionado por modelo que permite aos desenvolvedores de aplicativos descrever e automatizar a implementação da infraestrutura
  • Painel para fornecer uma interface com o usuário baseada na web para os serviços do OpenStack, inclusive Nova e Swift

Todos eles integram os componentes do OpenStack.

Neuron e SDN

O Neuron, nome de código dos serviços de rede, pode ser usado para otimizar o IaaS com a SDN. Os administradores de rede podem aproveitar a tecnologia SDN, como o OpenFlow, para permitir altos níveis de multitenancy e grande escala de movimento de dados de um dispositivo de rede para outro. (O OpenFlow é um protocolo de comunicações padrão de software livre que fornece acesso pela rede ao plano de encaminhamento de um comutador de rede ou roteador. Assim os controladores remotos possam determinar o caminho dos pacotes de rede pela rede de comutadores.)

Os usuários podem criar suas próprias redes, controlar o tráfego e conectar servidores e dispositivos a uma rede ou mais, também por meio da tecnologia SDN.

O Neuron tem uma estrutura de extensão que permite serviços de rede adicionais, como sistemas de detecção de intrusão (IDS), balanceamento de carga, firewalls e redes privadas virtuais (VPN) sejam implementados e gerenciados.

Atender as expectativas: OpenDayLight

Não basta o Neuron com tecnologia SDN usando o padrão OpenFlow. O mais adequado para otimizar o IaaS é o OpenDayLight, um projeto da Linux Foundation. É uma estrutura de software livre que aproveita a SDN e o controlador da NFV que os administradores podem usar com o OpenStack Neuron para ajudar os usuários a tomar medidas proativas para otimizar o IaaS.

Vamos abordar a OpenDayLight mais detalhadamente e examinar o que ele vem fazendo para padronizar ao IaaS.

Um controlador de SDN e NFV está contido em sua própria máquina virtual Java™ (JVM). Isso significa que o OpenDayLight não é apenas para Linux®. Trata-se de uma plataforma aberta projetada para ser usada com qualquer hardware e sistema operacional que suporte o código Java.

O OpenDayLight foi fundado por 18 empresas, entre elas Cisco, Dell, Juniper, IBM e Intel. No momento, o projeto conta com 36 membros. Mais de 150 desenvolvedores contribuíram ativamente para o Hydrogen, o primeiro release do OpenDayLight.

Hydrogen

O Hydrogen está à disposição de empresas, provedores de serviços e de equipamentos e ensino superior. Vem em três edições em um pacote:

  • A Base Edition para executar em um laptop e se conectar a uma ferramenta de teste que fornece uma rede sintética.
  • A Virtualization Edition para incluir tecnologias de virtualização de datacenter. Fundamenta-se na edição base.
  • A Service Provider Edition para ajudar os provedores de serviços e os portadores a desenvolver um plano para migrar para a SDN e a NFV e o suporte para a engenharia de tráfego. Conta com suporte ao protocolo SNMP e APIs para gerenciar o equipamento de rede legado.

Virtualização das Funções de Rede

Como foi explicado anteriormente, a NFV separa as funções da rede dos dispositivos de hardware proprietários, para que as funções possam executar no software. Destina-se a consolidar os componentes de rede necessários para suportar uma infraestrutura totalmente virtualizada, incluindo servidores virtuais, armazenamento e até mesmo outras redes. Utiliza tecnologias padrão de virtualização de TI que executam serviços de alto volume e hardware de armazenamento para virtualizar funções de rede.

Vamos examinar como a NFV funciona com a SDN. A partir da visualização geral do OpenDayLight, a SDN é descrita em três camadas.

  • Aplicativos de rede e orquestração: a camada superior é formada por aplicativos de lógica de rede e negócios que controlam e monitoram o comportamento da rede. Incluem aplicativos de orquestração que são necessários para controlar globalmente o tráfego de rede.
  • Plataforma do Controlador: a camada intermediária fica ente as interfaces northbound e southbound da SDN. A interface northbound fornece um conjunto de APIs comuns para a camada de aplicativo. Ela se conecta à interface southbound e implementa um protocolo ou mais (como o OpenFlow) para controlar o hardware físico da rede.
  • Dispositivos de Rede Físicos e Virtuais: a camada inferior é constituída pelos dispositivos virtuais e físicos, comutadores e roteadores, entre outros, que fazem as conexões entre todos os terminais dentro da rede.

Mitigação de risco do controlador

A SDN apresenta vulnerabilidades (como hackeamento do controlador da SDN) que pode ser explorado por hackers. Para reduzir os riscos do controlador, siga estas quatro etapas.

  • Identifique os ativos.
  • Identifique as vulnerabilidades e ameaças.
  • Avalie os riscos.
  • Corrija com proteções.

Identifique os ativos

Inicie o processo de mitigação de riscos identificando os ativos associados ao controlador. Determine as categorias dos ativos. Veja alguns exemplos:

  • Hardware: dispositivos e comutadores de rede e console do administrador da SDN
  • Segurança: mecanismos de criptografia, ferramentas de teste de segurança e firewalls
  • Administração: diretrizes do OpenStack e OpenDayLight
  • Documentação: ponto de contato do administrador da SDN, manuais de treinamento, padrões de rede, planos de recuperação de desastres e Acordo de Nível de Serviço

Identifique as vulnerabilidades e ameaças

Os hackers não são os únicos agentes de ameaça que podem se aproveitar das vulnerabilidades do controlador. O administrador de SDN, que pode configurar inadequadamente o controlador (e os firewalls), é outro possível agente de ameaça.

A configuração incorreta do controlador e dos firewalls pode provocar indisponibilidades e ataques ao IaaS. Se a política do mecanismo de failover do IaaS de uma região para a outra não estiver estabelecida, os usuários podem ir para outro IaaS.

Avalie os riscos

Os usuários querem garantir interoperabilidade e disponibilidade contínua da IaaS, além de poder ter a demanda de mais tráfego com a otimização do IaaS atendida. O método quantitativo é uma das formas de avaliar os riscos de indisponibilidade de IaaS. Veja alguns exemplos:

  • Frequência estimada de indisponibilidade do IaaS
  • Frequência estimada de ataques à rede devido à configuração incorreta do controlador
  • Frequência estimada do não cumprimento das garantias de desempenho estabelecidas em um Acordo de Nível de Serviço
  • Frequência estimada de failover com falha de roteadores e comutadores de rede

Corrija com proteções

Proteções com custo reduzido são uma forma de mitigar riscos de controlador. O administrador da SDN deve garantir que:

  • O controlador seja configurado e protegido adequadamente ao auditar pelo menos quem o acessou pela última vez, criptografar o tráfego e ativar a opção de criação de log.
  • Haja serviços de rede estabelecidos para bloquear ataques à rede. Eles englobam sistemas de detecção de intrusão (IDS), balanceadores de carga e firewalls.
  • Haja um mecanismo de failover estabelecido para realizar o failover rapidamente, passando de roteadores de rede e comutadores com defeito para equipamentos que estão funcionando bem.
  • O administrador da SDN/NFV tenha a instrução e as aptidões adequadas para gerenciar o sistema.

Conclusão

Ao planejar a otimização do IaaS com SDN, leve em consideração as melhores práticas para resolver a problemas com a interoperabilidade da IaaS e configurar um modelo de serviço de nuvem do IaaS. As medidas proativas sobre o uso do IaaS baseada em OpenStack com o OpenDayLight para otimizar o IaaS devem fazer parte do plano. Lembre-se de ter um plano de mitigação de risco do controlador. É necessário formar uma equipe de atores de serviço de nuvem do IaaS, gerentes, analistas de negócios e engenheiros de sistema e facilitar o trabalho de otimização com a SDN.


Recursos para download


Temas relacionados


Comentários

Acesse ou registre-se para adicionar e acompanhar os comentários.

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=80
Zone=Cloud computing, Software livre, Tecnologia Java, Linux
ArticleID=982390
ArticleTitle=Usar Redes Definidas por Software para Otimizar o IaaS
publish-date=09052014