fluid icon indicating copy to clipboard operation
fluid copied to clipboard

Feature: Support to set single quota for multipath in tireStore.level in Jindoruntime

Open Syspretor opened this issue 1 year ago • 4 comments

By design, users could set multiple cache paths when configuring tiredStore for the runtime, and there were two ways to set quotas for multiple cache paths.

The first method was to set corresponding quotas for each of the cache paths via level.quotaList.

  tieredstore:
    levels:
    - mediumtype: MEM
      volumeType: emptyDir
      path: /dev/shm/cache-subpath-1,/dev/shm/cache-subpath-2,/dev/shm/cache-subpath-3
      quotaList: 1Gi,1Gi,1Gi
      high: "0.99"
      low: "0.99"

The second method was to set a total quota for all cache paths via level.quota, where each path would receive a quota equal to the total quota divided by the number of cache paths, which is equivalent to the following configuration.

  tieredstore:
    levels:
    - mediumtype: MEM
      volumeType: emptyDir
      path: /dev/shm/cache-subpath-1,/dev/shm/cache-subpath-2,/dev/shm/cache-subpath-3
      quota: 3Gi
      high: "0.99"
      low: "0.99"

The final effective quota configuration of the two configuration examples above is equivalent.

However, currently not all runtimes support the second method; only the alluxio runtime does.

Therefore, in this PR, support for this type of quota configuration is added for the jindoruntime, and a common function to process the tiredStore is provided for three jindoruntime.Engines(jindo,jindofsx,jindocache).

Syspretor avatar Jan 17 '25 08:01 Syspretor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: Once this PR has been reviewed and has the lgtm label, please assign trafalgarzzz for approval by writing /assign @trafalgarzzz in a comment. For more information see:The Kubernetes Code Review Process.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment Approvers can cancel approval by writing /approve cancel in a comment

fluid-e2e-bot[bot] avatar Jan 17 '25 08:01 fluid-e2e-bot[bot]

Skipping CI for Draft Pull Request. If you want CI signal for your change, please convert it to an actual PR. You can still manually trigger a test run with /test all

fluid-e2e-bot[bot] avatar Jan 17 '25 08:01 fluid-e2e-bot[bot]