<p>I am new at kubernetes so apologies in advance for any silly questions and mistakes. I am trying to setup external access through ingress for ArgoCD. My setup is an aws eks cluster. I have setup alb following the guide <a href="https://github.com/kubernetes-sigs/aws-load-balancer-controller/tree/v2.2.3/helm/aws-load-balancer-controller" rel="noreferrer">here</a>. I have also setup external dns service as described <a href="https://github.com/kubernetes-sigs/external-dns/blob/v0.9.0/docs/tutorials/aws.md" rel="noreferrer">here</a>. I also followed the verification steps in that guide and was able to confirm that the dns record got created as well and i was able to access the foo service.</p>
<p>For argoCD I installed the manifests via</p>
<pre><code>kubectl create namespace argocd
kubectl apply -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml -n argocd
</code></pre>
<p>The argoCD docs mention adding a service to split up http and grpc and an ingress setup <a href="https://argoproj.github.io/argo-cd/operator-manual/ingress/#aws-application-load-balancers-albs-and-classic-elb-http-mode" rel="noreferrer">here</a>. I followed that and installed those as well</p>
<pre><code>apiVersion: v1
kind: Service
metadata:
  annotations:
    alb.ingress.kubernetes.io/backend-protocol-version: HTTP2
    external-dns.alpha.kubernetes.io/hostname: argocd.&lt;mydomain.com&gt;
  labels:
    app: argogrpc
  name: argogrpc
  namespace: argocd
spec:
  ports:
  - name: &quot;443&quot;
    port: 443
    protocol: TCP
    targetPort: 8080
  selector:
    app.kubernetes.io/name: argocd-server
  sessionAffinity: None
  type: ClusterIP
</code></pre>
<pre><code>apiVersion: networking.k8s.io/v1 # Use extensions/v1beta1 for Kubernetes 1.18 and older
kind: Ingress
metadata:
  annotations:
    kubernetes.io/ingress.class: alb
    alb.ingress.kubernetes.io/scheme: internet-facing
    alb.ingress.kubernetes.io/backend-protocol: HTTPS
    alb.ingress.kubernetes.io/conditions.argogrpc: |
      [{&quot;field&quot;:&quot;http-header&quot;,&quot;httpHeaderConfig&quot;:{&quot;httpHeaderName&quot;: &quot;Content-Type&quot;, &quot;values&quot;:[&quot;application/grpc&quot;]}}]
    alb.ingress.kubernetes.io/listen-ports: '[{&quot;HTTPS&quot;:443}]'
  name: argocd
  namespace: argocd
spec:
  rules:
  - host: argocd.&lt;mydomain.com&gt;
    http:
      paths:
      - backend:
          service:
            name: argogrpc
            port:
              number: 443
        pathType: ImplementationSpecific
      - backend:
          service:
            name: argocd-server
            port:
              number: 443
        pathType: ImplementationSpecific
  tls:
  - hosts:
    - argocd.&lt;mydomain.com&gt;
</code></pre>
<p>The definitions are applied successfully but I don't see the dns record created neither any external IP listed.  Am I missing any steps or is there any misconfiguration here? Thanks in advance!</p>

<p>Service type needs to be NodePort.</p>
