<p>I have a bunch of pods and corresponding cluster IP services running in a Kubenetes cluster. I use an Ingress controller to route incoming traffic to these workloads. </p>

<p>Now, when I make an external request from within a workload, I would like those requests to go out from a static IP. </p>

<ol>
<li><p>Are both incoming and outgoing traffic handled via the same network interface?</p></li>
<li><p>How do I set a static IP for my outgoing requests from a pod</p></li>
</ol>

<p>Thanks in advance.</p>

Charlie
<p>If you're on AWS or GKE the only way to get a static outbound from an (autoscaling) node pool is via a NAT gateway. On GKE you are also required to have private nodes (no public ips). </p>

<p>Kubernetes ingress, at least in GKE, is treated separately from egress and is a different load balancer.</p>

<p><a href="https://cloud.google.com/nat/docs/gke-example" rel="nofollow noreferrer">https://cloud.google.com/nat/docs/gke-example</a></p>
