Running Agents on Kubernetes with Agent Sandbox
Containers

Running Agents on Kubernetes with Agent Sandbox

March 30, 2026 4 min read Source: rss:Kubernetes Blog

Running Agents Safely on Kubernetes with Agent Sandbox

AI agents are transforming how we automate tasks in Kubernetes clusters. But running untrusted code brings serious security risks. Agent Sandbox solves this problem by creating isolated environments for agent execution.

This new approach lets you deploy AI agents without compromising cluster security. You get the power of automation with enterprise-grade isolation.

What is Agent Sandbox?

Agent Sandbox is a Kubernetes-native solution for running AI agents securely. It creates isolated execution environments that prevent agents from accessing sensitive cluster resources.

The system uses multiple layers of security. These include network isolation, resource limits, and restricted API access.

Think of it as a secure container within your container. Your agents can run their code without touching critical infrastructure.

Key Security Features

Agent Sandbox provides several critical security mechanisms:

Network Isolation: Agents run in separate network namespaces. They can't communicate with other pods unless explicitly allowed.

Resource Constraints: CPU, memory, and storage limits prevent resource exhaustion attacks. No single agent can consume all cluster resources.

API Restrictions: Agents get limited Kubernetes API access. They can only interact with approved resources and namespaces.

Filesystem Isolation: Each agent gets its own isolated filesystem. No access to host directories or other containers.

Setting Up Agent Sandbox

Installing Agent Sandbox requires kubectl access and cluster admin permissions. The setup process involves deploying custom resource definitions and controllers.

First, install the Agent Sandbox operator:


kubectl apply -f https://github.com/kubernetes/agent-sandbox/releases/latest/download/agent-sandbox.yaml

Verify the installation:


kubectl get pods -n agent-sandbox-system
kubectl get crd | grep agent-sandbox

The operator should be running and CRDs should be registered.

Creating Your First Sandboxed Agent

Define an agent using the AgentSandbox custom resource. Here's a basic example:


apiVersion: agents.k8s.io/v1alpha1
kind: AgentSandbox
metadata:
  name: data-processor
  namespace: agents
spec:
  image: my-registry/data-agent:v1.0
  resources:
    limits:
      cpu: "500m"
      memory: "512Mi"
  networkPolicy:
    allowEgress:
      - to:
        - namespaceSelector:
            matchLabels:
              name: data-sources
  permissions:
    - apiGroups: [""]
      resources: ["configmaps"]
      verbs: ["get", "list"]

Apply the configuration:


kubectl apply -f agent-sandbox.yaml

This creates an isolated environment for your agent with specific resource limits and permissions.

Network Security Configuration

Network policies are crucial for agent security. They control which services your agents can access.

Restricting Outbound Traffic


spec:
  networkPolicy:
    allowEgress:
      - to:
        - podSelector:
            matchLabels:
              app: database
        ports:
        - protocol: TCP
          port: 5432
      - to: []
        ports:
        - protocol: TCP
          port: 443  # HTTPS only

This configuration allows database access and HTTPS traffic only. All other network access is blocked.

Preventing Internal Communication

By default, agents cannot communicate with each other. This prevents lateral movement if one agent is compromised.

You can explicitly allow communication when needed:


spec:
  networkPolicy:
    allowIngress:
      - from:
        - podSelector:
            matchLabels:
              role: coordinator

Resource Management Best Practices

Proper resource management prevents agents from impacting cluster performance. Set conservative limits initially.

CPU and Memory Limits


spec:
  resources:
    requests:
      cpu: "100m"
      memory: "128Mi"
    limits:
      cpu: "500m"
      memory: "512Mi"

Start with small requests and reasonable limits. Monitor usage and adjust as needed.

Storage Constraints

Limit temporary storage to prevent disk exhaustion:


spec:
  resources:
    limits:
      ephemeral-storage: "1Gi"

This prevents agents from filling up node storage with temporary files.

Monitoring and Observability

Agent Sandbox integrates with standard Kubernetes monitoring tools. Use these metrics to track agent behavior.

Key metrics to monitor:

Set up alerts for unusual behavior:


kubectl get events --field-selector involvedObject.kind=AgentSandbox
kubectl logs -l app=agent-sandbox-controller -n agent-sandbox-system

Common Pitfalls and Solutions

Overly Restrictive Permissions: Agents fail because they lack necessary API access. Start with minimal permissions and add as needed.

Network Connectivity Issues: Agents can't reach required services. Review network policies and DNS configuration.

Resource Starvation: Agents hit resource limits and crash. Monitor usage patterns and adjust limits accordingly.

Image Security: Using untrusted container images. Scan images for vulnerabilities before deployment.

Real-World Use Cases

CI/CD Automation: Run build and deployment agents safely in production clusters. Isolate them from sensitive workloads.

Data Processing: Execute data transformation agents without exposing databases or storage systems.

Monitoring Agents: Deploy custom monitoring solutions that can't access critical infrastructure.

ML Model Serving: Run inference agents with controlled access to model storage and APIs.

Key Takeaways

Agent Sandbox brings enterprise security to AI agent deployment on Kubernetes. The isolation mechanisms protect your cluster while enabling powerful automation.

Start with restrictive policies and gradually expand permissions. Monitor agent behavior continuously and adjust security policies based on actual usage patterns.

The combination of network isolation, resource limits, and API restrictions provides defense in depth. This multi-layered approach ensures agents remain contained even if individual security measures fail.

Remember that security is an ongoing process. Regularly review and update your agent configurations as requirements evolve.