Visão geral
A Scalable Analytics Using Apache Druid on AWS é uma solução da AWS que permite configurar, operar e gerenciar de maneira rápida e eficiente o Apache Druid na AWS, um ambiente de hospedagem econômico, altamente disponível, resiliente e tolerante a falhas. Com essa solução, você pode usar o conjunto completo de recursos e capacidades do Apache Druid e, ao mesmo tempo, otimizar a elasticidade, a escalabilidade e os preços flexíveis das ofertas de computação e armazenamento na AWS.
Benefícios
Obtenha a flexibilidade de personalizar as instalações usando o mecanismo de computação e o armazenamento da AWS de sua escolha a partir de várias opções de instância e tecnologia sem servidor.
Especifique um provedor de identidades para autenticar usuários por meio do protocolo OpenID Connect, use o suporte pronto para uso da solução para o Lightweight Directory Access Protocol (LDAP) ou defina configurações básicas de autenticação, como nome de usuário e senha.
Use entradas de log emitidas pelo Druid em um grupo de logs centralizado do Amazon CloudWatch para facilitar as atividades de depuração e solução de problemas, configure um painel para monitorar a integridade
do cluster Druid e configure alarmes com base nas preferências do cliente.
Instale e configure essa solução com suporte nativo para carregar extensões do Druid, incluindo extensões principais e comunitárias.
Detalhes técnicos
Você pode implantar automaticamente essa arquitetura usando o guia de implementação.
Etapa 1
O AWS WAF para proteger o console web do Druid e os endpoints da API do Druid contra exploits e bots comuns da web que podem afetar a disponibilidade, comprometer a segurança ou consumir recursos excessivos. O AWS WAF é provisionado e implantado somente para clusters voltados para a Internet.
Etapa 2
Um servidor Linux com segurança reforçada (bastion host) para gerenciar o acesso aos servidores Druid em execução em uma rede privada separada de uma rede externa. Ele também pode ser usado para acessar o console web do Druid por meio do tunelamento SSH, no qual um Application Load Balancer (ALB) privado é implantado.
Etapa 3
Um ALB serve como ponto único de contato para os clientes. O balanceador de carga distribui o tráfego de entrada do aplicativo em vários servidores de consulta em várias zonas de disponibilidade.
Etapa 4
A sub-rede privada consiste no seguinte:
- Grupo mestre de ajuste de escala automático do Druid: um grupo de ajuste de escala automático contém uma série de servidores mestre Druid. Um servidor mestre gerencia a ingestão e a disponibilidade de dados e é responsável por iniciar novas tarefas de ingestão e coordenar a disponibilidade dos dados nos “Servidores de dados”. Em um servidor mestre, a funcionalidade é dividida entre dois processos: o “Coordinator” e o “Overlord”.
- Grupo de ajuste de escala automático de dados do Druid: um grupo de ajuste de escala automático contém uma coleção de servidores de dados do Druid. Um servidor de dados executa tarefas de ingestão e armazena dados que podem ser consultados. Em um servidor de dados, a funcionalidade é dividida entre dois processos: o “Historical” e o “MiddleManager”.
- Grupo de ajuste de escala automático de consulta do Druid: um grupo de ajuste de escala automático contém uma coleção de servidores de consulta do Druid. Um servidor de consultas fornece os endpoints com os quais os usuários e os aplicativos clientes interagem, roteando consultas para servidores de dados ou outros servidores de consulta. Em um servidor de consulta, a funcionalidade é dividida entre dois processos: o “Broker” e o “Router”.
- Grupo de ajuste de escala automático do ZooKeeper: um grupo de ajuste de escala automático contém uma coleção de servidores do ZooKeeper. O Apache Druid usa o Apache ZooKeeper (ZK) para gerenciar o estado atual do cluster.
Etapa 5
Um bucket do Amazon Simple Storage Service (S3) fornece armazenamento profundo para o cluster Apache Druid. Armazenamento profundo é o local onde os segmentos são armazenados.
Etapa 6
O AWS Secrets Manager armazena os segredos usados pelo Apache Druid, incluindo o segredo do Amazon Relational Database Service (RDS) e o segredo do usuário administrador. Ele também armazena as credenciais da conta do sistema que os componentes do Druid usam para se autenticarem uns com os outros.
Etapa 7
O Amazon CloudWatch oferece suporte a logs, métricas e painéis.
Etapa 8
Um banco de dados do Amazon Aurora PostgreSQL fornece o armazenamento de metadados para o cluster Apache Druid. O Druid usa o armazenamento de metadados para armazenar somente metadados sobre o sistema e não armazena os dados reais.
Etapa 9
O sistema de notificação, baseado no Amazon Simple Notification Service (Amazon SNS), envia alertas ou alarmes imediatamente quando ocorrem eventos do sistema. Isso garante conscientização e ação imediatas quando necessário.
- Data de publicação