This repository was archived by the owner on Feb 8, 2024. It is now read-only.
CORTX-32157: Refactor Data chart values #327
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Cleanup Data chart values, in the same vein as previous changes.
This has significant changes in regards to the storage set definitions. The storage sets are now defined as a top level list, in the exact same format as solution.yaml except for:
nodes
key is removed since it is not being used. Instead, thedata.replicaCount
defines the number of nodesThe logic to construct the CVG groups and determine the number of StatefulSets has been changed to use Helm (Sprig's really)
chunk
function, which groups all the CVG objects into the storage set'scontainerGroupSize
value. This grouping means less manual calculation of counts, and no need for tracking index values.There is still only support for a single storage set, the template errors out if there's more than one.
The block device PV access modes have been changed to
ReadWriteOnce
by default.ReadWriteMany
isn't necessary.Port definitions have been removed from the data headless Service. It was not worth the effort to properly handle the dynamic nature of the CVGs, and none of the other headless services specify anything. The port definitions are merely documentation not functional. We can decide to add them back later if necessary.
Type of change
Applicable issues
How was this tested?
Deployment on a 2-node cluster with two CVGs, and using both group sizes of 1 and 2, with S3/IO. Ran status script.
I capture the Cluster state using
kubectl get deployments,statefulsets,services,cm -o yaml
, for both group size cases, and for before and after this change. Everything was identical in the "after" case except for the expected:accessMode
for block devices toReadWriteOnce
All volumes, PVCs, Pods, etc. were identical.
Additional information
Checklist
If this change requires newer CORTX or third party image versions:
image
fields in solution.example.yaml have been updated to use the required versions.appVersion
field of the Helm chart has been updated to use the new CORTX version.If this change addresses a CORTX Jira issue:
CORTX-XXXXX:
)View rendered charts/cortx/README.md