<p>I am a bit new to Kubernetes and I am working with EKS.
I have two main apps for which there is a number of pods and I have set up a ELB for external access.</p>
<p>I also have a small app with say 1-2 pods. I don't want to set up a ELB just for this small app. I checked the node port, but in that case, I can't use the default HTTPS port 443.</p>
<p>So I feel the best thing to do in this case would be to bring the small app outside the cluster, then maybe set it up in a EC2 instance. Or is there some other way to expose the small app while keeping it inside the cluster itself?</p>

<p>You can try to use the <strong>Host network</strong> (Node) like <strong>hostport</strong> (Not recommended in k8s to use in prod)</p>
<pre><code>apiVersion: v1
kind: Pod
metadata:
  name: nginx
spec:
  containers:
    - name: nginx
      image: nginx
      ports:
        - containerPort: 80
          hostPort: 443
</code></pre>
<blockquote>
<p>The hostPort feature allows to expose a single container port on the
host IP. Using the hostPort to expose an application to the outside of
the Kubernetes cluster has the same drawbacks as the hostNetwork
approach discussed in the previous section. The host IP can change
when the container is restarted, two containers using the same
hostPort cannot be scheduled on the same node and the usage of the
hostPort is considered a privileged operation on OpenShift.</p>
</blockquote>
<p><strong>Extra</strong></p>
<blockquote>
<p>I don't want to set up a elb just for this small app.</p>
</blockquote>
<p>Ideally, you have to use the deployments with the ingress and ingress controller. So there will be <strong>single ELB</strong> for the <strong>whole EKS</strong> cluster and all services will be using that single point.</p>
<p>All PODs or deployment will be running into a single cluster if you want. Single point <strong>ingress</strong> will work as handling the traffic into EKS cluster.</p>
<p><a href="https://i.stack.imgur.com/tMSxt.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/tMSxt.png" alt="enter image description here" /></a></p>
<p><a href="https://kubernetes.io/docs/concepts/services-networking/ingress/" rel="nofollow noreferrer">https://kubernetes.io/docs/concepts/services-networking/ingress/</a></p>
<p>You can read this article how to setup the ingress in EKS aws so you will get an idea.</p>
<p>You can use a different domains for exposing services.</p>
<p><strong>Example</strong> :</p>
<p><a href="https://aws.amazon.com/premiumsupport/knowledge-center/terminate-https-traffic-eks-acm/" rel="nofollow noreferrer">https://aws.amazon.com/premiumsupport/knowledge-center/terminate-https-traffic-eks-acm/</a></p>
