-
Epic
-
Resolution: Done
-
Major
-
None
-
TechDebt: refactor code for HyperShift in storage operators
-
Strategic Portfolio Work
-
6
-
False
-
None
-
False
-
Green
-
To Do
-
OCPSTRAT-519 - Unify and Instrument Hosted Control Planes Storage Operators
-
OCPSTRAT-519Unify and Instrument Hosted Control Planes Storage Operators
-
0% To Do, 0% In Progress, 100% Done
-
If Release Note Needed, Set a Value
-
Set a Value
Epic Goal*
In 4.12 we tried several approaches how to write an operator that works both in standalone OCP and in HyperShift's control plane running in the management cluster.
These operators need to be changed:
- csi-snapshot-controller-operator
- cluster-storage-operator
- aws-ebs-csi-driver-operator
We need to unify the operators to use similar approach, so the code in our operators look the same.
In addition, we need to update the operators to:
- Expose metrics from control-plane components (esp. csi-snapshot-controller and aws-ebs-csi-driver-controller pods.
- Use proper RBACs in the guest cluster, so csi-snapshot-controller and aws-ebs-csi-driver-controller does not run as cluster-admin
- Note that all components already have proper RBACs in the mgmt. cluster.
- Scale csi-snapshot-controller and aws-ebs-csi-driver-controller pods according to HostedControlPlane's AvailabilityPolicy
- Add proper node selector + pod affinity to all Pods in the mgmt cluster according to https://hypershift-docs.netlify.app/how-to/distribute-hosted-cluster-workloads/
Why is this important? (mandatory)
It will simplify our operators - we will have the same pattern in all of them.
Scenarios (mandatory)
Provide details for user scenarios including actions to be performed, platform specifications, and user personas.
- OCP users (both standalone and hypershift) should not see any change.
- Code in the operators looks the same.
Dependencies (internal and external) (mandatory)
What items must be delivered by other teams/groups to enable delivery of this epic.
Contributing Teams(and contacts) (mandatory)
Our expectation is that teams would modify the list below to fit the epic. Some epics may not need all the default groups but what is included here should accurately reflect who will be involved in delivering the epic.
- Development - yes
- Documentation - No
- QE - Regression tests only
- PX - No
- Others -
Acceptance Criteria (optional)
OCP regression tests work, both on standalone OCP and HyperShift.
Drawbacks or Risk (optional)
We could introduce regressions
Done - Checklist (mandatory)
The following points apply to all epics and are what the OpenShift team believes are the minimum set of criteria that epics should meet for us to consider them potentially shippable. We request that epic owners modify this list to reflect the work to be completed in order to produce something that is potentially shippable.
- CI Testing - Basic e2e automationTests are merged and completing successfully
- QE - Test scenarios are written and executed successfully.
- Engineering Stories Merged
- All associated work items with the Epic are closed
- Epic status should be “Release Pending”
- is depended on by
-
STOR-1279 Initial work for Azure Disk on Hosted control planes
- Closed
-
STOR-1280 Initial work for Hosted control plane support for Azure File CSI
- Closed
-
STOR-1697 Azure File CSI on Hosted control planes GA
- Closed
-
OCPSTRAT-210 [Azure] Ensure CSI Stack is running on management clusters with hosted control planes (GA)
- Closed