Pulumi + AWS Summit Tel Aviv

Meet Pulumi at AWS Summit Tel Aviv

May 28, 2025 | Expo Tel Aviv | Booth #B1

Visit with us to:

  • Transform your AWS Infrastructure: See how organizations automate AWS deployment with their preferred programming languages—not just YAML.
  • Accelerate Your Cloud Journey: Build, deploy, and manage cloud infrastructure faster, maintaining security and compliance.
  • Get Expert Advice: Book a 15-minute session with a Pulumi engineer to discuss your specific infrastructure challenges.
  • Take Home Swag: Exclusive Pulumi swag!

Attend the Workshop

Modern Infrastructure Automation with Pulumi and GitLab
June 11, 2025

Discover how to revolutionize cloud infrastructure management with Pulumi's enhanced GitLab integration at our June 11th workshop, where you'll learn to create automated pipelines and standardize organizational patterns.

Workload Observability with Pulumi and Honeycomb
July 17, 2025

Deliver "observability as code" with Pulumi and Honeycomb. Automate SLOs, detect critical issues, and transform your platform engineering approach.

import * as eks from "@pulumi/eks";

 // Create an EKS cluster.
 const cluster = new eks.Cluster("cluster", {
     instanceType: "t2.medium",
     desiredCapacity: 2,
     minSize: 1,
     maxSize: 2,
 });

 // Export the cluster's kubeconfig.
 export const kubeconfig = cluster.kubeconfig;
import pulumi
import pulumi_eks as eks

# Create an EKS cluster.
cluster = eks.Cluster(
    "cluster",
    instance_type="t2.medium",
    desired_capacity=2,
    min_size=1,
    max_size=2,
)

# Export the cluster's kubeconfig.
pulumi.export("kubeconfig", cluster.kubeconfig)
package main

import (
    "github.com/pulumi/pulumi-eks/sdk/go/eks/cluster"
    "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)

func main() {
    pulumi.Run(func(ctx *pulumi.Context) error {
    // Create an EKS cluster.
    cluster, err := cluster.NewCluster(ctx, "cluster",
        cluster.ClusterArgs{
            InstanceType:    pulumi.String("t2.medium"),
            DesiredCapacity: pulumi.Int(2),
            MinSize:         pulumi.Int(1),
            MaxSize:         pulumi.Int(2),
        },
    )
    if err != nil {
        return err
    }

    // Export the cluster's kubeconfig.
    ctx.Export("kubeconfig", cluster.Kubeconfig)

    return nil
    })
}
using System;
using System.Threading.Tasks;
using Pulumi;
using Pulumi.Eks.Cluster;

class EksStack : Stack
{
    public EksStack()
    {
        // Create an EKS cluster.
        var cluster = new Cluster("cluster", new ClusterArgs
        {
            InstanceType = "t2.medium",
            DesiredCapacity = 2,
            MinSize = 1,
            MaxSize = 2,
        });

        // Export the cluster's kubeconfig.
        this.Kubeconfig = cluster.Kubeconfig;
    }

    [Output("kubeconfig")]
    public Output<string> Kubeconfig { get; set; }
}

class Program
{
    static Task<int> Main(string[] args) => Deployment.RunAsync<EksStack>();
}
package com.pulumi.example.eks;

import com.pulumi.Context;
import com.pulumi.Exports;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.eks.Cluster;
import com.pulumi.eks.ClusterArgs;

import java.util.stream.Collectors;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    private static Exports stack(Context ctx) {
        var cluster = new Cluster("my-cluster", ClusterArgs.builder()
                .instanceType("t2.micro")
                .desiredCapacity(2)
                .minSize(1)
                .maxSize(2)
                .build());

        ctx.export("kubeconfig", cluster.kubeconfig());
        return ctx.exports();
    }
}
name: aws-eks
runtime: yaml
description: An EKS cluster
resources:
    cluster:
        type: eks:Cluster
        properties:
            instanceType: "t2.medium"
            desiredCapacity: 2
            minSize: 1
            maxSize: 2
outputs:
    kubeconfig: ${cluster.kubeconfig}

Pulumi + AWS: Better Together

Ship faster, secure your secrets, and enforce cloud compliance and security with Pulumi IaC (infrastructure as code), ESC (secrets management and orchestration), and Insights (cloud asset and compliance management). Our partnership with AWS offers a robust solution for complex cloud deployments, enabling you to:

Automate your AWS infrastructure with Pulumi IaC.

Build and ship infrastructure faster using languages you know and love, like TypeScript, Python, Go, C#, and Java.

Secure your cloud secrets with Pulumi ESC.

Centrally manage all your secrets and configurations. Pull and sync secrets with any secrets store. Consume in any application, tool, or CI/CD platform.

Manage your AWS resources with Pulumi Insights.

Search, compliance remediation, resource visualizations, cost optimization, and AI insights over all your AWS infrastructure.

Pulumi Templates for Common Use Cases

Pulumi templates are the fastest way to deploy infrastructure. Templates come with predefined infrastructure as code so you can get started instantly. Find some of our templates below, and Happy Templating!

Container Service Templates

Deploy a container service on AWS with Pulumi and Amazon ECS.

Kubernetes Cluster on AWS

Deploy a Kubernetes cluster on AWS with Pulumi and Amazon EKS.

Serverless Templates

Deploy a serverless application on AWS with Pulumi, AWS Lambda, and Amazon API Gateway.

Virtual Developer Communities

Connect with us. Ask questions, find answers, and share your knowledge and grow with us.

Need technical help?

Use our support portal to get in touch.

Need help getting started?

Send us a note, and someone will reach out to help you.

Want a demo?

Talk with an expert to see how Pulumi fits your use case.

Something else on your mind?

Send us a note.