Skip to main content
This page explains how to expose Pods running on CoreWeave Kubernetes Service (CKS) to the public Internet by creating a LoadBalancer Service. Use this approach when you need workloads in your cluster to be reachable from outside the cluster over a public IPv4 address, and optionally a public DNS name. One way to expose Pods on CKS to the public Internet is to use a LoadBalancer Service. These Services expose Pods to the Internet through public IPv4 addresses. You can also assign public DNS names to them.

Create a Load Balancer Service

To expose your Pods, you must create a LoadBalancer Service manifest and deploy it to your cluster. The following sections walk through each part of that process.

Create the manifest

To create a Service of type: LoadBalancer, deploy a Service manifest onto CKS. The following sample manifest defines a LoadBalancer Service that exposes an sshd Pod on port 22:
loadbalancer-example.yaml
apiVersion: v1
kind: Service
metadata:
  annotations:
    service.beta.kubernetes.io/coreweave-load-balancer-type: public
  name: example-sshd
spec:
  type: LoadBalancer
  externalTrafficPolicy: Local
  ports:
    - name: sshd
      port: 22
      protocol: TCP
      targetPort: sshd
  selector:
    app.kubernetes.io/name: sshd
In the preceding example:
  • The Service (example-sshd) is configured as type: LoadBalancer.
  • The coreweave-load-balancer-type annotation is public.
This creates a publicly accessible Load Balancer Service.
The address assigned to the Service is the next available address from CoreWeave’s default egress IP addresses for each Region.

Deploy the manifest

After you save the manifest, apply it to your cluster so that CKS provisions the Load Balancer. Apply the manifest with kubectl. For example:
kubectl apply -f example-sshd.yaml

Locate the IPv4 address

After you deploy the Service, you need its assigned public IPv4 address to reach the Pods from outside the cluster. After you apply the manifest, use describe to see the deployed Service. For example:
kubectl describe services example-sshd
Find the assigned public IPv4 address under the LoadBalancer Ingress field. With this address, the Pods that the Service selects are now reachable from the public Internet on the ports that the manifest defines.
For more information, see the official Kubernetes documentation.
Last modified on May 29, 2026