CNAME Target not being set on Ingress Status
ppapp92 opened this issue · comments
Kubernetes Version
1.28
Helm Chart Version
0.12.1
Ingress Controller Version
0.10.1
System Info
AWS EKS
ArgoCD
ExternalDNS
Helm Chart configuration
kubernetes-ingress-controller:
replicaCount: 1
ingressClass:
name: ngrok
create: true
default: false
controllerName: "k8s.ngrok.com/ingress-controller"
credentials:
apiKey: <API_KEY>
authtoken: <AUTHTOKEN>
region: ""
What happened
When an Ngrok class ingress resource is created in K8 the Address(status.loadBalancer) doesn't get updated by the Ngrok Ingress Controller. This means that ExternalDNS does not create appropriate route53 entires to fully automate the deployment of an application.
Similar to #161
What you think should happen instead
Ngrok Ingress Controller should update the ingress resource with the CNAME Target so that ExternalDNS can properly configure DNS for the newly created service/app.
How to reproduce
Create an ingress resource in K8
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
finalizers:
- k8s.ngrok.com/finalizer
generation: 1
labels:
app.kubernetes.io/component: server
app.kubernetes.io/instance: argo-workflows
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: argo-workflows-server
app.kubernetes.io/part-of: argo-workflows
helm.sh/chart: argo-workflows-0.40.4
name: argo-workflows-server
namespace: argo
spec:
ingressClassName: ngrok
rules:
- host: domain.example.com
http:
paths:
- backend:
service:
name: argo-workflows-server
port:
number: 2746
path: /
pathType: Prefix
View the status of the ingress and see that the loadBalancer address is empty
status:
loadBalancer: {}
Both the Tunnel and Domain resources get created.
apiVersion: ingress.k8s.ngrok.com/v1alpha1
kind: Domain
metadata:
finalizers:
- k8s.ngrok.com/finalizer
generation: 1
name: example
namespace: argo
spec:
description: Created by kubernetes-ingress-controller
domain: domain.example.com
metadata: '{"owned-by":"kubernetes-ingress-controller"}'
status:
cnameTarget: x.ngrok-cname.com
domain: domain.example.com
id: rd_x
uri: https://api.ngrok.com/reserved_domains/rd_x
apiVersion: ingress.k8s.ngrok.com/v1alpha1
kind: Tunnel
metadata:
finalizers:
- k8s.ngrok.com/finalizer
labels:
k8s.ngrok.com/controller-name: ingress-ngrok-kubernetes-ingress-controller-manager
k8s.ngrok.com/controller-namespace: ingress-ngrok
k8s.ngrok.com/port: "2746"
k8s.ngrok.com/service: argo-workflows-server
name: argo-workflows-server-2746-v4g2m
namespace: argo
ownerReferences:
- apiVersion: networking.k8s.io/v1
kind: Ingress
name: argo-workflows-server
spec:
backend:
protocol: HTTP
forwardsTo: argo-workflows-server.argo.svc.cluster.local:2746
labels:
k8s.ngrok.com/namespace: argo
k8s.ngrok.com/port: "2746"
k8s.ngrok.com/service: argo-workflows-server
Adding log from Ingress Controller. I did the following:
- Restarted Ingress Controller
- Created Ngrok type ingress
- Captured logs
Domain, Edges, Endpoints get created in Ngrok Dashboard however the Domain can't verify because ExternalDNS never creates the CNAME in route53.
If I then delete the ingress and recreate it (after the Domain and Tunnel resource have been created) the ingress creates with the CNAME attached and ExternalDNS is able to create the entry.
{"level":"info","ts":"2024-02-15T15:26:06Z","logger":"setup","msg":"starting manager","version":"0.10.1","commit":"1cf33f17961038010f0011663c7bf17d997e1108"}
{"level":"info","ts":"2024-02-15T15:26:06Z","logger":"controller-runtime.metrics","msg":"Metrics server is starting to listen","addr":":8080"}
{"level":"info","ts":"2024-02-15T15:26:06Z","logger":"setup","msg":"found matching ingress","ingress-name":"argo-workflows-server","ingress-namespace":"argo"}
{"level":"info","ts":"2024-02-15T15:26:06Z","logger":"setup","msg":"found matching ingress","ingress-name":"kubecost-cost-analyzer","ingress-namespace":"kubecost"}
{"level":"info","ts":"2024-02-15T15:26:07Z","logger":"drivers.tunnel","msg":"client session established","obj":"csess","id":"9350fcf729ae"}
{"level":"info","ts":"2024-02-15T15:26:07Z","logger":"setup","msg":"starting manager"}
{"level":"info","ts":"2024-02-15T15:26:07Z","msg":"Starting server","path":"/metrics","kind":"metrics","addr":":8080"}
{"level":"info","ts":"2024-02-15T15:26:07Z","logger":"controllers.tunnel","msg":"Starting EventSource","source":"kind source: *v1alpha1.Tunnel"}
{"level":"info","ts":"2024-02-15T15:26:07Z","logger":"controllers.tunnel","msg":"Starting Controller"}
I0215 15:26:07.140893 1 leaderelection.go:248] attempting to acquire leader lease ingress-ngrok/ingress-ngrok-kubernetes-ingress-controller-leader...
{"level":"info","ts":"2024-02-15T15:26:07Z","msg":"Starting server","kind":"health probe","addr":":8081"}
{"level":"info","ts":"2024-02-15T15:26:07Z","logger":"controllers.tunnel","msg":"Starting workers","worker count":1}
I0215 15:26:24.861042 1 leaderelection.go:258] successfully acquired lease ingress-ngrok/ingress-ngrok-kubernetes-ingress-controller-leader
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting EventSource","controller":"tcpedge","controllerGroup":"ingress.k8s.ngrok.com","controllerKind":"TCPEdge","source":"kind source: *v1alpha1.TCPEdge"}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting EventSource","controller":"ngrokmoduleset","controllerGroup":"ingress.k8s.ngrok.com","controllerKind":"NgrokModuleSet","source":"kind source: *v1alpha1.NgrokModuleSet"}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting Controller","controller":"ngrokmoduleset","controllerGroup":"ingress.k8s.ngrok.com","controllerKind":"NgrokModuleSet"}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting EventSource","controller":"httpsedge","controllerGroup":"ingress.k8s.ngrok.com","controllerKind":"HTTPSEdge","source":"kind source: *v1alpha1.HTTPSEdge"}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting Controller","controller":"httpsedge","controllerGroup":"ingress.k8s.ngrok.com","controllerKind":"HTTPSEdge"}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting EventSource","controller":"ippolicy","controllerGroup":"ingress.k8s.ngrok.com","controllerKind":"IPPolicy","source":"kind source: *v1alpha1.IPPolicy"}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting Controller","controller":"ippolicy","controllerGroup":"ingress.k8s.ngrok.com","controllerKind":"IPPolicy"}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting EventSource","controller":"tcpedge","controllerGroup":"ingress.k8s.ngrok.com","controllerKind":"TCPEdge","source":"kind source: *v1alpha1.IPPolicy"}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting Controller","controller":"tcpedge","controllerGroup":"ingress.k8s.ngrok.com","controllerKind":"TCPEdge"}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting EventSource","controller":"domain","controllerGroup":"ingress.k8s.ngrok.com","controllerKind":"Domain","source":"kind source: *v1alpha1.Domain"}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting Controller","controller":"domain","controllerGroup":"ingress.k8s.ngrok.com","controllerKind":"Domain"}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting EventSource","controller":"ingress","controllerGroup":"networking.k8s.io","controllerKind":"Ingress","source":"kind source: *v1.Ingress"}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting EventSource","controller":"ingress","controllerGroup":"networking.k8s.io","controllerKind":"Ingress","source":"kind source: *v1.IngressClass"}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting EventSource","controller":"ingress","controllerGroup":"networking.k8s.io","controllerKind":"Ingress","source":"kind source: *v1.Service"}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting EventSource","controller":"ingress","controllerGroup":"networking.k8s.io","controllerKind":"Ingress","source":"kind source: *v1alpha1.Domain"}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting EventSource","controller":"ingress","controllerGroup":"networking.k8s.io","controllerKind":"Ingress","source":"kind source: *v1alpha1.HTTPSEdge"}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting EventSource","controller":"ingress","controllerGroup":"networking.k8s.io","controllerKind":"Ingress","source":"kind source: *v1alpha1.Tunnel"}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting EventSource","controller":"ingress","controllerGroup":"networking.k8s.io","controllerKind":"Ingress","source":"kind source: *v1alpha1.NgrokModuleSet"}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting Controller","controller":"ingress","controllerGroup":"networking.k8s.io","controllerKind":"Ingress"}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting EventSource","controller":"tlsedge","controllerGroup":"ingress.k8s.ngrok.com","controllerKind":"TLSEdge","source":"kind source: *v1alpha1.TLSEdge"}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting EventSource","controller":"tlsedge","controllerGroup":"ingress.k8s.ngrok.com","controllerKind":"TLSEdge","source":"kind source: *v1alpha1.IPPolicy"}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting Controller","controller":"tlsedge","controllerGroup":"ingress.k8s.ngrok.com","controllerKind":"TLSEdge"}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting workers","controller":"httpsedge","controllerGroup":"ingress.k8s.ngrok.com","controllerKind":"HTTPSEdge","worker count":1}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting workers","controller":"tcpedge","controllerGroup":"ingress.k8s.ngrok.com","controllerKind":"TCPEdge","worker count":1}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting workers","controller":"ippolicy","controllerGroup":"ingress.k8s.ngrok.com","controllerKind":"IPPolicy","worker count":1}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting workers","controller":"ngrokmoduleset","controllerGroup":"ingress.k8s.ngrok.com","controllerKind":"NgrokModuleSet","worker count":1}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting workers","controller":"domain","controllerGroup":"ingress.k8s.ngrok.com","controllerKind":"Domain","worker count":1}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting workers","controller":"tlsedge","controllerGroup":"ingress.k8s.ngrok.com","controllerKind":"TLSEdge","worker count":1}
{"level":"info","ts":"2024-02-15T15:26:24Z","msg":"Starting workers","controller":"ingress","controllerGroup":"networking.k8s.io","controllerKind":"Ingress","worker count":1}
{"level":"info","ts":"2024-02-15T15:26:24Z","logger":"cache-store-driver","msg":"sync start"}
{"level":"info","ts":"2024-02-15T15:26:24Z","logger":"cache-store-driver","msg":"syncing driver state!!"}
{"level":"error","ts":"2024-02-15T15:26:24Z","logger":"cache-store-driver","msg":"error updating tunnel","tunnel":{"metadata":{"generateName":"argo-workflows-server-2746-","namespace":"argo","creationTimestamp":null,"labels":{"k8s.ngrok.com/controller-name":"ingress-ngrok-kubernetes-ingress-controller-manager","k8s.ngrok.com/controller-namespace":"ingress-ngrok","k8s.ngrok.com/port":"2746","k8s.ngrok.com/service":"argo-workflows-server"},"ownerReferences":[{"apiVersion":"","kind":"","name":"argo-workflows-server","uid":"0c9dc0e1-7191-43a5-9376-efd0f853fb96"}]},"spec":{"forwardsTo":"argo-workflows-server.argo.svc.cluster.local:2746","labels":{"k8s.ngrok.com/namespace":"argo","k8s.ngrok.com/port":"2746","k8s.ngrok.com/service":"argo-workflows-server","k8s.ngrok.com/service-uid":"009d3f57-3e3f-4cdb-8a76-76ad91b4d091"},"backend":{"protocol":"HTTP"}},"status":{}},"error":"Tunnel.ingress.k8s.ngrok.com \"argo-workflows-server-2746-v4g2m\" is invalid: [metadata.ownerReferences.apiVersion: Invalid value: \"\": version must not be empty, metadata.ownerReferences.kind: Invalid value: \"\": kind must not be empty]","stacktrace":"github.com/ngrok/kubernetes-ingress-controller/internal/store.(*Driver).applyTunnels\n\tgithub.com/ngrok/kubernetes-ingress-controller/internal/store/driver.go:457\ngithub.com/ngrok/kubernetes-ingress-controller/internal/store.(*Driver).Sync\n\tgithub.com/ngrok/kubernetes-ingress-controller/internal/store/driver.go:323\ngithub.com/ngrok/kubernetes-ingress-controller/internal/controllers.(*IngressReconciler).Reconcile\n\tgithub.com/ngrok/kubernetes-ingress-controller/internal/controllers/ingress_controller.go:129\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Reconcile\n\tsigs.k8s.io/controller-runtime@v0.14.1/pkg/internal/controller/controller.go:122\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler\n\tsigs.k8s.io/controller-runtime@v0.14.1/pkg/internal/controller/controller.go:323\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\tsigs.k8s.io/controller-runtime@v0.14.1/pkg/internal/controller/controller.go:274\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\tsigs.k8s.io/controller-runtime@v0.14.1/pkg/internal/controller/controller.go:235"}
{"level":"info","ts":"2024-02-15T15:26:24Z","logger":"cache-store-driver","msg":"sync done"}
{"level":"error","ts":"2024-02-15T15:26:24Z","logger":"controllers.ingress","msg":"Failed to sync","ingress":"kubecost/kubecost-cost-analyzer","error":"Tunnel.ingress.k8s.ngrok.com \"argo-workflows-server-2746-v4g2m\" is invalid: [metadata.ownerReferences.apiVersion: Invalid value: \"\": version must not be empty, metadata.ownerReferences.kind: Invalid value: \"\": kind must not be empty]","stacktrace":"github.com/ngrok/kubernetes-ingress-controller/internal/controllers.(*IngressReconciler).Reconcile\n\tgithub.com/ngrok/kubernetes-ingress-controller/internal/controllers/ingress_controller.go:131\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Reconcile\n\tsigs.k8s.io/controller-runtime@v0.14.1/pkg/internal/controller/controller.go:122\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler\n\tsigs.k8s.io/controller-runtime@v0.14.1/pkg/internal/controller/controller.go:323\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\tsigs.k8s.io/controller-runtime@v0.14.1/pkg/internal/controller/controller.go:274\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\tsigs.k8s.io/controller-runtime@v0.14.1/pkg/internal/controller/controller.go:235"}
{"level":"error","ts":"2024-02-15T15:26:24Z","msg":"Reconciler error","controller":"ingress","controllerGroup":"networking.k8s.io","controllerKind":"Ingress","Ingress":{"name":"kubecost-cost-analyzer","namespace":"kubecost"},"namespace":"kubecost","name":"kubecost-cost-analyzer","reconcileID":"fc4639f4-02bc-4bd5-bf41-be3681dfbee0","error":"Tunnel.ingress.k8s.ngrok.com \"argo-workflows-server-2746-v4g2m\" is invalid: [metadata.ownerReferences.apiVersion: Invalid value: \"\": version must not be empty, metadata.ownerReferences.kind: Invalid value: \"\": kind must not be empty]","stacktrace":"sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler\n\tsigs.k8s.io/controller-runtime@v0.14.1/pkg/internal/controller/controller.go:329\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\tsigs.k8s.io/controller-runtime@v0.14.1/pkg/internal/controller/controller.go:274\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\tsigs.k8s.io/controller-runtime@v0.14.1/pkg/internal/controller/controller.go:235"}
{"level":"info","ts":"2024-02-15T15:26:24Z","logger":"controllers.ingress","msg":"Ingress is not of type ngrok so skipping it","ingress":"app/app"}
{"level":"info","ts":"2024-02-15T15:26:24Z","logger":"controllers.ingress","msg":"Ingress is not of type ngrok so skipping it","ingress":"app/app"}
{"level":"info","ts":"2024-02-15T15:26:24Z","logger":"controllers.ingress","msg":"Ingress is not of type ngrok so skipping it","ingress":"app/app"}
{"level":"info","ts":"2024-02-15T15:26:24Z","logger":"controllers.ingress","msg":"Ingress is not of type ngrok so skipping it","ingress":"app/app"}
{"level":"info","ts":"2024-02-15T15:26:24Z","logger":"controllers.ingress","msg":"Ingress is not of type ngrok so skipping it","ingress":"app/app"}
{"level":"info","ts":"2024-02-15T15:26:24Z","logger":"controllers.ingress","msg":"Ingress is not of type ngrok so skipping it","ingress":"app/app"}
{"level":"info","ts":"2024-02-15T15:26:24Z","logger":"controllers.ingress","msg":"Ingress is not of type ngrok so skipping it","ingress":"app/app"}
{"level":"info","ts":"2024-02-15T15:26:24Z","logger":"cache-store-driver","msg":"sync start"}
{"level":"info","ts":"2024-02-15T15:26:24Z","logger":"cache-store-driver","msg":"syncing driver state!!"}
{"level":"info","ts":"2024-02-15T15:26:25Z","logger":"cache-store-driver","msg":"sync done"}
{"level":"info","ts":"2024-02-15T15:26:25Z","logger":"cache-store-driver","msg":"sync start"}
{"level":"info","ts":"2024-02-15T15:26:25Z","logger":"cache-store-driver","msg":"syncing driver state!!"}
{"level":"info","ts":"2024-02-15T15:26:25Z","logger":"cache-store-driver","msg":"sync done"}
{"level":"info","ts":"2024-02-15T15:26:25Z","logger":"controllers.https-edge","msg":"Got existing route","v1alpha1.HTTPSEdge":"argo/argo-workflows-dev-venue-dev-sh-92sz6","route.match":"/","route.match_type":"path_prefix","ngrok.route.id":"edghtsrt_2cMzPbFAbK2Wcnn9a7KriYh5986"}
{"level":"info","ts":"2024-02-15T15:26:25Z","logger":"controllers.https-edge","msg":"Applying route modules","v1alpha1.HTTPSEdge":"argo/argo-workflows-dev-venue-dev-sh-92sz6","route.match":"/","route.match_type":"path_prefix","ngrok.route.id":"edghtsrt_2cMzPbFAbK2Wcnn9a7KriYh5986"}
{"level":"info","ts":"2024-02-15T15:26:25Z","logger":"controllers.https-edge","msg":"Updating route","v1alpha1.HTTPSEdge":"argo/argo-workflows-dev-venue-dev-sh-92sz6","route.match":"/","route.match_type":"path_prefix","ngrok.route.id":"edghtsrt_2cMzPbFAbK2Wcnn9a7KriYh5986","ngrok.backend.id":"bkdtg_2c3DmWKvUKgg9aV3JIOsDOWUOu7"}
{"level":"info","ts":"2024-02-15T15:26:25Z","logger":"controllers.https-edge","msg":"Updated route","v1alpha1.HTTPSEdge":"argo/argo-workflows-dev-venue-dev-sh-92sz6","route.match":"/","route.match_type":"path_prefix","ngrok.route.id":"edghtsrt_2cMzPbFAbK2Wcnn9a7KriYh5986"}
{"level":"info","ts":"2024-02-15T15:26:25Z","logger":"controllers.https-edge","msg":"Got existing route","v1alpha1.HTTPSEdge":"kubecost/kubecost-dev-venue-dev-sh-kcm27","route.match":"/","route.match_type":"path_prefix","ngrok.route.id":"edghtsrt_2c3hIAkctzMfkwByVXWwP7dMZ0G"}
{"level":"info","ts":"2024-02-15T15:26:25Z","logger":"controllers.https-edge","msg":"Applying route modules","v1alpha1.HTTPSEdge":"kubecost/kubecost-dev-venue-dev-sh-kcm27","route.match":"/","route.match_type":"path_prefix","ngrok.route.id":"edghtsrt_2c3hIAkctzMfkwByVXWwP7dMZ0G"}
{"level":"info","ts":"2024-02-15T15:26:25Z","logger":"controllers.https-edge","msg":"Updating route","v1alpha1.HTTPSEdge":"kubecost/kubecost-dev-venue-dev-sh-kcm27","route.match":"/","route.match_type":"path_prefix","ngrok.route.id":"edghtsrt_2c3hIAkctzMfkwByVXWwP7dMZ0G","ngrok.backend.id":"bkdtg_2bpOf93CU861qCnuQj1i3edumV8"}
{"level":"info","ts":"2024-02-15T15:26:26Z","logger":"controllers.https-edge","msg":"Updated route","v1alpha1.HTTPSEdge":"kubecost/kubecost-dev-venue-dev-sh-kcm27","route.match":"/","route.match_type":"path_prefix","ngrok.route.id":"edghtsrt_2c3hIAkctzMfkwByVXWwP7dMZ0G"}
{"level":"info","ts":"2024-02-15T15:27:23Z","logger":"cache-store-driver","msg":"sync start"}
{"level":"info","ts":"2024-02-15T15:27:23Z","logger":"cache-store-driver","msg":"syncing driver state!!"}
{"level":"info","ts":"2024-02-15T15:27:23Z","logger":"cache-store-driver","msg":"sync done"}
{"level":"info","ts":"2024-02-15T15:27:23Z","logger":"cache-store-driver","msg":"sync start"}
{"level":"info","ts":"2024-02-15T15:27:23Z","logger":"cache-store-driver","msg":"syncing driver state!!"}
{"level":"info","ts":"2024-02-15T15:27:23Z","logger":"cache-store-driver","msg":"sync done"}
{"level":"error","ts":"2024-02-15T15:27:24Z","msg":"Reconciler error","controller":"httpsedge","controllerGroup":"ingress.k8s.ngrok.com","controllerKind":"HTTPSEdge","HTTPSEdge":{"name":"signoz-dev-venue-dev-sh-fpvvg","namespace":"signoz"},"namespace":"signoz","name":"signoz-dev-venue-dev-sh-fpvvg","reconcileID":"91f7bbe4-4181-4376-af90-74c25b0b4e79","error":"HTTP 400: The domain '<app.example.com>:443' is not reserved. [ERR_NGROK_7117]\n\nOperation ID: op_2cPQgSANPQcFe8ZTHSnjOM9MPD0","stacktrace":"sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler\n\tsigs.k8s.io/controller-runtime@v0.14.1/pkg/internal/controller/controller.go:329\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\tsigs.k8s.io/controller-runtime@v0.14.1/pkg/internal/controller/controller.go:274\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\tsigs.k8s.io/controller-runtime@v0.14.1/pkg/internal/controller/controller.go:235"}
{"level":"info","ts":"2024-02-15T15:27:24Z","logger":"controllers.https-edge","msg":"Creating new route","v1alpha1.HTTPSEdge":"signoz/signoz-dev-venue-dev-sh-fpvvg","route.match":"/","route.match_type":"path_prefix"}
{"level":"info","ts":"2024-02-15T15:27:24Z","logger":"controllers.https-edge","msg":"Created new route","v1alpha1.HTTPSEdge":"signoz/signoz-dev-venue-dev-sh-fpvvg","route.match":"/","route.match_type":"path_prefix","ngrok.route.id":"edghtsrt_2cPQgPTWGxPuwAk7oyCFdoKbqDr"}
{"level":"info","ts":"2024-02-15T15:27:24Z","logger":"controllers.https-edge","msg":"Applying route modules","v1alpha1.HTTPSEdge":"signoz/signoz-dev-venue-dev-sh-fpvvg","route.match":"/","route.match_type":"path_prefix","ngrok.route.id":"edghtsrt_2cPQgPTWGxPuwAk7oyCFdoKbqDr"}
{"level":"info","ts":"2024-02-15T15:27:24Z","logger":"controllers.https-edge","msg":"Updating route","v1alpha1.HTTPSEdge":"signoz/signoz-dev-venue-dev-sh-fpvvg","route.match":"/","route.match_type":"path_prefix","ngrok.route.id":"edghtsrt_2cPQgPTWGxPuwAk7oyCFdoKbqDr","ngrok.backend.id":"bkdtg_2cNOMIw3xMMsH5umI16szSpQ0Uv"}
{"level":"info","ts":"2024-02-15T15:27:24Z","logger":"controllers.https-edge","msg":"Updated route","v1alpha1.HTTPSEdge":"signoz/signoz-dev-venue-dev-sh-fpvvg","route.match":"/","route.match_type":"path_prefix","ngrok.route.id":"edghtsrt_2cPQgPTWGxPuwAk7oyCFdoKbqDr"}
Additional logs after ingress is recreated:
{"level":"info","ts":"2024-02-15T15:38:22Z","logger":"controllers.ingress","msg":"Deleting ingress from store","ingress":"signoz/signoz-frontend"}
{"level":"info","ts":"2024-02-15T15:38:22Z","logger":"cache-store-driver","msg":"sync start"}
{"level":"info","ts":"2024-02-15T15:38:22Z","logger":"cache-store-driver","msg":"syncing driver state!!"}
{"level":"info","ts":"2024-02-15T15:38:22Z","logger":"controllers.tunnel","msg":"Tunnel deleted successfully","v1alpha1.Tunnel":"signoz/signoz-frontend-3301-rdw9v","name":"signoz/signoz-frontend-3301-rdw9v"}
{"level":"error","ts":"2024-02-15T15:38:22Z","logger":"controllers.tunnel","msg":"Error accepting connection","v1alpha1.Tunnel":"signoz/signoz-frontend-3301-rdw9v","id":"tn_2cPQgKk9zLo52tNRT9L97j0rVTS","protocol":"HTTP","dest":"app.svc.cluster.local:3301","error":"failed to accept connection: Tunnel closed","stacktrace":"github.com/ngrok/kubernetes-ingress-controller/pkg/tunneldriver.handleConnections\n\tgithub.com/ngrok/kubernetes-ingress-controller/pkg/tunneldriver/driver.go:192"}
{"level":"info","ts":"2024-02-15T15:38:22Z","logger":"cache-store-driver","msg":"sync done"}
{"level":"info","ts":"2024-02-15T15:38:22Z","logger":"cache-store-driver","msg":"sync start"}
{"level":"info","ts":"2024-02-15T15:38:22Z","logger":"cache-store-driver","msg":"syncing driver state!!"}
{"level":"info","ts":"2024-02-15T15:38:22Z","logger":"cache-store-driver","msg":"sync done"}
{"level":"info","ts":"2024-02-15T15:39:01Z","logger":"cache-store-driver","msg":"sync start"}
{"level":"info","ts":"2024-02-15T15:39:01Z","logger":"cache-store-driver","msg":"syncing driver state!!"}
{"level":"info","ts":"2024-02-15T15:39:01Z","logger":"cache-store-driver","msg":"sync done"}
{"level":"info","ts":"2024-02-15T15:39:01Z","logger":"cache-store-driver","msg":"sync start"}
{"level":"info","ts":"2024-02-15T15:39:01Z","logger":"cache-store-driver","msg":"syncing driver state!!"}
{"level":"info","ts":"2024-02-15T15:39:01Z","logger":"cache-store-driver","msg":"sync done"}
{"level":"info","ts":"2024-02-15T15:39:02Z","logger":"controllers.https-edge","msg":"Creating new route","v1alpha1.HTTPSEdge":"signoz/signoz-dev-venue-dev-sh-67c9l","route.match":"/","route.match_type":"path_prefix"}
{"level":"info","ts":"2024-02-15T15:39:02Z","logger":"controllers.https-edge","msg":"Created new route","v1alpha1.HTTPSEdge":"signoz/signoz-dev-venue-dev-sh-67c9l","route.match":"/","route.match_type":"path_prefix","ngrok.route.id":"edghtsrt_2cPS687JMDCwwmSHTk97cfu263M"}
{"level":"info","ts":"2024-02-15T15:39:02Z","logger":"controllers.https-edge","msg":"Applying route modules","v1alpha1.HTTPSEdge":"signoz/signoz-dev-venue-dev-sh-67c9l","route.match":"/","route.match_type":"path_prefix","ngrok.route.id":"edghtsrt_2cPS687JMDCwwmSHTk97cfu263M"}
{"level":"info","ts":"2024-02-15T15:39:02Z","logger":"controllers.https-edge","msg":"Updating route","v1alpha1.HTTPSEdge":"signoz/signoz-dev-venue-dev-sh-67c9l","route.match":"/","route.match_type":"path_prefix","ngrok.route.id":"edghtsrt_2cPS687JMDCwwmSHTk97cfu263M","ngrok.backend.id":"bkdtg_2cNOMIw3xMMsH5umI16szSpQ0Uv"}
{"level":"info","ts":"2024-02-15T15:39:02Z","logger":"controllers.https-edge","msg":"Updated route","v1alpha1.HTTPSEdge":"signoz/signoz-dev-venue-dev-sh-67c9l","route.match":"/","route.match_type":"path_prefix","ngrok.route.id":"edghtsrt_2cPS687JMDCwwmSHTk97cfu263M"}