Recipientes. Elas não são uma moda passageira ou uma fase. Sua taxa de adoção é realmente muito acelerada em comparação à de sua antecessora, a virtualização. Em menos de dois anos, já estamos vendo interesse em implantar serviços de aplicativos em contêineres , o que geralmente indica que aplicativos já em produção precisam de escala, segurança e velocidade para dar suporte às altas expectativas da experiência de aplicativos atual.
Curiosamente, os contêineres estão amadurecendo junto com suas estruturas de gerenciamento e orquestração. A virtualização não, mas, novamente, a virtualização precedeu a nuvem, o que agiu como uma função de força para outras tecnologias ágeis adotarem as APIs e modelos que permitiram a automação e orquestração da nuvem a serem aplicadas à infraestrutura virtual. Hoje em dia, tanto os contêineres quanto a virtualização (que podem ser considerados tecnologias irmãs) são geralmente implantados junto com uma estrutura de orquestração que coordena o provisionamento, o dimensionamento e até mesmo o roteamento de tráfego de e para outros aplicativos e serviços (tráfego leste-oeste).
Embora dentro dos limites dos domínios dessas estruturas esses mecanismos funcionem perfeitamente para fornecer escala e roteamento localizados, a realidade é que esses aplicativos e serviços são parte de uma visão maior; uma visão que inclui um "aplicativo" mais abrangente que requer interação com os usuários (tráfego norte-sul). Uma pesquisa realizada no final de 2016 pela Portworx descobriu que a segunda carga de trabalho mais popular planejada para conteinerização era “front ends da web”, com 48% dos entrevistados.
Isso quase garante que haja um serviço upstream (ou dispositivo, se preferir) fornecendo escala, segurança e velocidade entre os usuários e o “aplicativo” composto de serviços implantados em um ambiente em contêiner.
Invariavelmente, isso significa que deve haver coordenação entre a estrutura de orquestração do contêiner e o dispositivo/serviço upstream.
Insira os conectores de contêiner F5. Quando anunciamos os Container Connectors, estávamos dando os retoques finais no nosso suporte ao Mesos. Hoje, estamos felizes em lançar suporte para o Kubernetes também.
O que o F5 Container Connector fornece é a integração necessária para conectar a última milha interna entre onde o tráfego norte-sul se transforma em tráfego leste-oeste. É onde o BIG-IP upstream (de onde o Kubernetes está localizado) transfere solicitações para o proxy local apropriado (que pode ser nosso próprio Application Services Proxy ou, no caso do Kubernetes, o Kube-Proxy , por exemplo) ou pod para serem processadas.
Em seguida, ele aguarda uma resposta e executa suas próprias tarefas atribuídas, como limpeza de dados (para evitar vazamentos de dados), otimização de imagens (para melhorar o desempenho) e os envia de volta ao usuário.
O componente principal é o Container Connector, que reside em um cluster do Kubernetes e assina eventos como outros componentes. Ao detectar um evento apropriado, ele configura ou modifica dinamicamente uma configuração existente na configuração upstream (BIG-IP) com os detalhes apropriados. Isso pode ser feito aumentando a escala adicionando novos membros a um cluster/pool, ou diminuindo a escala, removendo-os novamente.
O aspecto mais importante é que ele é integrado e ocorre de forma automática, o que significa aplicação consistente de políticas de segurança na entrada/saída norte-sul sem complicar ainda mais o ambiente em contêiner. Ele também incentiva o uso de SSL/TLS para proteger o tráfego de aplicativos (e API) com usuários, fornecendo um único ponto para gerenciar e manter certificados. Isso também mantém o ambiente em contêineres livre de complexidade operacional adicional, uma reclamação comum quando contêineres e suas arquiteturas de aplicativos associadas são introduzidos.
O que os F5 Container Connectors oferecem é a capacidade de provisionar e gerenciar automaticamente os serviços de aplicativo necessários para aplicativos em contêineres em um ambiente de produção, sem exigir grandes revisões no ambiente que já existia em desenvolvimento e teste (você testou, certo?). Ele dá suporte à noção de implantações sem atrito e preserva a noção de portabilidade, tão importante para aplicativos em contêineres hoje em dia.
A F5 está comprometida em garantir que os serviços de entrega e segurança que os aplicativos precisam estejam disponíveis em todos os tipos de ambiente, sejam contêineres ou máquinas virtuais, em qualquer nuvem ou ambiente tradicional. Mas também estamos comprometidos em tornar esses serviços tão fáceis e indolores de provisionar e gerenciar quanto possível, e isso significa soluções que se encaixam em todos os tipos de arquiteturas.
Para dar suporte às cadeias de ferramentas DevOps, disponibilizamos gratuitamente os Container Connectors e nossa versão do kube-proxy em https://hub.docker.com/r/f5networks/ e uma versão de código aberto do nosso controlador Kubernetes pode ser obtida em nosso repositório git em https://github.com/F5Networks/k8s-bigip-ctlr