goharbor / harbor-operator

Kubernetes operator for Harbor service components
Apache License 2.0
358 stars 111 forks source link

Skip discovery client error #1078

Open SzymonZebrowski opened 1 year ago

SzymonZebrowski commented 1 year ago

If any of the API Services is unavailable, the Harbor Operator won't be able to start. It may lead to deadlock situations, example below.

In Kubernetes cluster we have Harbor cluster, operator and Keda (which is runinng API service). Keda is configured to pull image from Harbor. During cluster upgrades, we hit following issues:

  1. Keda cannot pull image from Harbor because Harbor cluster is unavailable.
  2. Harbor cluster is unavailable because the operator is not running.
  3. Harbor operator is not running because one of API services (Keda in this case) is not running (because of 1).

If we can ignore not working API services, operator will be able to start.