Open Source on AWS: Stories from the Zone at re:Invent
LAS VEGAS — The cacophony of AWS re:Invent comes from 60,000 people intending to go where the energy emanates. And for many, that’s the exhibition floor. Their reasons vary for attending. Many come with their brownfield projects in mind, while others find their limits with traditional legacy approaches and look for cloud native technologies for answers.
In the mix is a curiosity about AI app development. Many already use AWS Lambda and want to learn how to accelerate serverless development. Some talk about trying to understand data with traditional tools but want to know more about modern approaches and how AI is applied.
Developers and platform engineers express curiosity about how they may improve developer productivity and address the complexity of modern architectures and bespoke systems.
And through it all, open source is a foundation and way to integrate tools with AWS resources.
AWS set up a Modern Applications and Open Source Zone in the Developer Solutions Area at re:Invent this year. To answer questions and show demos, AWS engineers and well-known technologists discussed open source projects, new tools, AI technologies, and help for those trying to make sense of application modernization approaches and the role of AI as an additive technology. AWS hosted dozens of demos and even a party celebrating the fifth anniversary of Amazon Elastic Kubernetes Service (Amazon EKS).
Hitting the Ceiling
Liz-Fong Jones, an AWS Hero, and field CTO for Honeycomb.io, sets the stage. She showed OpenTelemetry, the open source telemetry technology. OpenTelemetry provides a standard for collecting data, modeling data and bringing together different data sources.
AWS provides support for OpenTelemetry, an example of how open source integrations work with AWS resources. Fong-Jones said that customers get standard naming of the properties associated, for example, with the taxonomy of an AWS instance versus a Lambda function.
“All these things have to be named because they are relevant metadata for doing correlations with the back end,” said Fong-Jones.
Other examples relate to just making sure things work together and coordinate.
Most attendees have brownfield projects, and in some respects, they have hit their limits for what’s possible with their older solution — for example, with application product monitoring (APMs).
These people are looking for a new standard that is forward-compatible, Fong-Jones said. They want to know what architectural decisions to make that will serve as a good bet for the next five years and help them get to the next level.
AI, Serverless, and Prompt Chaining
“We’re getting people that are discovering new sorts of serverless development for the first time,” said Tanya Boiteau, a principal product manager at AWS.
A stream of people walk through the demo space and stop to watch Boiteau’s demo of AWS Step Functions, an orchestration platform that uses a visual workflow consisting of a series of steps that call an API, process data, do error handling, and manage state, parallelization and more.
Boiteau demonstrated how Step Functions integrates with Amazon Bedrock, the platform that offers a network of foundation models, launched in October. Step Functions orchestrate with Bedrock APIs such as InvokeModel, which invokes requests to generative AI models in Bedrock.
With Step Functions comes automation for prompt chaining, so that the output of one model gets piped into the subsequent request, Boiteau said. Logging’s importance becomes evident. By logging inputs and outputs, the developer receives better transparency.
Using a serverless model with Lambda allows for the service to scale elastically, meaning developers only pay for what they use.
“We’re getting people that are discovering serverless development for the first time, especially with Step Functions and taking advantage of it in the context of GenAI,” Boiteau said. “It provides them a way to use services like Bedrock as part of what they’re thinking about doing.”
Beyond Plain Kubernetes
Isovalent’s Liz Rice, also an AWS Hero, showed Cillium, an open source networking technology for Kubernetes. Many people coming by the AWS Modern Applications and Open Source Zone have already adopted or have decided to adopt Kubernetes. Some come by to explore their networking options or want to know more about what they can do with Cillium.
Many use legacy services and need to seamlessly connect the old world with the new, connected, external workloads, said Rice, who works as Isovalent’s chief open source officer.
An increasing number of organizations have their Kubernetes services running, and now they’re looking at the bigger picture for adding components.
For example, they may also want observability and the security features that Cillium offers. The Cillium project graduated from the Cloud Native Computing Foundation. It’s integrated into EKS from AWS by default.
Engineers often face security problems, Rice said. Features such as network policy give people a sense of what they can do. She showed a diagram that displayed a pod and correlating data such as load information, the individual processes and the hierarchy.
“So we can do things like, ‘Oh, this looks like a dodgy domain,'” Rice said. “We can see what was the process that originated at that connection, what was the whole hierarchy? What is running inside this node? Maybe this is a compromised node package or something?”
Powertools for Lambda
Graca said that AWS opened sourced Powertools about four years ago, starting with Python. He said that people coming by the AWS booth often have already begun using Lambda but now want something more.
Many people watching the demo for Powertools showed interest in event handlers, which allow the developer to handle multiple endpoints in a Lambda function.
If you’re coming from traditional web development using Python, developers will be familiar with Flask, cross APIs, and libraries that give you endpoints that you can use.
“They don’t have that in Lambda, but with Powertools with event handler, you can add those same concepts and have multiple endpoints inside just one Lambda,” he said.
More experienced developers are familiar with Flask, the Python web framework. Flask reflects what the more advanced developer needs — a framework with the tools, libraries and technologies that allow developers to build web applications.
Having a Lambda for each endpoint gets cumbersome. The developer may manage multiple endpoints. If the developer migrates from Flask, much work goes into splitting the code into various Lambdas.
“So that’s where it shines,” Graca said about Powertools. “You can have just one Lambda, one file or multiple files. You just call the Lambda with the HTTP verbs you want and you get the response.”
People who understand the issues of using serverless technologies know the pain of observability. They want to know how to troubleshoot and how to do logging. They work on teams with real-world production scenarios. It’s these developers who see the value of event handlers.
For example, Graca said, people from startups strive to get to market fast. They want to scale first. So they start building quickly, not thinking of best practices or how they scale. But when building a team, they start thinking about team development and topology. Is it failing in production? What’s the time to recover from failure? How many items get added to a shopping cart?
And that enters them into the Powertools approach and its built-in best practices for observability: tracing, logging and metrics.
Graph Data, Anyone?
“So we have a lot of customers that are data analysts that are new to graph and they don’t know how to write graph queries for a running database,” said Taylor Riggan, a senior graph architect at Amazon Neptune, who demonstrated Graph Explorer, an open source “low-code visual exploration tool for graph data.”
These same people want to leverage the insights they get by interacting with the graph and traversing it. Graph Explorer allows for interactions with the graph and makes connections without the laborious task of manually doing it through complex queries.
“Fraud detection is a big one – security graphs,” said Kelvin Lawrence, a senior principal architect at AWS focused on Amazon Neptune. “So looking at your entire IT network or your cloud-based infrastructure, and trying to find the gaps in security posture across things like IAM roles in security groups. Customer 360s are big ones – taking data from different data silos and stitching it together to get greater insights across an organization’s customer base.”
Both data analysts and engineers came by the AWS Open Source Zone with questions. It’s why AWS built two separate tools: graph exporters for the analysts, and integration with Jupyter Notebooks that allows developers to write graph queries and get a visualization of the outputs from the notebook.
Using connected data with relational databases gets complex very fast with queries that have to make connections. They often draw circles and lines to display the connections.
The graph query languages stand out by quickly traversing networks. For instance: for a bank to find a bad actor, using a relational database may take 10 to 20 hops, making it considerably complex. With a graph database, the analyst can ask who is connected to the bad actor — which then, ideally, shows the network connections and finds who is committing the fraud a lot faster.
Application modernization with cloud native technologies sits on a foundation of open source technologies. The integrations allow for full use of AWS resources. And with AI? It’s additive to application development and will only quicken how developers build with serverless approaches.