Todos os produtos
Search
Central de documentação

Container Service for Kubernetes:Acelere o acesso a dados em computação em nuvem serverless

Última atualização: Jun 27, 2026

Uma plataforma serverless oferece elasticidade extremamente alta, mas impõe grandes desafios à infraestrutura. A Alibaba Cloud fornece uma solução que combina o Container Service for Kubernetes (ACK) com outros serviços de nuvem para otimizar o acesso a dados com base no Elastic Container Instance. Este tópico descreve os desafios do acesso a dados na computação em nuvem serverless e a solução para superá-los.

Desafios do acesso a dados em computação em nuvem serverless

Uma plataforma serverless oferece recursos de dimensionamento que ajustam rapidamente os recursos ou as cargas de trabalho das aplicações. Após o início do scale-out de uma aplicação, bastam alguns segundos para que ela esteja pronta para uso. Os recursos de computação são dimensionados em poucos segundos ou até milissegundos. Consequentemente, a infraestrutura enfrenta grandes desafios. Os recursos de armazenamento são os mais utilizados. Se o throughput de IO de um sistema de armazenamento não acompanhar a taxa de atividades de dimensionamento de instâncias, o sistema não conseguirá atender aos requisitos de dimensionamento em segundos. Por exemplo, o sistema pode dimensionar instâncias de contêiner em dois segundos, mas precisar de dezenas de segundos ou até vários minutos para baixar dados do sistema de armazenamento.

A conteinerização serverless impõe os seguintes requisitos aos sistemas de armazenamento tradicionais:

  • Acesso de alta concorrência: Os recursos de computação servem apenas para processar dados, enquanto o armazenamento fica no sistema de armazenamento. Isso aumenta a sobrecarga de acesso a dados em cenários de alta concorrência, afeta a estabilidade do sistema e eleva o uso de largura de banda.

  • Baixa latência de rede: Uma arquitetura que desacopla computação e armazenamento aumenta a latência no acesso aos dados de negócios.

  • Throughput de IO elástico: Em sistemas tradicionais, a largura de banda de armazenamento aumenta conforme a capacidade. Um grande volume de acessos simultâneos por contêineres pode causar limitação (throttling) e gerar conflitos entre os recursos elásticos de computação e a largura de banda de armazenamento.

Solução para otimizar o acesso a dados

Para oferecer melhor suporte à computação em nuvem serverless, a equipe do ACK colaborou com as equipes de software básico e sistema operacional, Elastic Container Instance e Data Lake para fornecer uma solução de otimização de acesso a dados baseada no Elastic Container Instance. Essa solução segue as regras abaixo:

  • Cumpre padrões existentes para garantir uma experiência de usuário consistente. Por exemplo, Sidecar e Device Plugin no Kubernetes são usados como padrões para expor APIs e interfaces de usuário.

  • Oferece suporte a controle granular de privilégios Linux.

  • Sincroniza atualizações de kernel e da camada inferior provenientes do Kubernetes open source. Todo o design mantém consistência com o Kubernetes open source.

A arquitetura usada pelo Fluid na computação em nuvem serverless é composta pelo plano de dados e pelo plano de controle.

image
  • Plano de dados: Contêineres FUSE correspondentes a diferentes runtimes formam o plano de dados. Esses contêineres são implantados junto com as aplicações como contêineres sidecar. O sidecar gerencia o acesso a dados relacionado às aplicações.

  • Plano de controle: Composto pelo injector, pelo controlador de runtime de cache e pelo controlador de aplicação.

    • Injector: Transforma as informações de acesso a dados e de implementação de runtime em um formato legível pelo Sidecar e injeta essas informações nas aplicações. Também controla a ordem de inicialização dos contêineres de uma carga de trabalho, que pode ser um pod ou uma carga de computação de IA/big data, como Spark Job, TensorFlow Job ou MPI Job.

    • Controlador de runtime de cache: Gerencia a elasticidade dos caches de dados com base no throughput do FUSE Sidecar e também controla as permissões de acesso a dados.

    • Controlador de aplicação: Encerra os contêineres FUSE em um pod quando os contêineres de um batch Job, TensorFlow Job ou Spark Job no mesmo pod são finalizados.