AWS Simplifies Enterprise Cloud with Easier SaaS Integration, App Provisioning

At last month's AWS Summit in New York, Amazon rolled features to help AWS adopters speed and extend enterprise-class cloud projects. IDN looks at Amazon EventBridge for integrating AWS apps with SaaS, and AWS Cloud Development Kit to help developers provision cloud infrastructure with popular languages.

Tags: AWS, CDK, cloud, EventBridge, infrastructure-as-code, integration, SaaS,

Among the news at last month's AWS Summit in New York, Amazon rolled out key technology offerings to help AWS adopters speed and extend their enterprise-class cloud projects

(1)  Amazon EventBridge for integrating AWS apps with SaaS, 
(2)  AWS Cloud Development Kit to help developers provision cloud infrastructure with popular languages and
(3)  Amazon CloudWatch Container Insights available in limited preview

IDN briefly reviews each, with the help of comments and perspective from AWS execs.


Amazon EventBridge Makes It Easier to Integrate AWS Apps with SaaS 

Amazon EventBridge delivers a "serverless event bus" approach to make it easier to integrate custom-coded AWS apps with cloud SaaS apps. 


Users can employ a simpler programming model by leveraging simple Lambda functions to handle events that come from a SaaS app, according to the AWS announcement. In turn, users can route events to other AWS targets.

Amazon Event Bridge

The flexibility built-in to Amazon's serverless + bus architecture offers a rich set of options. Beyond simple AWS app to SaaS integration, users can store incident or ticket data in Amazon Redshift, train a machine learning model on customer support queries, and much more.


In an AWS blog, Jeff Barr shares more about the Amazon EventBridge technologies and the user experience.  

Many AWS customers also make great use of SaaS (Software as a Service) applications. For example, they use Zendesk to manage customer service & support tickets, PagerDuty to handle incident response, and SignalFx for real-time monitoring. While these applications are quite powerful on their own, they are even more so when integrated into a customer's own systems, databases, and workflows.


In order to support this increasingly common use case, we are launching Amazon EventBridge today. Building on the powerful event processing model that forms the basis for CloudWatch Events, EventBridge makes it easy for our customers to integrate their own AWS applications with SaaS applications. The SaaS applications can be hosted anywhere, and simply publish events to an event bus that is specific to each AWS customer.


The asynchronous, event-based model is fast, clean, and easy to use. The publisher (SaaS application) and the consumer (code running on AWS) are completely decoupled, and are not dependent on a shared communication protocol, runtime environment, or programming language. You can use simple Lambda functions to handle events that come from a SaaS application, and you can also route events to a wide variety of other AWS targets. You can store incident or ticket data in Amazon Redshift, train a machine learning model on customer support queries, and much more.


Everything that you already know (and hopefully love) about CloudWatch Events continues to apply, with one important change.


In addition to the existing default event bus that accepts events from AWS services, calls to PutEvents, and from other authorized accounts, each partner application that you subscribe to will also create an event source that you can then associate with an event bus in your AWS account. You can select any of your event buses, create EventBridge Rules, and select Targets to invoke when an incoming event matches a rule.

AWS Cloud Development Kit Helps Developers Define Cloud Infrastructure in Code

Amazon also released AWS Cloud Development Kit (CDK) to general availability (GA) with support for TypeScript and Python. AWS CDK aims to make it easier for developers to use high-level construct to define cloud infrastructure in code.


The AWS Cloud Development Kit (AWS CDK) is an open source software development framework to model and provision your cloud application resources using familiar programming languages. AWS CDK for TypeScript and Python is generally available.


Provisioning cloud apps can be a challenging process that requires [users] to perform manual actions, write custom scripts, maintain templates, or learn domain-specific languages. AWS CDK tackles many of these challenges by leveraging the familiarity and expressive power of programming languages for modeling apps.


Amazon highlighted several top AWS CDK features and benefits. Among them:


For faster app development, it provides the expressive power of programming languages for defining infrastructure. Familiar elements such as objects, loops, and conditions accelerate the development process. AWS CDK can be used alongside popular IDEs.


AWS CDK provides easier and faster cloud onboarding through the use of high-level components.  In turn, these serve to preconfigure cloud resources so that developers build cloud apps without the need for deep expertise.


Notably, AWS CDK lets users:

  • Design customizable, reusable components that meet their organization's security, compliance and governance requirements.  
  • Provision resources in a safe, repeatable manner through AWS CloudFormation.
  • Compose and share their custom components that incorporate an organization's requirements to help start new projects faster.


AWS CDK could be a game-changer, as companies face a limited talent pool when it comes to working on cloud projects. AWS evangelist Danilo Poccia said in his blog post:

Configuration files used to manage your infrastructure are traditionally implemented as YAML or JSON text files, but in this way,  you're missing most of the advantages of modern programming languages. Specifically with YAML, it can be very difficult to detect a file truncated while transferring to another system, or a missing line when copying and pasting from one template to another.


Wouldn't it be better if you could use the expressive power of your favorite programming language to define your cloud infrastructure? For this reason, we introduced last year in developer preview the AWS Cloud Development Kit (CDK), an extensible open-source software development framework to model and provision your cloud infrastructure using familiar programming languages.

Poccia went on to describe how AWS CDK was designed to make it faster and easier to reap benefits from an 'Infrastructure as Code' approach to working with the cloud. 

Managing your Infrastructure as Code provides great benefits and is often a stepping stone for a successful application of DevOps practices. In this way, instead of relying on manually performed steps, both administrators and developers can automate provisioning of compute, storage, network, and application services required by their applications using configuration files.

Poccia also enumerated several crucial benefits that come with defining enterprise infrastructure as code. Working with IoC makes it possible to:

  • Keep infrastructure and application code in the same repository
  • Make infrastructure changes repeatable and predictable across different environments, AWS accounts, and AWS regions
  • Replicate production in a staging environment to enable continuous testing
  • Replicate production in a performance test environment that you use just for the time required to run a stress test
  • Release infrastructure changes using the same tools as code changes, so that deployments include infrastructure updates Apply software development best practices to infrastructure management, such as code reviews, or deploying small changes frequently


He described the payoff from using AWS CDK this way:

"[B]y using the AWS CDK, you can build your application, including the infrastructure, in your IDE, using the same programming language and with the support of autocompletion and parameter suggestion that modern IDEs have built in, without having to do a mental switch between one tool, or technology, and another. The AWS CDK makes it really fun to quickly code up your AWS infrastructure, configure it, and tie it together with your application code.

Amazon CloudWatch Container Insights Available in Limited Preview

Amazon also announced the Amazon CloudWatch Container Insights, which provides automated dashboards to summarize the performance and health of Amazon Elastic Container Service for Kubernetes (EKS). It also reveals data about Kubernetes clusters -- by pod, node, namespace, and services. 


With Amazon CloudWatch Container Insights for Amazon EKS and Kubernetes, users can monitor, isolate, and diagnose containerized applications and microservices environments. Users can collect detailed performance metrics, logs, and meta-data from containers and clusters in just a few clicks.


Amazon CloudWatch Container Insights is available in limited regions only for preview.