Skip to content

Argo Events

Argo Events

Introduction

Argo Events provides a Kubernetes-native event-driven automation framework.

In this setup, it is used to trigger workflows based on events generated by Redis.

This section explores the key components of Argo Events: the Jetstream event bus, the Redis event source, and the event sensor that drives the execution of the water bodies detection pipeline.

Key Features of Argo Events

  • Event-Driven Execution: Automates workflows in response to real-time events.
  • Scalable Architecture: Decouples event sources from workflow execution.
  • Modularity: Supports multiple event sources, including HTTP, Redis, and more.
  • Native Integration: Seamlessly integrates with Argo Workflows to trigger pipelines.

Components of Argo Events

  1. Event Bus

The event bus serves as the messaging backbone, enabling communication between event sources and sensors. In this setup, a Jetstream event bus is used for reliable, high-performance event delivery.

Why Jetstream?

  • High throughput and reliability.
  • Built-in message persistence for fault tolerance.

  • Event Source

The event source monitors Redis for changes and forwards relevant events to the event bus.

Redis simulates incoming events by querying a STAC endpoint and publishing results.

Key Features:

  • Channel-Based Filtering: Listens to specific channels for relevant events.
  • Secure Connections: Supports secret-based password authentication.

  • Event Sensor

The event sensor listens for events on the Jetstream event bus and triggers the execution of workflows when criteria are met.

Key Features:

  • Dependencies: Defines the event source and type to listen for.
  • Trigger Templates: Configures the workflow to be executed upon an event.

Event Flow

  1. Event Generation:

Redis generates events by querying a STAC endpoint for new geospatial data.

Events are published to the stac-events channel.

  1. Event Source Handling:

The Redis event source monitors the stac-events channel and forwards messages to the Jetstream event bus.

  1. Sensor Activation:

The sensor listens to the Jetstream event bus.

Upon receiving an event, it triggers the water-bodies-detection workflow.

  1. Workflow Execution:

Argo Workflows orchestrates the pipeline to process geospatial data and detect water bodies.

Why Use Argo Events?

  • Seamless Workflow Triggers: Effortlessly connects events with workflows.
  • Flexibility: Supports various event sources, making it adaptable to different scenarios.
  • Scalability: Can handle high event throughput with minimal latency.
  • Kubernetes-Native: Fully integrates with Kubernetes for a unified ecosystem.