Blog
  • AI Gateway
  • AI Security
  • AIOps
  • API Security
  • API Gateway
|
    • API Management
    • API Development
    • API Design
    • Automation
    • Service Mesh
    • Insomnia
    • View All Blogs
  1. Home
  2. Blog
  3. Engineering
  4. A Cloud Native + Infrastructure as Code Love Story
Engineering
November 17, 2021
4 min read

A Cloud Native + Infrastructure as Code Love Story

Kat Cosgrove

We love abstractions. We want to make things easier for developers, teams and end users. In doing that, sometimes we build things a little bit too complex for those who don't already understand the pain points for which the abstraction layers were built. Kubernetes is an example of this; it solves a very real, very painful problem, but it is notoriously difficult to wrap your head around. The scale of the work it does for us means that it covers so much ground that one person can't possibly have the necessary expertise to babysit every aspect.

Fortunately, an entire ecosystem has formed around Kubernetes and cloud native development. Tools upon tools, open source or commercial, have sprung up to relieve some of the pain points involved in application development today. It doesn't have to be so difficult anymore, and you may not even need to learn much to take advantage of it. These tools are built for the cloud, first and foremost, solving different problems while using skills your team probably already has.

One such tool is Kong Gateway, allowing you to manage the communications between your microservices and your clients at lightning speed. It even includes a Kubernetes Ingress Controller, using native CRDs so you can tightly control any aspect of an API gateway that you might want.

We also have ways to make infrastructure deployment faster and more familiar for developers. Pulumi is infrastructure as code. When I say infrastructure as code, I mean really code—you can stand up whatever infrastructure you want on whatever cloud provider you like. Plus, deploy your application in a language you're probably already familiar with—Python, Typescript, C#, and of course, because we're cloud native, Go.

Standing up your Kubernetes cluster on whatever cloud provider you like is relatively low impact, requiring only about 50 lines of Python code. This can even live right alongside your application code if you want. It's the way cloud engineering was meant to be done, with minimal complexity and maximum impact.

Kong and Pulumi Together

Standing up a vanilla Kubernetes cluster isn't all you want to do, though, is it? Surely you want to take advantage of some of the fancy cloud native tooling I mentioned earlier to make managing that cluster less painful and more secure? Perhaps, implementing an API gateway? Well, it turns out Pulumi and Kong work really well together. In Python, let's look at how to stand up a Kubernetes cluster on DigitalOcean and deploy Kong Ingress Controller with Pulumi!
For this, you'll need a Pulumi account and the Pulumi CLI installed. You will also need a Digital Ocean account and Pulumi set up to access Digital Ocean.

Create a new directory called kong-ingress and initialize a new Pulumi project inside of it with pulumi new python -y.
Now activate your virtual environment with source /venv/bin/activate and run pip3 install pulumi_digitalocean pulumi_kubernetes to install your dependencies. We're ready to go, and from here on out, we'll be adding code to __main__.py.

First, get our config values to define what our cluster looks like and tell Digital Ocean to use the latest version of Kubernetes.

Here, we're provisioning the cluster itself, setting up the Kubernetes provider for Pulumi and adding a namespace for better organization.

Below is all it takes to deploy Kong using a Helm chart while applying a transformation to it simultaneously. In this case, we're using a small helper function to look at the custom resource definition and remove the "status" object so that the Helm chart doesn't return it. It is also possible to deploy via config files without much more code than this.

Finally, we're getting the Kong Ingress resource that we've just deployed and exporting its ingress URL so that we know where it is.

To run this, set your config values from the terminal.

Then run pulumi up and watch! In a few minutes, you'll have a fully functional Kubernetes cluster with four nodes deployed to Digital Ocean and running a Kong Ingress Controller, all in around 60 lines of code. When you're ready to tear this down, run pulumi destroy and watch it disappear! If you want to copy and paste the running code, you can find it in this GitHub repo.

If you want to go a bit further, click here or watch the video below to learn how to use Pulumi to provision an AWS EC2 instance and configure it as an API gateway data plane for Kong Konnect!

Cloud NativeCloudAutomation

More on this topic

Videos

Lessons from Becoming Cloud Native

Videos

Enter the Next Level: Migrating to Cloud Native Platform

See Kong in action

Accelerate deployments, reduce vulnerabilities, and gain real-time visibility. 

Get a Demo
Topics
Cloud NativeCloudAutomation
Share on Social
Kat Cosgrove

Recommended posts

Terraform Your Way to the Cloud with Konnect Dedicated Cloud Gateways

Kong Logo
EngineeringApril 16, 2025

Automate Everything: Kong Gateway + API Management with Terraform Across Any Cloud Too many organizations manually manage their API gateways and policy enforcement today. As humans, we make mistakes. You’ve got one team manually configuring Kong or

Declan Keane

An Introduction to Hybrid and Multi-Cloud Connectivity

Kong Logo
Learning CenterMarch 10, 2022

As the cloud industry matures, its no longer a question of if youre in the cloud, but how many clouds youre in. Most businesses now realize that there isnt a one cloud fits all solution and have shifted towards a hybrid or multi-cloud model. Hybrid

Kong

Automating API Delivery with APIOps and Kong

Kong Logo
EngineeringJune 5, 2024

As organizations build more APIs, manual processes and frequent handoffs in the API development workflow can lead to a slower time to market, higher development costs, and poor-quality APIs. They can also result in APIs being poorly documented, caus

Ikenna Nwaiwu

8 Strategy Elements for Building Cloud Native Applications

Kong Logo
EngineeringJune 3, 2024

The cloud native paradigm for application development has evolved significantly since its inception. Today, it encompasses microservices architecture, containerized services, automation, orchestration, distributed management, and emerging technolo

Kong

Manage API Access More Seamlessly

Kong Logo
EngineeringMarch 1, 2024

The Kong Konnect team recently launched the Portal Management API , which allows users to manage their Developer Portals with one API. That means you can easily manage your portal settings, appearance, application registrations, and registration se

Ella Kuzmenko

7 Signs You Need a Service Mesh

Kong Logo
EngineeringJanuary 29, 2024

In the ever-evolving landscape of modern applications and cloud native architectures, the need for efficient, scalable, and secure communication between services is paramount. Enter the service mesh — a versatile platform designed to address various

Baptiste Collard

Kong Konnect is now available on the Google Cloud Marketplace

Kong Logo
EngineeringJanuary 8, 2024

Now you can find and purchase Kong Konnect through the Google Cloud Marketplace! Kong Konnect is the unified API platform that allows you to manage multiple gateways across service meshes, ingress, cloud, and Kubernetes providers no matter where t

Erin Choi

Ready to see Kong in action?

Get a personalized walkthrough of Kong's platform tailored to your architecture, use cases, and scale requirements.

Get a Demo
Powering the API world

Increase developer productivity, security, and performance at scale with the unified platform for API management, AI gateways, service mesh, and ingress controller.

Sign up for Kong newsletter

    • Platform
    • Kong Konnect
    • Kong Gateway
    • Kong AI Gateway
    • Kong Insomnia
    • Developer Portal
    • Gateway Manager
    • Cloud Gateway
    • Get a Demo
    • Explore More
    • Open Banking API Solutions
    • API Governance Solutions
    • Istio API Gateway Integration
    • Kubernetes API Management
    • API Gateway: Build vs Buy
    • Kong vs Postman
    • Kong vs MuleSoft
    • Kong vs Apigee
    • Documentation
    • Kong Konnect Docs
    • Kong Gateway Docs
    • Kong Mesh Docs
    • Kong AI Gateway
    • Kong Insomnia Docs
    • Kong Plugin Hub
    • Open Source
    • Kong Gateway
    • Kuma
    • Insomnia
    • Kong Community
    • Company
    • About Kong
    • Customers
    • Careers
    • Press
    • Events
    • Contact
    • Pricing
  • Terms
  • Privacy
  • Trust and Compliance
  • © Kong Inc. 2026