Grade de Eventos no Kubernetes com o Azure Arc (Versão Prévia) – visão geral

Este artigo fornece uma visão geral da Grade de Eventos no Kubernetes, os casos de uso para seu uso, os recursos que oferece e como ela difere da Grade de Eventos do Azure.

Importante

A Grade de Eventos no Kubernetes com Azure Arc está atualmente em versão prévia pública. Essa versão prévia é fornecida sem um contrato de nível de serviço e não é recomendada para cargas de trabalho de produção. Alguns recursos podem não ter suporte ou podem ter restrição de recursos. Para obter mais informações, consulte Termos de Uso Complementares de Versões Prévias do Microsoft Azure.

O que é Grade de Eventos?

A Grade de Eventos é um agente de eventos usado para integrar cargas de trabalho que usam arquiteturas controladas por eventos. Uma arquitetura controlada por eventos usa eventos para comunicar ocorrências em alterações de estado do sistema e é uma abordagem de integração comum em arquiteturas separadas, como aquelas que usam microsserviços. O Grade de Eventos oferece um pub-sub, que também é descrito como um modelo de comunicação push-push, em que os assinantes recebem eventos (enviados por push) e esses assinantes não estão necessariamente cientes do editor que está enviando os eventos. Esse modelo contrasta com os modelos push-pull clássicos, como os usados pelo Barramento de Serviços do Azure ou pelos Hubs de Eventos do Azure, em que os clientes efetuam pull mensagens dos corretores de mensagens e, como consequência, há um acoplamento mais forte entre os corretores de mensagens e os clientes consumidores.

O Grade de Eventos é oferecido em duas edições: Grade de Eventos do Azure, um serviço PaaS totalmente gerenciado no Azure e o Grade de Eventos no Kubernetes com o Azure Arc, que permite que você use o Grade de Eventos no seu cluster do Kubernetes onde quer que seja implantado, no local ou na nuvem.

Para maior clareza, neste artigo, usamos o termo Grade de Eventos ao fazer referência às funcionalidades gerais do serviço, independentemente da edição usada. Nos referimos à Grade de Eventos do Azure para fazer referência ao serviço gerenciado hospedado no Azure. Para concisão, também nos referimos à Grade de Eventos no Kubernetes com o Azure Arc como Grade de Eventos no Kubernetes.

Independentemente da edição do Grade de Eventos que você utiliza, há um fornecedor de eventos que envia eventos para o Grade de Eventos e um ou mais assinantes de eventos que expõem os pontos de extremidade onde eles recebem os eventos entregues pelo Grade de Eventos. Nem todos os eventos publicados na Grade de Eventos precisam ser entregues a todos os assinantes de eventos. A Grade de Eventos permite que você selecione os eventos que devem ser roteados para destinos específicos através de um conjunto de definições de configuração definidas em uma assinatura de evento. Você pode usar filtros em assinaturas de evento para rotear eventos específicos para um ponto de extremidade ou multicast para vários pontos de extremidades. A Grade de Eventos oferece um mecanismo de entrega confiável que também possui lógica de repetição. A Grade de Eventos também é baseada em padrões abertos e dá suporte à especificação do esquema de Eventos de Nuvem 1.0.

Grade de Eventos no Kubernetes com o Azure Arc

A Grade de Eventos no Kubernetes com o Azure Arc é uma oferta que permite que você execute a Grade de Eventos em seu próprio cluster do Kubernetes. Essa funcionalidade é habilitada pelo uso do Kubernetes habilitado para Azure Arc. Por meio do Kubernetes habilitado para Azure Arc, um cluster do Kubernetes compatível se conecta ao Azure. Depois de conectado, você poderá instalar o Grade de Eventos nele.

Caso de uso

A Grade de Eventos no Kubernetes dá suporte a vários cenários de integração controlados por eventos. No entanto, o cenário principal completo com suporte e expresso como uma história de usuário é:

"Como proprietário de um sistema implantado em um cluster do Kubernetes, gostaria de comunicar as alterações de estado do meu sistema publicando eventos e configurando o roteamento desses eventos para que os manipuladores de eventos, sob meu controle ou de outra forma, possam processar os eventos do meu sistema da maneira que eles julgarem adequada."

Recurso que ajuda você a cumprir o requisito acima: Tópicos do Grade de Eventos.

Visão rápida da Grade de Eventos no Kubernetes

Da perspectiva do usuário, a Grade de Eventos no Kubernetes é composta pelos seguintes recursos em azul:

Recursos

  • Um tópico é um tipo de canal de entrada que expõe um ponto de extremidade ao qual os publicadores enviam eventos para a Grade de Eventos.
  • Uma assinatura de evento é um recurso que contém definições de configuração para filtrar e rotear eventos para um destino no qual os eventos são entregues.
  • Um evento é o anúncio da alteração de estado.
  • Um manipulador de eventos é um aplicativo ou serviço que recebe os eventos e reage ou processa os eventos de alguma maneira. Às vezes, também nos referimos a manipuladores de eventos como assinantes de eventos. No diagrama, os manipuladores de eventos são a API implantada em um cluster do Kubernetes (K8s) e o serviço Barramento de Serviço do Azure.

Para saber mais sobre esses conceitos, confira Conceitos na Grade de Eventos do Azure.

Amostra de cenários e destinos de integração de carga de trabalho

Você pode integrar cargas de trabalho em execução no cluster. Seu editor pode ser qualquer serviço em execução no cluster do Kubernetes ou qualquer carga de trabalho que tenha acesso ao ponto de extremidade do tópico (hospedado pelo agente da Grade de Eventos) ao qual o editor envia eventos.

Integração interna do cluster

Você também pode ter um publicador implantado em outro lugar na rede que envia eventos para a Grade de Eventos implantada em um dos clusters do Kubernetes:

Integração na rede

Com a Grade de Eventos no Kubernetes, você pode encaminhar eventos para o Azure para processamento, armazenamento ou visualização adicionais:

Encaminhar eventos para o Azure

Destinos

Os destinos do manipulador de eventos podem ser qualquer ponto de extremidade HTTPS ou HTTP ao qual a Grade de Eventos pode acessar a rede, pública ou privada, e ter acesso (não protegido com algum mecanismo de autenticação). Você define destinos de entrega de eventos ao criar uma assinatura de evento. Para obter mais informações, confira manipuladores de eventos.

Recursos

O Grade de Eventos no Kubernetes suporta tópicos do Grade de Eventos, que é um recurso também oferecido pelo Grade de Eventos do Azure. Os tópicos da Grade de Eventos ajudam você a perceber o caso de uso de integração principal em que seus requisitos chamam para integrar seu sistema a outra carga de trabalho que você possui ou, de outra forma, fica acessível ao seu sistema.

Alguns dos recursos que você obtém com a Grade de Eventos do Azure no Kubernetes são:

  • Filtragem de eventos : filtre com tipo de evento, assunto do evento ou data do evento para garantir que os manipuladores de eventos recebam apenas eventos relevantes.
  • Fan-out: assine vários pontos de extremidade no mesmo evento para enviar cópias do evento para diversos locais.
  • Com base em padrões em aberto: defina seus eventos usando a especificação de esquema de Eventos de Nuvem 1.0 do CNCF.
  • Confiabilidade: a Grade de Eventos apresenta uma lógica de entrega de eventos de repetição que garante que os eventos chegarão ao destino.

Para obter mais informações, consulte recursos com suporte na Grade de Eventos no Kubernetes.

Preços

A Grade de Eventos no Kubernetes com o Azure Arc é oferecida sem encargos durante sua versão prévia.

Próximas etapas

Siga estas etapas na ordem para iniciar eventos de roteamento usando a Grade de Eventos no Kubernetes.

  1. Conecte seu cluster ao Azure Arc.
  2. Instale uma extensão da Grade de Eventos, que é o recurso real que implanta a Grade de Eventos em um cluster do Kubernetes. Para saber mais sobre a extensão, consulte a seção Extensão da Grade de Eventos.
  3. Crie um local personalizado. Um local personalizado representa um namespace no cluster, é o local em que os tópicos e as assinaturas de evento são implantados.
  4. Crie um tópico e uma ou mais assinaturas de eventos.
  5. Publique eventos.

Aqui estão mais recursos que você pode usar: