Skip to content

Commit

Permalink
Merge pull request #68 from zdtsw/chore_operator_scope
Browse files Browse the repository at this point in the history
update:  scope of Operator managed resources
  • Loading branch information
zdtsw authored Oct 9, 2024
2 parents cd65900 + 15caf0e commit 6976c1b
Showing 1 changed file with 10 additions and 8 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -40,22 +40,24 @@ The operator deploys the following Custom Resource Definitions:

- DSCInitialization
- DataScienceCluster
- FeatureTracker

The operator (optionally) requires and/or manages the following dependent operators, among others:

- KServe
- ModelMesh
- Ray
- Codeflare
- ServiceMesh
- Serverless
- NFD
- NVIDIA GPU
- openshift-pipelines
- Data Science Pipeline Operator
- KubeRay
- Codeflare Operator
- Kueue
- Training Operator
- TrustyAI Operator
- Model Registry Operator

In order to properly manage these resources, the operator requires access and permissions across namespaces. In particular, the operator creates and/or manages the following namespace (the namespace name can be changed via configuration):

- opendatahub
- odh-model-registries

The operator also leverages the platform’s [Owner References](https://kubernetes.io/docs/concepts/overview/working-with-objects/owners-dependents/) capability that ensures all dependent resources are owned by the operator and their life cycles are tracked and managed cleanly. Kubernetes however restricts the use of owner references in a way that only cluster scoped resources can own other cluster scoped resources, leading to the requirement of the operator being cluster scoped.

Expand Down Expand Up @@ -90,7 +92,7 @@ The use of namespaced operator would prevent us from meeting the requirements of

## Tradeoffs

The main drawback of using a cluster scoped operator is the impossibility of running multiple instances and/or versions of RHODS in the same cluster. Users that need multiple instances/versions of RHODS are required to use one cluster for each. For cases where cost is a concern, alternatives like Hypershift can be considered.
The main drawback of using a cluster scoped operator is the impossibility of running multiple instances and/or versions of RHOAI in the same cluster. Users that need multiple instances/versions of RHOAI are required to use one cluster for each. For cases where cost is a concern, alternatives like Hosted Control Plane can be considered.

## Stakeholder Impacts

Expand Down

0 comments on commit 6976c1b

Please sign in to comment.