Run interactive IDEs on Amazon EKS with SageMaker AI to power up your AI workflows Amazon Web Services (AWS) announced the general availability of the SageMaker AI Spaces add-on for Amazon Elastic Kubernetes Service (EKS), which lets data scientists run interactive JupyterLab and Code Editor environments directly on their existing EKS clusters. The add-on reduces the time to launch a fully configured Space from the 3–5 days typically required for a standalone JupyterHub setup to about 5 minutes, and can boost GPU utilization by up to 30 percent by consolidating interactive and training workloads. The solution integrates with AWS services including Route 53, Application Load Balancer, AWS Certificate Manager, AWS Systems Manager, AWS KMS, Amazon EBS, Amazon EFS, and Amazon FSx, and supports OIDC sign-in with Amazon Cognito. Artificial Intelligence /blogs/machine-learning/ Run interactive IDEs on Amazon EKS with SageMaker AI to power up your AI workflows To power up AI workflows on Amazon Elastic Kubernetes Service Amazon EKS /eks/ , data scientists need interactive IDEs like JupyterLab and Code Editor. Yet running those IDEs usually means leaving the cluster that hosts their pipelines, moving to a standalone JupyterHub deployment or a local laptop. That switch leaves them without the GPU nodes, shared storage, and AWS Identity and Access Management IAM /iam/ roles their pipelines depend on. The Amazon SageMaker AI /sagemaker/ Spaces add-on for Amazon EKS closes that gap. It runs managed JupyterLab and Code Editor environments on the cluster that you already operate. Standing up a standalone JupyterHub environment with GPU access, storage, and authentication typically takes a platform team 3–5 days. With the add-on, a data scientist launches a fully configured Space in about 5 minutes. In this post, you install the SageMaker AI Spaces add-on on an Amazon EKS cluster. You set up the supporting add-ons and IAM roles, deploy the AWS Load Balancer Controller https://docs.aws.amazon.com/eks/latest/userguide/aws-load-balancer-controller.html , request a TLS certificate, and create an AWS Key Management System AWS KMS encryption key. You then create your first Space and reach it through a presigned URL in the browser and from VS Code over SSH-over-SSM. Finally, you review how to move your team to OpenID Connect OIDC sign-in with Amazon Cognito. Solution overview The solution runs on a single EKS cluster in three layers: Network and access. Amazon Route 53 /route53/ resolves a wildcard domain to an internet-facing Application Load Balancer ALB with TLS from AWS Certificate Manager ACM /certificate-manager/ . For VS Code, AWS Systems Manager /systems-manager/ tunnels directly to the Space pod. Cluster routing. The AWS Load Balancer Controller https://docs.aws.amazon.com/eks/latest/userguide/aws-load-balancer-controller.html provisions the ALB. Traefik routes by hostname. Auth middleware validates tokens using AWS Key Management Service AWS KMS /kms/ for JSON Web Token JWT encryption. Compute and storage. Space pods run on private-subnet workers. The Amazon Elastic Block Store Amazon EBS /ebs/ CSI driver provides persistent volumes, and Amazon Elastic File System Amazon EFS /efs/ or Amazon FSx /fsx/ handle shared or high-throughput storage. EKS Pod Identity https://docs.aws.amazon.com/eks/latest/userguide/pod-identities.html grants pods scoped IAM roles. Consolidating interactive and training workloads on one cluster keeps GPU nodes busy between jobs. This can lift GPU utilization by up to 30 percent compared with a dedicated notebook fleet. It also avoids the cost of an always-on GPU environment, which can run into thousands of dollars a month. Prerequisites To follow along, you need an AWS account with the AWS Command Line Interface AWS CLI /cli/ 2.x or later configured for your target AWS Region, plus kubectl https://kubernetes.io/docs/tasks/tools/ 1.30 or later and Helm v3 https://helm.sh/docs/intro/install/ . You also need a Route 53 public hosted zone for a domain you own, referenced as