The AWS Summit conference tour arrived in New York two weeks ago, bringing two important announcements that made AWS fans feel great. First was the general release of the Amazon Cloud Developer Kit (CDK), which enables developers to build and manage infrastructure in familiar languages like TypeScript, JavaScript, and Python. The second announcement was the launch of a new AWS service called EventBridge, which has sparked a lot of excitement in the community. Some consider EventBridge to be the best advancement in serverless technology since Lambda was introduced, while others view it as just an evolution of CloudWatch Events. Now, let’s explore EventBridge to understand what it is, the value it brings to AWS cloud, and how it can be used.
What is EventBridge?
At its core, EventBridge is a management layer coordinating events between serverless modules. It accomplishes this using an event bus with a rules driven router. For those who haven’t worked with event bus, it is a method for one component to publish an event while another component receives it without the two being directly coupled. Event bus isn’t a new concept. AWS supported this through CloudWatch Events since January 2016. In fact, EventBridge effectively is CloudWatch Events with a new label slapped on it.
How has CloudWatch Events Evolved with EventBridge?
EventBridge builds on top of CloudWatch Events using the same service API and endpoint. Essentially, CloudWatch Events has gotten called up to the big leagues. CloudWatch Events will remain as its own service in AWS, but over time the name will eventually be swapped out for EventBridge. Functionally, the underlying plumbing won’t change. Amazon used CloudWatch Events as the basis for EventBridge because it was already a fantastic option for creating a custom event bus with complex routing. It just needed to make that next leap to seamlessly connect data from SaaS providers and custom applications.
What are the Benefits of EventBridge?
This could be a game changer. If webhooks are getting scrapped in favor of a more integrated communication model, that is a welcomed change which offloads considerable work for developers. This means data is more secure as AWS handles the integration with the partner. That direct link also translates into improved speed and high availability. This decoupled pattern makes testing modules easier. Setup is also a breeze. In effect, the user configures events to be sent from the SaaS provider that are then accepted within the EventBridge console. All that is left is to establish the rules engine, informing EventBridge what gets invoked when each rule is triggered. All that happens with no coding involved.
What Partners Support EventBridge?
If there is a knock on EventBridge, it is how thin the partner list is at launch. Ten SaaS partners have signed on at this point which include:
- DataDog
- OneLogin
- PagerDuty
- Saviyant
- Segment
- SignalFx
- SugarCRM
- Symantec
- Whispir
- ZenData
The documentation on Amazon’s site says that partners can get up and running in as little as five days. If onboarding really is that easy, it begs the question why isn’t there wider adoption at this point. Surely these numbers will grow as the service matures, but it is a very curious limitation that makes it hard to declare that the revolution in serverless is here.
Any Examples of EventBridge Getting Triggered by a SaaS Partner?
PagerDuty is a real-time incident response platform. Machine data and human intelligence pair up to improve the businesses’ ability to see and respond to critical issues. When looking at how the two might work together, PagerDuty could flag an issue which sends an alert to EventBridge. EventBridge uses its rule set to invoke a Lambda function. That function would grab runbooks and throw the details back over to PagerDuty. Other examples of PagerDuty working with EventBridge might include compliance violations and security remediation.
How to Set Up a Rule in EventBridge?
As mentioned above, setup is painfully simple. Once in the EventBridge console in AWS, click the create rule button to start walking through the setup. In the example below, event pattern has been selected, but there is also the option to invoke targets on a schedule. Next, define the event matching pattern as well as the service provider (AWS, service partners or all events). If AWS is selected, there are 90 plus services available to send events to EventBridge. Don’t overlook the event pattern which selects the events and properly routes them to their targets.
That covers the ingest and filter aspects of EventBridge. Lastly, the service bus and target destination must be determined. There are fifteen targets that can be defined like Lambda functions, SNS topic, SQS queue, Kinesis stream and many others. Amazon outlines a dozen tutorials for how to get up-and-running with EventBridge like scheduling automated deployments with CodeDeploy or logging state changes to EC2 instances.
EventBridge is an exciting addition to the AWS service catalog. Having the ability to seamlessly integrate with a SaaS provider with easy setup and zero coding in a way that enhances security, performance and testing is a huge win. The only concern lies with the limited adoption by SaaS providers at this point. The ten partners represent a great start, but there needs to be more. For this to be truly transformative, there needs to be buy-in across the spectrum of SaaS providers. There are some standards in this space still being ironed out so that could definitely be limiting a wider adoption. It’s too early to say. The promise is there with EventBridge, and it should be interesting to see how things unfold around this product in the months and years to come.