No mundo da TI, o Kubernetes está em todo lugar. Com o suporte de mais de 43.000 colaboradores , esse sistema de código aberto se tornou a maneira padrão de implantar aplicativos modernos na nuvem. Porquê?Simplificando, o Kubernetes torna a vida muito mais fácil para os desenvolvedores, acelerando a implementação de aplicativos e agregando valor à plataforma subjacente para os usuários finais.
O Kubernetes, também conhecido como k8s, recentemente chamou a atenção no setor de telecomunicações, à medida que as operadoras buscam fazer a transição de jardins murados para plataformas abertas. O sistema está definido para ser uma parte intrínseca da arquitetura nativa da nuvem flexível necessária para trazer o melhor das redes 5G autônomas. Uma verdadeira rede nativa da nuvem oferece uma infinidade de benefícios, desde rápida implantação de serviços e automação até muito mais resiliência e eficiência. Como exemplo, o Google implanta mais de dois bilhões de contêineres por semana usando sua plataforma interna Borg , que foi a antecessora do Kubernetes.
Esse tipo de flexibilidade e escalabilidade é fundamental para a visão da nuvem de telecomunicações — a ideia de que as redes 5G se tornarão uma plataforma versátil para uma ampla gama de serviços e aplicativos desenvolvidos por terceiros. Ao permitir que as empresas de telecomunicações implantem aplicativos em contêineres portáteis, o Kubernetes pode, por exemplo, levar serviços para a borda da rede, mais perto dos usuários finais, reduzindo a latência.
Então, o que o Kubernetes realmente faz? Um aplicativo moderno normalmente é criado a partir de diferentes microsserviços, cada um lidando com uma função específica, como gerenciamento de pedidos, relatórios ou pagamentos. Depois que os microsserviços são empacotados em contêineres, o Kubernetes automatiza sua implantação, dimensionamento e gerenciamento. O Kubernetes também pode oferecer suporte à recuperação automática em caso de falha em um cluster de microsserviços.
Fundamentalmente, o Kubernetes abstrai algumas das complexidades de rede interna subjacentes para desenvolvedores de aplicativos. Isso torna a vida muito mais fácil para o desenvolvedor de aplicativos típico. Em essência, o Kubernetes permite que os aplicativos sejam disponibilizados ao mundo externo de forma simples e direta.
Um controlador de entrada do Kubernetes é o canal pelo qual um usuário final interage com um aplicativo web por meio do protocolo HTTP. O controlador de entrada também fornece gerenciamento de tráfego, garantindo que as solicitações do usuário sejam roteadas para o microsserviço correto dentro do cluster do Kubernetes.
Todos esses benefícios podem ser aproveitados pela arquitetura baseada em serviços das redes 5G, mas somente se as empresas de telecomunicações adotarem uma nova mentalidade. Embora o Kubernetes ofereça muitos benefícios, o sistema pode parecer um tanto ortogonal ao que os engenheiros de telecomunicações estão acostumados. Como vivem e respiram redes, as empresas de telecomunicações se sentem confortáveis configurando manualmente os endereços IP dos equipamentos de rede e definindo suas próprias regras de roteamento e balanceamento de carga, além de outros parâmetros que o Kubernetes foi projetado para abstrair.
No entanto, esse tipo de configuração manual prejudicaria todo o propósito do Kubernetes: impediria a implantação rápida e o dimensionamento automatizado que são marcas registradas das principais plataformas de nuvem, como AWS e Azure. As primeiras soluções de virtualização de funções de rede (NFV) implantadas por empresas de telecomunicações em redes 4G tendiam a empregar scripts manuais e, como resultado, careciam do dinamismo e da automação de uma arquitetura de TI moderna.
Com a implementação das redes principais 5G, as empresas de telecomunicações têm uma tela em branco. Mas, infelizmente, eles não podem simplesmente transplantar um sistema Kubernetes padrão. A grande maioria das empresas de telecomunicações está implantando redes 5G junto com redes 4G, então elas precisarão de uma entrada Kubernetes que também possa suportar protocolos de telecomunicações padrão — SCTP, Diameter e GTP — bem como HTTP. Isso ocorre porque o ingresso do Kubernetes que faz o front-end dos serviços 5G não fará interface diretamente com um usuário via HTTP, mas se conectará a outros elementos centrais 4G e 5G. Em alguns casos, será necessária uma função de interoperabilidade que traduza mensagens HTTP/2 em mensagens Diameter e vice-versa.
Outra complicação é como dar suporte à comunicação interna dentro do cluster de aplicativos. Em uma implantação padrão do Kubernetes, uma malha de serviços normalmente é usada para gerenciar e rastrear com segurança a comunicação entre diferentes microsserviços. Embora essas malhas de serviço ofereçam suporte a recursos de rastreamento centrados em TI, as empresas de telecomunicações estão descobrindo que a funcionalidade associada não está adaptada de forma ideal às suas necessidades.
A terceira questão é como as funções 5G dentro do cluster Kubernetes se comunicarão com o mundo externo. Abrir os endereços IP internos dinâmicos atribuídos pelo Kubernetes não é uma boa ideia. Os endereços mudarão com o tempo e dar esse nível de visibilidade ao mundo exterior constituiria um grande risco à segurança. As empresas de telecomunicações querem controle total sobre a atribuição de endereços IP a determinadas funções 5G. Eles devem ser independentes dos endereços IP usados pelos contêineres subjacentes que compõem essa função 5G. Uma função de saída inteligente do Kubernetes é necessária para conseguir isso.
Uma opção seria dispensar o Kubernetes e apenas implantar uma função 5G em um contêiner com um endereço IP estático que seja acessível ao mundo externo. Mas se você cortar custos dessa forma, pagará um alto preço em termos de escalabilidade e flexibilidade. Você não conseguiria, por exemplo, implementar funções 5G em qualquer lugar da rede simplesmente pressionando um botão. Se você quer esse nível de automação, que será o futuro, você não pode economizar com o Kubernetes.
A F5 atua há muito tempo nos mundos das telecomunicações e da TI, e descobrimos como ajudar as empresas de telecomunicações a aproveitar os amplos benefícios do Kubernetes. Isso inclui nossa solução BIG-IP SPK , que permite uma entrada no Kubernetes para oferecer suporte a protocolos de telecomunicações, bem como HTTP. Ele também usa tradução de endereços de rede (NAT) e roteamento para permitir que uma saída do Kubernetes forneça um endereço IP estático predefinido para o mundo externo, sem afetar o dinamismo interno do cluster. Independentemente do que aconteça dentro do cluster, você sempre pode fornecer o mesmo endereço IP para entidades externas. Além disso, nossa malha de serviço Aspen Mesh oferece suporte a observabilidade e rastreamento de nível de telecomunicações. Ele pode dar às empresas de telecomunicações visibilidade e rastreamento completos do tráfego que flui entre os microsserviços 5G, reforçando assim a segurança.
Se abordado corretamente, o Kubernetes pode ser verdadeiramente transformador para as empresas de telecomunicações: ele pode desbloquear os muitos benefícios de uma arquitetura nativa da nuvem e tornar muito mais fácil para as operadoras interagirem com o mundo externo. Quando estiver totalmente adaptado ao ambiente de telecomunicações, esse sistema de código aberto certamente será parte integrante do futuro do 5G.
Este artigo é o primeiro de uma série de duas partes. Na próxima vez, exploraremos como a tecnologia F5 pode resolver a dor de cabeça operacional de gerenciar cargas de trabalho de TI e telecomunicações em um grande número de clusters Kubernetes em execução em diferentes plataformas.