Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Expand top-level storage parameter #79

Closed
3 tasks
vuldin opened this issue Jun 13, 2022 · 0 comments
Closed
3 tasks

Expand top-level storage parameter #79

vuldin opened this issue Jun 13, 2022 · 0 comments
Labels
enhancement New feature or request

Comments

@vuldin
Copy link
Member

vuldin commented Jun 13, 2022

# Persistence
storage:
  enabled: true
  # Absolute path on host to store Redpanda's data.
  # If not specified, then `emptyDir` will be used instead.
  # If specified, but `persistentVolume.enabled` is `true`, then has no effect.
  hostPath: ""
  # If `enabled` is `true` then a PersistentVolumeClaim will be created and
  # used to store Redpanda's data, otherwise `hostPath` is used.
  #
  persistentVolume:
    enabled: true
    size: 100Gi
    # If defined, then `storageClassName: <storageClass>`.
    # If set to "-", then `storageClassName: ""`, which disables dynamic
    # provisioning.
    # If undefined or empty (default), then no `storageClassName` spec is set,
    # so the default provisioner will be chosen (gp2 on AWS, standard on
    # GKE, AWS & OpenStack).
    storageClass: ""
    # Additional labels to apply to the created PersistentVolumeClaims.
    labels: {}
    # Additional annotations to apply to the created PersistentVolumeClaims.
    annotations: {}
  #
  # Shadow indexing
  cloud:
    enabled: true                             # enable cloud storage
    region: "local"                           # S3 region
    bucket: "redpanda"                        # S3 bucket
    api:
      address: "minio"                        # S3 API endpoint (will be generated for AWS if left blank)
      port: 9000                              # S3 API port (default 443)
    accessKey: "minio"                        # S3 access key
    secretKey: "minio123"                     # S3 secret key
    remoteReadEnabled: true                   # cluster-wide cloud storage read
    remoteWriteEnabled: true                  # cluster-wide cloud storage write
    maxUploadWaitIntervalSec: 30              # seconds between segment uploads (else segments uploaded when size == segment.bytes)
    tlsEnabled: true

EDIT:

This has become a much more focused issue.

The bitnami example is good, and we already have a top-level storage section which is the main benefit. We can open another ticket in the future to investigate adding new functionality to this section as needed, and when focusing on those tickets we can see if and how the bitnami chart handles those features.

We had an internal discussion around a storage.enabled parameter and decided to remove it, as we don't see a reason someone would want to disable persistence at the moment. We can revisit this in the future if it makes sense.

Lowering the default persistent volume size is still a great idea and will be included.

The last issue that wasn't initially spelled out but is being focused on is making sure the proper ownership of the persistent volume of type HostPath is set. This happens automatically in some environments, but in minikube it doesn't (see this issue). Resolving this ticket will mean setting storage.persistentVolume.enabled to true or false works in any environment.

The last change alluded to above is including shadow indexing features, and that already has another ticket and will be completed when that ticket is focused on (likely not part of the initial release of v2).

@vuldin vuldin added the enhancement New feature or request label Jun 13, 2022
vuldin added a commit to vuldin/helm-charts that referenced this issue Jul 21, 2022
- closes redpanda-data#79
- remove storage.enabled
- lower default PV size to 3Gi
- add initContainer that properly changes ownership on mounted volume
@vuldin vuldin closed this as completed Jul 26, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant