Microsoft recently announced the General Availability (GA) of the Geo-replication feature for Azure Event Hubs, which are available in both Premium and Dedicated tiers, intended for redundancy and availability. The GA release follows the initial public preview release.
Azure Event Hubs is a scalable event processing service that ingests and processes large volumes of events and data, with low latency and high reliability. With the Geo-replication feature, users can replicate Event Hubs data across multiple regions, ensuring accessibility during maintenance, degradation, or outages. Moreover, it enables the seamless promotion of a secondary region to a primary one, minimizing downtime and ensuring business continuity.
Essentially, the Geo-Replication feature utilizes a primary-secondary model to replicate metadata and data. There is one active primary region serving producers and consumers, while secondary regions act as hot standbys and cannot be interacted with. They mirror the primary region’s configuration for fast promotion when needed.
(Source: Microsoft Tech Community blog post)
The documentation mentions two replication consistency configurations: synchronous and asynchronous. It’s essential to understand the differences between the two configurations, as they affect the consistency of your applications and data. Clemens Vasters, Principal Architect, Messaging and Real-Time Services, explains:
With synchronous replication, we will put a copy of the message into a quorum of the configured regions and into each zone therein before we acknowledge the message. Asynchronous replication does the same in effect, but allowing for a (configurable) lag.
In addition, Ashish Chhabria, a Principal Program Manager at Microsoft, wrote:
With geo-replication, data is replicated between primary and secondary regions with a user managed RPO (recovery point objective), including RPO=0 (synchronous replication with no data loss)!
The integrated geo-replication capability for Azure Event Hubs provides a distinct approach to redundancy across multiple regions, compared to services on other major cloud platforms. For instance, while Google Cloud Pub/Sub offers high availability within regions, cross-region redundancy often requires application-level logic to manage failover between regional instances. Similarly, AWS services like Amazon MSK (for Apache Kafka) rely on tools like MirrorMaker 2 for cross-region topic replication. Services like Amazon EventBridge or Kinesis Streams typically require customers to architect and manage multi-region setups for redundancy of event streams.
With the GA release, Microsoft also increased visibility into the health and metrics of the replicas, allowing users to monitor the status of their replicas more effectively and determine precisely when it is appropriate to promote their secondary to primary. With the added visibility, users can make informed decisions and maintain the high availability of their applications.
The pricing for Azure Event hubs is available on the pricing page, and the geo-replication charge depends on the location of the primary region.