Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Service watcher keeps editing managed exit nodes #155

Open
Towerful opened this issue Jan 8, 2025 · 12 comments
Open

Service watcher keeps editing managed exit nodes #155

Towerful opened this issue Jan 8, 2025 · 12 comments
Labels
bug Something isn't working help wanted Extra attention is needed question Further information is requested

Comments

@Towerful
Copy link

Towerful commented Jan 8, 2025

Hello,
I am using chisel operator with Envoy Gateway and MetalLB.
Chisel is correctly picking up that it has to create an exit node, and is provisioning it on Digital Ocean (aside form the issues I am having described in #152 ). It is correctly not targeting any other services. So it seems to be working correctly.

However, the operator is spamming the following logs every 100ms or so (I've cut them down a bit, let me know if you need more info):

ts=2025-01-08T12:48:33.134100032Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="object updated" 
ts=2025-01-08T12:48:33.217847716Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="Patched status for service envoy-default-gw-3d45476e" 
ts=2025-01-08T12:48:33.218904788Z level=info target=chisel_operator::deployment span=create_pod_template span_path="run>reconciling object>reconcile_svcs>create_owned_deployment>create_pod_template" message="Generated arguments: [\"R:80:envoy-default-gw-3d45476e.envoy:80/tcp\", \"R:443:envoy-default-gw-3d45476e.envoy:443/tcp\"]" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="object updated" 
ts=2025-01-08T12:48:33.235607356Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="Patched status for ExitNode digitalocean" 
ts=2025-01-08T12:48:33.236488383Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="object updated" 
ts=2025-01-08T12:48:33.317094903Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="Patched status for service envoy-default-gw-3d45476e" 
ts=2025-01-08T12:48:33.317469838Z level=info target=chisel_operator::deployment span=create_pod_template span_path="run>reconciling object>reconcile_svcs>create_owned_deployment>create_pod_template" message="Generated arguments: [\"R:80:envoy-default-gw-3d45476e.envoy:80/tcp\", \"R:443:envoy-default-gw-3d45476e.envoy:443/tcp\"]" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="object updated" 
ts=2025-01-08T12:48:33.326711289Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="Patched status for ExitNode digitalocean" 
ts=2025-01-08T12:48:33.326989105Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="object updated" 

This repeats and repeats.
Is this normal?
It seems like it is updating an object, which is triggering an object updated event, which is causing it to update the object....

Copy link

linear bot commented Jan 8, 2025

@korewaChino
Copy link
Member

That shouldn't really happen, feedback loop? I need to investigate this.

@Towerful
Copy link
Author

Towerful commented Jan 8, 2025

After completing the cluster wipe & full redeployment, I can confirm this is still happening.

@korewaChino
Copy link
Member

What is your setup? Are you using multiple ExitNodeProvisioners? I could not reproduce this issue with my test environment

@korewaChino korewaChino added bug Something isn't working help wanted Extra attention is needed question Further information is requested labels Jan 8, 2025
@korewaChino korewaChino changed the title Chisel operator is generating a lot of logs Service watcher keeps editing managed exit nodes Jan 8, 2025
@Towerful
Copy link
Author

Towerful commented Jan 8, 2025

I am using Envoy Gateway Operator, MetalLB operator, 3 nodes running Talos OS in a fairly standard environment.
The GatewayOperator is provisioning the service.

Gateway manifest:

apiVersion: gateway.networking.k8s.io/v1
kind: Gateway
metadata:
  name: gw
  namespace: default
  annotations:
    metallb.universe.tf/loadBalancerIPs: 10.100.101.15 # I've edited this in, its from a variable
spec:
  gatewayClassName: eg
  infrastructure:
    annotations:
      chisel-operator.io/exit-node-name: "digitalocean"

GatewayClass manifest:

apiVersion: gateway.networking.k8s.io/v1
kind: GatewayClass
metadata:
  name: eg
  namespace: envoy
spec:
  controllerName: gateway.envoyproxy.io/gatewayclass-controller
  parametersRef:
    group: gateway.envoyproxy.io
    kind: EnvoyProxy
    name: config
    namespace: envoy

and EnvoyProxy manifest:

apiVersion: gateway.envoyproxy.io/v1alpha1
kind: EnvoyProxy
metadata:
  name: config
  namespace: envoy
spec:
  provider:
    type: Kubernetes
    kubernetes:
      envoyDeployment:
        replicas: 3

I think thats all the relevant information.
This produces a service of type LoadBalancer that gets the correct "external" IP from MetalLB, and everything is working locally from outside the cluster.

Adding an ExitNode manifest:

apiVersion: chisel-operator.io/v1
kind: ExitNode
metadata:
  name: digitalocean
  namespace: chisel
  annotations:
    chisel-operator.io/exit-node-provisioner: "digitalocean"
spec:
  host: ""
  port: 9090
  auth: digitalocean-auth

is provisioning a DO droplet, and the tunnel is connecting (although I havent actually tested it for routing, something I'll do tomorrow), and kicking off the log spam.
Without the ExitNode manifest its just logging an "exit node not found" message every 5 seconds or so

I'll try piping the logs through less/more or whatever, see if I can catch the start of the log spam to see what kicks it off.
I wonder if it is MetalLB updating something regarding speaker (I'm using L2 gratuitous arp) allocations or something

@korewaChino
Copy link
Member

I don't really know what Envoy is doing, but maybe it's conflicting with Chisel Operator in some weird way. Anyway I may have accidentally fixed this bug in #156, so you might wanna try the docker build in that.

@Towerful
Copy link
Author

Towerful commented Jan 8, 2025

awesome, I'll give it a shot tomorrow.

@Towerful
Copy link
Author

Towerful commented Jan 9, 2025

Cool, with the config I had yesterday (with an auth set, but no underlying secret) I am seeing logs in the operator saying "secret no found". No exit node pod or droplet is provisioned. makes sense.

If I delete the auth parameter, the ExitNode seems to be invalid, so the operator says something along the lines of "no available exit nodes". No exit node pod or droplet is provisioned makes sense.

Creating the relevant auth secret kicks off the operator, and I see an exit node pod and droplet being provisioned.
The pod websocket connects, but SSH fails to connect. I'll pick this up in the other issue.

Unfortunately, the log spam is still happening (I've included the entire logs with sensitive data snipped - I think):

ts=2025-01-09T15:12:10.249784536Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="Patched status for ExitNode digitalocean" 
ts=2025-01-09T15:12:10.250986083Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="object updated" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:12:10Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"121037\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:12:10.333128247Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="Patched status for service envoy-default-gw-3d45476e" status="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:12:10Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"121037\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="object updated" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:12:10Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"121037\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:12:10.334701472Z level=info target=chisel_operator::deployment span=create_pod_template span_path="run>reconciling object>reconcile_svcs>create_owned_deployment>create_pod_template" message="Generated arguments: [\"R:80:envoy-default-gw-3d45476e.envoy:80/tcp\", \"R:443:envoy-default-gw-3d45476e.envoy:443/tcp\"]" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="object updated" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:12:10Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"121037\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }" source="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:12:10Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"121037\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }" exit_node="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T14:47:56Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(2), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T14:56:50Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:01:21Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:status\": Object {\".\": Object {}, \"f:id\": Object {}, \"f:ip\": Object {}, \"f:name\": Object {}, \"f:provider\": Object {}}})), manager: Some(\"chisel-operator\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:01:55Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"90017\"), self_link: None, uid: Some(\"22a3ca6b-3fa2-4d1e-b887-46f129bde90d\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: Some(ExitNodeStatus { provider: \"digitalocean\", name: \"digitalocean-digitalocean\", ip: \"{SNIP IP}\", id: Some(\"468743493\") }) }" source="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:12:10Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"121037\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }" exit_node="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T14:47:56Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(2), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T14:56:50Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:01:21Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:status\": Object {\".\": Object {}, \"f:id\": Object {}, \"f:ip\": Object {}, \"f:name\": Object {}, \"f:provider\": Object {}}})), manager: Some(\"chisel-operator\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:01:55Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"90017\"), self_link: None, uid: Some(\"22a3ca6b-3fa2-4d1e-b887-46f129bde90d\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: Some(ExitNodeStatus { provider: \"digitalocean\", name: \"digitalocean-digitalocean\", ip: \"{SNIP IP}\", id: Some(\"468743493\") }) }"
ts=2025-01-09T15:12:10.34275048Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="Patched status for ExitNode digitalocean" status="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T14:47:56Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(2), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T14:56:50Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:01:21Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:status\": Object {\".\": Object {}, \"f:id\": Object {}, \"f:ip\": Object {}, \"f:name\": Object {}, \"f:provider\": Object {}}})), manager: Some(\"chisel-operator\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:01:55Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"90017\"), self_link: None, uid: Some(\"22a3ca6b-3fa2-4d1e-b887-46f129bde90d\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: Some(ExitNodeStatus { provider: \"digitalocean\", name: \"digitalocean-digitalocean\", ip: \"{SNIP IP}\", id: Some(\"468743493\") }) }" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="object updated" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:12:10Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"121037\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:12:10.343555071Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="object updated" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:12:10Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"121042\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:12:10.437642642Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="Patched status for service envoy-default-gw-3d45476e" status="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:12:10Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"121042\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="object updated" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:12:10Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"121042\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:12:10.438912512Z level=info target=chisel_operator::deployment span=create_pod_template span_path="run>reconciling object>reconcile_svcs>create_owned_deployment>create_pod_template" message="Generated arguments: [\"R:80:envoy-default-gw-3d45476e.envoy:80/tcp\", \"R:443:envoy-default-gw-3d45476e.envoy:443/tcp\"]" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="object updated" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:12:10Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"121042\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }" source="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:12:10Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"121042\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }" exit_node="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T14:47:56Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(2), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T14:56:50Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:01:21Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:status\": Object {\".\": Object {}, \"f:id\": Object {}, \"f:ip\": Object {}, \"f:name\": Object {}, \"f:provider\": Object {}}})), manager: Some(\"chisel-operator\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:01:55Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"90017\"), self_link: None, uid: Some(\"22a3ca6b-3fa2-4d1e-b887-46f129bde90d\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: Some(ExitNodeStatus { provider: \"digitalocean\", name: \"digitalocean-digitalocean\", ip: \"{SNIP IP}\", id: Some(\"468743493\") }) }" source="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:12:10Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"121042\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }" exit_node="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T14:47:56Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(2), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T14:56:50Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:01:21Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:status\": Object {\".\": Object {}, \"f:id\": Object {}, \"f:ip\": Object {}, \"f:name\": Object {}, \"f:provider\": Object {}}})), manager: Some(\"chisel-operator\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:01:55Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"90017\"), self_link: None, uid: Some(\"22a3ca6b-3fa2-4d1e-b887-46f129bde90d\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: Some(ExitNodeStatus { provider: \"digitalocean\", name: \"digitalocean-digitalocean\", ip: \"{SNIP IP}\", id: Some(\"468743493\") }) }"
ts=2025-01-09T15:12:10.446747771Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="Patched status for ExitNode digitalocean" status="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T14:47:56Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(2), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T14:56:50Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:01:21Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:status\": Object {\".\": Object {}, \"f:id\": Object {}, \"f:ip\": Object {}, \"f:name\": Object {}, \"f:provider\": Object {}}})), manager: Some(\"chisel-operator\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:01:55Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"90017\"), self_link: None, uid: Some(\"22a3ca6b-3fa2-4d1e-b887-46f129bde90d\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: Some(ExitNodeStatus { provider: \"digitalocean\", name: \"digitalocean-digitalocean\", ip: \"{SNIP IP}\", id: Some(\"468743493\") }) }" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="object updated" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:12:10Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"121042\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:12:10.447634782Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="object updated" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:12:10Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"121048\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:12:10.538280443Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="Patched status for service envoy-default-gw-3d45476e" status="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:12:10Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"121048\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="object updated" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:12:10Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"121048\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:12:10.539988011Z level=info target=chisel_operator::deployment span=create_pod_template span_path="run>reconciling object>reconcile_svcs>create_owned_deployment>create_pod_template" message="Generated arguments: [\"R:80:envoy-default-gw-3d45476e.envoy:80/tcp\", \"R:443:envoy-default-gw-3d45476e.envoy:443/tcp\"]" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="object updated" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:12:10Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"121048\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }" source="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:12:10Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"121048\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }" exit_node="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T14:47:56Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(2), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T14:56:50Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:01:21Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:status\": Object {\".\": Object {}, \"f:id\": Object {}, \"f:ip\": Object {}, \"f:name\": Object {}, \"f:provider\": Object {}}})), manager: Some(\"chisel-operator\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:01:55Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"90017\"), self_link: None, uid: Some(\"22a3ca6b-3fa2-4d1e-b887-46f129bde90d\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: Some(ExitNodeStatus { provider: \"digitalocean\", name: \"digitalocean-digitalocean\", ip: \"{SNIP IP}\", id: Some(\"468743493\") }) }" source="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:12:10Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"121048\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }" exit_node="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T14:47:56Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(2), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T14:56:50Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:01:21Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:status\": Object {\".\": Object {}, \"f:id\": Object {}, \"f:ip\": Object {}, \"f:name\": Object {}, \"f:provider\": Object {}}})), manager: Some(\"chisel-operator\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:01:55Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"90017\"), self_link: None, uid: Some(\"22a3ca6b-3fa2-4d1e-b887-46f129bde90d\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: Some(ExitNodeStatus { provider: \"digitalocean\", name: \"digitalocean-digitalocean\", ip: \"{SNIP IP}\", id: Some(\"468743493\") }) }"
ts=2025-01-09T15:12:10.562692798Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="Patched status for ExitNode digitalocean" status="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T14:47:56Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(2), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T14:56:50Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:01:21Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:status\": Object {\".\": Object {}, \"f:id\": Object {}, \"f:ip\": Object {}, \"f:name\": Object {}, \"f:provider\": Object {}}})), manager: Some(\"chisel-operator\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:01:55Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"90017\"), self_link: None, uid: Some(\"22a3ca6b-3fa2-4d1e-b887-46f129bde90d\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: Some(ExitNodeStatus { provider: \"digitalocean\", name: \"digitalocean-digitalocean\", ip: \"{SNIP IP}\", id: Some(\"468743493\") }) }" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="object updated" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:12:10Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"121048\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:12:10.563899791Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="object updated" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:12:10Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"121054\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"

@Towerful
Copy link
Author

Towerful commented Jan 9, 2025

Here are the logs from after killing the operator pod then applying an exitnode config:

ts=2025-01-09T15:25:41.779050414Z level=info target=chisel_operator message="Fyra Labs Chisel Operator, version 0.5.0"
ts=2025-01-09T15:25:41.779063436Z level=info target=chisel_operator message="Starting up..."
ts=2025-01-09T15:25:41.779180707Z level=info target=chisel_operator::daemon span=run span_path=run message="Starting reconcilers..."
ts=2025-01-09T15:25:41.785496447Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="object updated" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:25:41.891278547Z level=error target=chisel_operator::daemon span=error_policy span_path="run>reconciling object>error_policy" err=NoAvailableExitNodes object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="object updated"
ts=2025-01-09T15:25:46.893235942Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:25:46.907258863Z level=error target=chisel_operator::daemon span=error_policy span_path="run>reconciling object>error_policy" err=NoAvailableExitNodes object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry"
ts=2025-01-09T15:25:51.910183448Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:25:51.927532557Z level=error target=chisel_operator::daemon span=error_policy span_path="run>reconciling object>error_policy" err=NoAvailableExitNodes object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry"
ts=2025-01-09T15:25:56.930432137Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:25:56.947083839Z level=error target=chisel_operator::daemon span=error_policy span_path="run>reconciling object>error_policy" err=NoAvailableExitNodes object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry"
ts=2025-01-09T15:26:01.949547704Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:26:01.95941814Z level=error target=chisel_operator::daemon span=error_policy span_path="run>reconciling object>error_policy" err=NoAvailableExitNodes object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry"
ts=2025-01-09T15:26:06.961253232Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:26:06.972324786Z level=error target=chisel_operator::daemon span=error_policy span_path="run>reconciling object>error_policy" err=NoAvailableExitNodes object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry"
ts=2025-01-09T15:26:11.974983344Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:26:11.987150681Z level=error target=chisel_operator::daemon span=error_policy span_path="run>reconciling object>error_policy" err=NoAvailableExitNodes object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry"
ts=2025-01-09T15:26:16.988316446Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:26:17.002093932Z level=error target=chisel_operator::daemon span=error_policy span_path="run>reconciling object>error_policy" err=NoAvailableExitNodes object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry"
ts=2025-01-09T15:26:22.003855981Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:26:22.021086213Z level=error target=chisel_operator::daemon span=error_policy span_path="run>reconciling object>error_policy" err=NoAvailableExitNodes object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry"
ts=2025-01-09T15:26:27.022921371Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:26:27.034871417Z level=error target=chisel_operator::daemon span=error_policy span_path="run>reconciling object>error_policy" err=NoAvailableExitNodes object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry"
ts=2025-01-09T15:26:32.036207424Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:26:32.052800733Z level=error target=chisel_operator::daemon span=error_policy span_path="run>reconciling object>error_policy" err=NoAvailableExitNodes object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry"
ts=2025-01-09T15:26:37.055567867Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:26:37.07021016Z level=error target=chisel_operator::daemon span=error_policy span_path="run>reconciling object>error_policy" err=NoAvailableExitNodes object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry"
ts=2025-01-09T15:26:37.564939973Z level=info target=chisel_operator::daemon span=reconcile_nodes span_path="run>reconciling object>reconcile_nodes" message="exit node reconcile request: digitalocean" object.ref=ExitNode.v1.chisel-operator.io/digitalocean.chisel object.reason="object updated" obj="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T15:26:37Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: None, generate_name: None, generation: Some(1), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"151164\"), self_link: None, uid: Some(\"de95265c-9808-4dec-b680-c614c3009b18\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: None }"
ts=2025-01-09T15:26:37.571722175Z level=info target=chisel_operator::daemon span=find_exit_node_provisioner_from_label span_path="run>reconciling object>reconcile_nodes>find_exit_node_provisioner_from_label" message="node list" node_list="ObjectList { types: TypeMeta { api_version: \"chisel-operator.io/v1\", kind: \"ExitNodeProvisionerList\" }, metadata: ListMeta { continue_: Some(\"\"), remaining_item_count: None, resource_version: Some(\"151164\"), self_link: None }, items: [ExitNodeProvisioner { metadata: ObjectMeta { annotations: Some({\"garden.io/manifest-hash\": \"96f48f776c9e5811f2ead6cf8e309afeb737fe9dc61b6dd885cd87bcab93a5cc\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNodeProvisioner\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"garden.io/manifest-hash\\\":\\\"96f48f776c9e5811f2ead6cf8e309afeb737fe9dc61b6dd885cd87bcab93a5cc\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\",\\\"stage\\\":\\\"supabase\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"DigitalOcean\\\":{\\\"auth\\\":\\\"digitalocean\\\",\\\"region\\\":\\\"lon1\\\",\\\"size\\\":\\\"s-1vcpu-1gb\\\"}}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T14:47:56Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: None, generate_name: None, generation: Some(1), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\", \"stage\": \"supabase\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}, \"f:stage\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:DigitalOcean\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:region\": Object {}, \"f:size\": Object {}, \"f:ssh_fingerprints\": Object {}}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T14:47:56Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"87180\"), self_link: None, uid: Some(\"3b03bab7-d430-4eb5-9f64-5df0a03dbd8b\") }, spec: DigitalOcean(DigitalOceanProvisioner { region: \"lon1\", auth: \"digitalocean\", ssh_fingerprints: [], size: \"s-1vcpu-1gb\" }) }] }" object.ref=ExitNode.v1.chisel-operator.io/digitalocean.chisel object.reason="object updated" obj="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T15:26:37Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: None, generate_name: None, generation: Some(1), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"151164\"), self_link: None, uid: Some(\"de95265c-9808-4dec-b680-c614c3009b18\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: None }" default_namespace=chisel query=digitalocean
ts=2025-01-09T15:26:37.593911924Z level=info target=chisel_operator::daemon span=reconcile_nodes span_path="run>reconciling object>reconcile_nodes" message="exit node reconcile request: digitalocean" object.ref=ExitNode.v1.chisel-operator.io/digitalocean.chisel object.reason="object updated" obj="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T15:26:37Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(1), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"151165\"), self_link: None, uid: Some(\"de95265c-9808-4dec-b680-c614c3009b18\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: None }"
ts=2025-01-09T15:26:37.673330682Z level=info target=chisel_operator::daemon span=find_exit_node_provisioner_from_label span_path="run>reconciling object>reconcile_nodes>find_exit_node_provisioner_from_label" message="node list" node_list="ObjectList { types: TypeMeta { api_version: \"chisel-operator.io/v1\", kind: \"ExitNodeProvisionerList\" }, metadata: ListMeta { continue_: Some(\"\"), remaining_item_count: None, resource_version: Some(\"151165\"), self_link: None }, items: [ExitNodeProvisioner { metadata: ObjectMeta { annotations: Some({\"garden.io/manifest-hash\": \"96f48f776c9e5811f2ead6cf8e309afeb737fe9dc61b6dd885cd87bcab93a5cc\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNodeProvisioner\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"garden.io/manifest-hash\\\":\\\"96f48f776c9e5811f2ead6cf8e309afeb737fe9dc61b6dd885cd87bcab93a5cc\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\",\\\"stage\\\":\\\"supabase\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"DigitalOcean\\\":{\\\"auth\\\":\\\"digitalocean\\\",\\\"region\\\":\\\"lon1\\\",\\\"size\\\":\\\"s-1vcpu-1gb\\\"}}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T14:47:56Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: None, generate_name: None, generation: Some(1), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\", \"stage\": \"supabase\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}, \"f:stage\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:DigitalOcean\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:region\": Object {}, \"f:size\": Object {}, \"f:ssh_fingerprints\": Object {}}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T14:47:56Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"87180\"), self_link: None, uid: Some(\"3b03bab7-d430-4eb5-9f64-5df0a03dbd8b\") }, spec: DigitalOcean(DigitalOceanProvisioner { region: \"lon1\", auth: \"digitalocean\", ssh_fingerprints: [], size: \"s-1vcpu-1gb\" }) }] }" object.ref=ExitNode.v1.chisel-operator.io/digitalocean.chisel object.reason="object updated" obj="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T15:26:37Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(1), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"151165\"), self_link: None, uid: Some(\"de95265c-9808-4dec-b680-c614c3009b18\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: None }" default_namespace=chisel query=digitalocean
ts=2025-01-09T15:26:37.679461504Z level=info target=chisel_operator::daemon span=reconcile_nodes span_path="run>reconciling object>reconcile_nodes" message="Creating cloud resource for digitalocean" object.ref=ExitNode.v1.chisel-operator.io/digitalocean.chisel object.reason="object updated" obj="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T15:26:37Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(1), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"151165\"), self_link: None, uid: Some(\"de95265c-9808-4dec-b680-c614c3009b18\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: None }"
ts=2025-01-09T15:26:38.705271803Z level=warn target=chisel_operator::cloud::digitalocean span=reconcile_nodes span_path="run>reconciling object>reconcile_nodes" message="Waiting for droplet to get IP address" object.ref=ExitNode.v1.chisel-operator.io/digitalocean.chisel object.reason="object updated" obj="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T15:26:37Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(1), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"151165\"), self_link: None, uid: Some(\"de95265c-9808-4dec-b680-c614c3009b18\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: None }"
ts=2025-01-09T15:26:42.072127021Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:26:42.087605378Z level=error target=chisel_operator::daemon span=error_policy span_path="run>reconciling object>error_policy" err=NoAvailableExitNodes object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry"
ts=2025-01-09T15:26:44.026447387Z level=warn target=chisel_operator::cloud::digitalocean span=reconcile_nodes span_path="run>reconciling object>reconcile_nodes" message="Waiting for droplet to get IP address" object.ref=ExitNode.v1.chisel-operator.io/digitalocean.chisel object.reason="object updated" obj="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T15:26:37Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(1), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"151165\"), self_link: None, uid: Some(\"de95265c-9808-4dec-b680-c614c3009b18\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: None }"
ts=2025-01-09T15:26:47.089964899Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:26:47.104230714Z level=error target=chisel_operator::daemon span=error_policy span_path="run>reconciling object>error_policy" err=NoAvailableExitNodes object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry"
ts=2025-01-09T15:26:49.785394863Z level=warn target=chisel_operator::cloud::digitalocean span=reconcile_nodes span_path="run>reconciling object>reconcile_nodes" message="Waiting for droplet to get IP address" object.ref=ExitNode.v1.chisel-operator.io/digitalocean.chisel object.reason="object updated" obj="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T15:26:37Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(1), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"151165\"), self_link: None, uid: Some(\"de95265c-9808-4dec-b680-c614c3009b18\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: None }"
ts=2025-01-09T15:26:52.10729889Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:26:52.124403253Z level=error target=chisel_operator::daemon span=error_policy span_path="run>reconciling object>error_policy" err=NoAvailableExitNodes object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry"
ts=2025-01-09T15:26:55.119807757Z level=warn target=chisel_operator::cloud::digitalocean span=reconcile_nodes span_path="run>reconciling object>reconcile_nodes" message="Waiting for droplet to get IP address" object.ref=ExitNode.v1.chisel-operator.io/digitalocean.chisel object.reason="object updated" obj="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T15:26:37Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(1), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"151165\"), self_link: None, uid: Some(\"de95265c-9808-4dec-b680-c614c3009b18\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: None }"
ts=2025-01-09T15:26:57.126645186Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:26:57.142431064Z level=error target=chisel_operator::daemon span=error_policy span_path="run>reconciling object>error_policy" err=NoAvailableExitNodes object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry"
ts=2025-01-09T15:27:00.4767546Z level=warn target=chisel_operator::cloud::digitalocean span=reconcile_nodes span_path="run>reconciling object>reconcile_nodes" message="Waiting for droplet to get IP address" object.ref=ExitNode.v1.chisel-operator.io/digitalocean.chisel object.reason="object updated" obj="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T15:26:37Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(1), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"151165\"), self_link: None, uid: Some(\"de95265c-9808-4dec-b680-c614c3009b18\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: None }"
ts=2025-01-09T15:27:02.144935738Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:27:02.162934826Z level=error target=chisel_operator::daemon span=error_policy span_path="run>reconciling object>error_policy" err=NoAvailableExitNodes object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry"
ts=2025-01-09T15:27:05.728010701Z level=warn target=chisel_operator::cloud::digitalocean span=reconcile_nodes span_path="run>reconciling object>reconcile_nodes" message="Waiting for droplet to get IP address" object.ref=ExitNode.v1.chisel-operator.io/digitalocean.chisel object.reason="object updated" obj="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T15:26:37Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(1), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"151165\"), self_link: None, uid: Some(\"de95265c-9808-4dec-b680-c614c3009b18\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: None }"
ts=2025-01-09T15:27:07.16443715Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:27:07.180200224Z level=error target=chisel_operator::daemon span=error_policy span_path="run>reconciling object>error_policy" err=NoAvailableExitNodes object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry"
ts=2025-01-09T15:27:11.190909901Z level=warn target=chisel_operator::cloud::digitalocean span=reconcile_nodes span_path="run>reconciling object>reconcile_nodes" message="Waiting for droplet to get IP address" object.ref=ExitNode.v1.chisel-operator.io/digitalocean.chisel object.reason="object updated" obj="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T15:26:37Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(1), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"151165\"), self_link: None, uid: Some(\"de95265c-9808-4dec-b680-c614c3009b18\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: None }"
ts=2025-01-09T15:27:12.182352757Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:27:12.197940546Z level=error target=chisel_operator::daemon span=error_policy span_path="run>reconciling object>error_policy" err=NoAvailableExitNodes object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry"
ts=2025-01-09T15:27:16.432342714Z level=warn target=chisel_operator::cloud::digitalocean span=reconcile_nodes span_path="run>reconciling object>reconcile_nodes" message="Waiting for droplet to get IP address" object.ref=ExitNode.v1.chisel-operator.io/digitalocean.chisel object.reason="object updated" obj="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T15:26:37Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(1), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"151165\"), self_link: None, uid: Some(\"de95265c-9808-4dec-b680-c614c3009b18\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: None }"
ts=2025-01-09T15:27:17.200291521Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:27:17.212458643Z level=error target=chisel_operator::daemon span=error_policy span_path="run>reconciling object>error_policy" err=NoAvailableExitNodes object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry"
ts=2025-01-09T15:27:21.849218947Z level=info target=chisel_operator::daemon span=reconcile_nodes span_path="run>reconciling object>reconcile_nodes" message="exit node reconcile request: digitalocean" object.ref=ExitNode.v1.chisel-operator.io/digitalocean.chisel object.reason="object updated" obj="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T15:26:37Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(1), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:status\": Object {\".\": Object {}, \"f:id\": Object {}, \"f:ip\": Object {}, \"f:name\": Object {}, \"f:provider\": Object {}}})), manager: Some(\"chisel-operator\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:27:21Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"151313\"), self_link: None, uid: Some(\"de95265c-9808-4dec-b680-c614c3009b18\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: Some(ExitNodeStatus { provider: \"digitalocean\", name: \"digitalocean-digitalocean\", ip: \"{SNIP_IP}\", id: Some(\"468747292\") }) }"
ts=2025-01-09T15:27:21.859657815Z level=info target=chisel_operator::daemon span=find_exit_node_provisioner_from_label span_path="run>reconciling object>reconcile_nodes>find_exit_node_provisioner_from_label" message="node list" node_list="ObjectList { types: TypeMeta { api_version: \"chisel-operator.io/v1\", kind: \"ExitNodeProvisionerList\" }, metadata: ListMeta { continue_: Some(\"\"), remaining_item_count: None, resource_version: Some(\"151313\"), self_link: None }, items: [ExitNodeProvisioner { metadata: ObjectMeta { annotations: Some({\"garden.io/manifest-hash\": \"96f48f776c9e5811f2ead6cf8e309afeb737fe9dc61b6dd885cd87bcab93a5cc\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNodeProvisioner\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"garden.io/manifest-hash\\\":\\\"96f48f776c9e5811f2ead6cf8e309afeb737fe9dc61b6dd885cd87bcab93a5cc\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\",\\\"stage\\\":\\\"supabase\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"DigitalOcean\\\":{\\\"auth\\\":\\\"digitalocean\\\",\\\"region\\\":\\\"lon1\\\",\\\"size\\\":\\\"s-1vcpu-1gb\\\"}}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T14:47:56Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: None, generate_name: None, generation: Some(1), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\", \"stage\": \"supabase\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}, \"f:stage\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:DigitalOcean\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:region\": Object {}, \"f:size\": Object {}, \"f:ssh_fingerprints\": Object {}}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T14:47:56Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"87180\"), self_link: None, uid: Some(\"3b03bab7-d430-4eb5-9f64-5df0a03dbd8b\") }, spec: DigitalOcean(DigitalOceanProvisioner { region: \"lon1\", auth: \"digitalocean\", ssh_fingerprints: [], size: \"s-1vcpu-1gb\" }) }] }" object.ref=ExitNode.v1.chisel-operator.io/digitalocean.chisel object.reason="object updated" obj="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T15:26:37Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(1), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:status\": Object {\".\": Object {}, \"f:id\": Object {}, \"f:ip\": Object {}, \"f:name\": Object {}, \"f:provider\": Object {}}})), manager: Some(\"chisel-operator\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:27:21Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"151313\"), self_link: None, uid: Some(\"de95265c-9808-4dec-b680-c614c3009b18\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: Some(ExitNodeStatus { provider: \"digitalocean\", name: \"digitalocean-digitalocean\", ip: \"{SNIP_IP}\", id: Some(\"468747292\") }) }" default_namespace=chisel query=digitalocean
ts=2025-01-09T15:27:21.868863127Z level=info target=chisel_operator::daemon span=reconcile_nodes span_path="run>reconciling object>reconcile_nodes" message="Updating cloud resource for digitalocean" object.ref=ExitNode.v1.chisel-operator.io/digitalocean.chisel object.reason="object updated" obj="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T15:26:37Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(1), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:status\": Object {\".\": Object {}, \"f:id\": Object {}, \"f:ip\": Object {}, \"f:name\": Object {}, \"f:provider\": Object {}}})), manager: Some(\"chisel-operator\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:27:21Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"151313\"), self_link: None, uid: Some(\"de95265c-9808-4dec-b680-c614c3009b18\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: Some(ExitNodeStatus { provider: \"digitalocean\", name: \"digitalocean-digitalocean\", ip: \"{SNIP_IP}\", id: Some(\"468747292\") }) }"
ts=2025-01-09T15:27:22.214925426Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="reconcile request: envoy-default-gw-3d45476e" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:27:22.239838207Z level=info target=chisel_operator::daemon span=reconcile_svcs span_path="run>reconciling object>reconcile_svcs" message="Patched status for service envoy-default-gw-3d45476e" status="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }"
ts=2025-01-09T15:27:22.241901019Z level=info target=chisel_operator::deployment span=create_pod_template span_path="run>reconciling object>reconcile_svcs>create_owned_deployment>create_pod_template" message="Generated arguments: [\"R:80:envoy-default-gw-3d45476e.envoy:80/tcp\", \"R:443:envoy-default-gw-3d45476e.envoy:443/tcp\"]" object.ref=Service.v1./envoy-default-gw-3d45476e.envoy object.reason="error policy requested retry" obj="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }" source="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }" exit_node="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T15:26:37Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(1), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:status\": Object {\".\": Object {}, \"f:id\": Object {}, \"f:ip\": Object {}, \"f:name\": Object {}, \"f:provider\": Object {}}})), manager: Some(\"chisel-operator\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:27:21Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"151313\"), self_link: None, uid: Some(\"de95265c-9808-4dec-b680-c614c3009b18\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: Some(ExitNodeStatus { provider: \"digitalocean\", name: \"digitalocean-digitalocean\", ip: \"{SNIP_IP}\", id: Some(\"468747292\") }) }" source="Service { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-name\": \"digitalocean\", \"metallb.io/ip-allocated-from-pool\": \"default\"}), creation_timestamp: Some(Time(2025-01-08T14:27:58Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"service.chisel-operator.io/finalizer\"]), generate_name: None, generation: None, labels: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:chisel-operator.io/exit-node-name\": Object {}}, \"f:labels\": Object {\"f:app.kubernetes.io/component\": Object {}, \"f:app.kubernetes.io/managed-by\": Object {}, \"f:app.kubernetes.io/name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-name\": Object {}, \"f:gateway.envoyproxy.io/owning-gateway-namespace\": Object {}}}, \"f:spec\": Object {\"f:externalTrafficPolicy\": Object {}, \"f:ports\": Object {\"k:{\\\"port\\\":443,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}, \"k:{\\\"port\\\":80,\\\"protocol\\\":\\\"TCP\\\"}\": Object {\".\": Object {}, \"f:name\": Object {}, \"f:port\": Object {}, \"f:protocol\": Object {}, \"f:targetPort\": Object {}}}, \"f:selector\": Object {}, \"f:sessionAffinity\": Object {}, \"f:type\": Object {}}})), manager: Some(\"envoy-gateway\"), operation: Some(\"Apply\"), subresource: None, time: Some(Time(2025-01-08T14:31:37Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"service.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-08T14:28:29Z)) }, ManagedFieldsEntry { api_version: Some(\"v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\"f:metallb.io/ip-allocated-from-pool\": Object {}}}, \"f:status\": Object {\"f:loadBalancer\": Object {\"f:ingress\": Object {}}}})), manager: Some(\"controller\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:25:24Z)) }]), name: Some(\"envoy-default-gw-3d45476e\"), namespace: Some(\"envoy\"), owner_references: None, resource_version: Some(\"150881\"), self_link: None, uid: Some(\"7f444240-f708-4e17-a6fe-e7de7dd9d9f6\") }, spec: Some(ServiceSpec { allocate_load_balancer_node_ports: Some(true), cluster_ip: Some(\"10.243.94.128\"), cluster_ips: Some([\"10.243.94.128\"]), external_ips: None, external_name: None, external_traffic_policy: Some(\"Local\"), health_check_node_port: Some(30614), internal_traffic_policy: Some(\"Cluster\"), ip_families: Some([\"IPv4\"]), ip_family_policy: Some(\"SingleStack\"), load_balancer_class: None, load_balancer_ip: None, load_balancer_source_ranges: None, ports: Some([ServicePort { app_protocol: None, name: Some(\"http-80\"), node_port: Some(32636), port: 80, protocol: Some(\"TCP\"), target_port: Some(Int(10080)) }, ServicePort { app_protocol: None, name: Some(\"https-443\"), node_port: Some(31168), port: 443, protocol: Some(\"TCP\"), target_port: Some(Int(10443)) }]), publish_not_ready_addresses: None, selector: Some({\"app.kubernetes.io/component\": \"proxy\", \"app.kubernetes.io/managed-by\": \"envoy-gateway\", \"app.kubernetes.io/name\": \"envoy\", \"gateway.envoyproxy.io/owning-gateway-name\": \"gw\", \"gateway.envoyproxy.io/owning-gateway-namespace\": \"default\"}), session_affinity: Some(\"None\"), session_affinity_config: None, traffic_distribution: None, type_: Some(\"LoadBalancer\") }), status: Some(ServiceStatus { conditions: None, load_balancer: Some(LoadBalancerStatus { ingress: Some([LoadBalancerIngress { hostname: None, ip: Some(\"10.100.101.15\"), ip_mode: Some(\"VIP\"), ports: None }]) }) }) }" exit_node="ExitNode { metadata: ObjectMeta { annotations: Some({\"chisel-operator.io/exit-node-provisioner\": \"digitalocean\", \"garden.io/manifest-hash\": \"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\", \"garden.io/mode\": \"default\", \"garden.io/service\": \"gateway-exit-nodes\", \"kubectl.kubernetes.io/last-applied-configuration\": \"{\\\"apiVersion\\\":\\\"chisel-operator.io/v1\\\",\\\"kind\\\":\\\"ExitNode\\\",\\\"metadata\\\":{\\\"annotations\\\":{\\\"chisel-operator.io/exit-node-provisioner\\\":\\\"digitalocean\\\",\\\"garden.io/manifest-hash\\\":\\\"2a027526ee1264971c39a67d5315247518a2cbb268cd065f6f0ad8e884d15075\\\",\\\"garden.io/mode\\\":\\\"default\\\",\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"labels\\\":{\\\"garden.io/service\\\":\\\"gateway-exit-nodes\\\"},\\\"name\\\":\\\"digitalocean\\\",\\\"namespace\\\":\\\"chisel\\\"},\\\"spec\\\":{\\\"auth\\\":\\\"digitalocean-auth\\\",\\\"host\\\":\\\"\\\",\\\"port\\\":9090}}\\n\"}), creation_timestamp: Some(Time(2025-01-09T15:26:37Z)), deletion_grace_period_seconds: None, deletion_timestamp: None, finalizers: Some([\"exitnode.chisel-operator.io/finalizer\"]), generate_name: None, generation: Some(1), labels: Some({\"garden.io/service\": \"gateway-exit-nodes\"}), managed_fields: Some([ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:annotations\": Object {\".\": Object {}, \"f:chisel-operator.io/exit-node-provisioner\": Object {}, \"f:garden.io/manifest-hash\": Object {}, \"f:garden.io/mode\": Object {}, \"f:garden.io/service\": Object {}, \"f:kubectl.kubernetes.io/last-applied-configuration\": Object {}}, \"f:labels\": Object {\".\": Object {}, \"f:garden.io/service\": Object {}}}, \"f:spec\": Object {\".\": Object {}, \"f:auth\": Object {}, \"f:default_route\": Object {}, \"f:host\": Object {}, \"f:port\": Object {}}})), manager: Some(\"kubectl-client-side-apply\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:metadata\": Object {\"f:finalizers\": Object {\".\": Object {}, \"v:\\\"exitnode.chisel-operator.io/finalizer\\\"\": Object {}}}})), manager: Some(\"unknown\"), operation: Some(\"Update\"), subresource: None, time: Some(Time(2025-01-09T15:26:37Z)) }, ManagedFieldsEntry { api_version: Some(\"chisel-operator.io/v1\"), fields_type: Some(\"FieldsV1\"), fields_v1: Some(FieldsV1(Object {\"f:status\": Object {\".\": Object {}, \"f:id\": Object {}, \"f:ip\": Object {}, \"f:name\": Object {}, \"f:provider\": Object {}}})), manager: Some(\"chisel-operator\"), operation: Some(\"Update\"), subresource: Some(\"status\"), time: Some(Time(2025-01-09T15:27:21Z)) }]), name: Some(\"digitalocean\"), namespace: Some(\"chisel\"), owner_references: None, resource_version: Some(\"151313\"), self_link: None, uid: Some(\"de95265c-9808-4dec-b680-c614c3009b18\") }, spec: ExitNodeSpec { host: \"\", external_host: None, port: 9090, fingerprint: None, auth: Some(\"digitalocean-auth\"), chisel_image: None, default_route: false }, status: Some(ExitNodeStatus { provider: \"digitalocean\", name: \"digitalocean-digitalocean\", ip: \"{SNIP_IP}\", id: Some(\"468747292\") }) }"

@Towerful
Copy link
Author

Towerful commented Jan 9, 2025

Still having excessive logs after a cluster wipe.

@korewaChino
Copy link
Member

korewaChino commented Jan 10, 2025

This might be some kind of feedback loop caused by MetalLB or Envoy wrestling control over changes against Chisel Operator in the service. So I assume this is some kind of conflict caused by it.

Does either service try to modify the service state or annotations or anything?

Seeing that there are 2 issues related to using Chisel Operator under Envoy I would suggest not using Envoy with it for now, unless we know what's Envoy doing with the services that cause Chisel Operator to freak out.

@Towerful
Copy link
Author

I'll try and have a look, but that is 2 services that seem to fairly well accepted that may be causing an issue.
Metallb seems like a standard for on-prem clusters.
And Gateway API seems like a replacement for ingress, to which envoy seems to have the edge on nginx (FOSS Vs enterprise).
Supporting such a use case would be nice.

Is there any way for Chisel Operator to filter superfluous events? Can it check against already provisioned CRDs and rate limit events that don't impact it's own operation?
I don't know Rust (it's on my to-do) and the project I'm working on is my "learn k8s" project... So, happy to help but might need guidance!

I can delete and add an ExitNode and watch the log entries go from every 5s to every 50ms (respectively, seems like as fast as possible). As soon as the droplet gets an IP, logs go mental.

If chisel isn't fundamentally compatible with MetalLB or Envoy Gateway, then I'll explore other options.
Let me know!
But I currently don't understand why it wouldn't be. And I'd love to support this project.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working help wanted Extra attention is needed question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants