noobaa / noobaa-operator

Operator for NooBaa - object data service for hybrid and multi cloud environments :cloud: :wrench:
https://www.noobaa.io
Apache License 2.0
102 stars 99 forks source link

Added support to join external noobaa system from hosted clusters #1389

Closed ezio-auditore closed 4 weeks ago

ezio-auditore commented 2 months ago

Explain the changes

Part of : RHSTOR-5187

  1. Edited Join Secret check to differentiate between remote endpoints behaviour and remote noobaa operator via a annonation remote-client-noobaa:true
  2. Create a auth_token secret for noobaa accounts having an annotation remote-operator
  3. Delete the auth_token secret when noobaa account is deleted

Issues: Fixed #xxx / Gap #xxx

1.

Testing Instructions:

  1. This change works on a the provider-client model of OCS.
  2. When a new client cluster joins with ocs provider cluster, it creates a Noobaa account CR in the provider cluster
  3. An auth token is created for each noobaa remote operator account and is supplied to the client cluster
  4. ocs-client operator creates a join secret containing auth_token and mgmt_addr obtained from the provider noobaa cluster
  5. ocs-client opertor creates a Noobaa CR with a secret referring to the join secret created.
  6. Noobaa operator then reconciles the client Noobaa CR
  7. New OBCs can be created in the client cluster Ref: https://github.com/red-hat-storage/ocs-operator/pull/2680 https://github.com/red-hat-storage/ocs-client-operator/pull/176