feat: Add Helm Chart for NATS S3#1079
Conversation
|
|
||
| ``` | ||
| helm repo add nats https://nats-io.github.io/k8s/helm/charts/ | ||
| helm install -f my-values.yaml my-nats-kafka nats/nats-kafka |
There was a problem hiding this comment.
Thanks for pointing out, the docs commits were unpushed, my bad... updated
| dependencies: | ||
| - name: nats-s3 | ||
| version: 0.1.0 | ||
| repository: "oci://ghcr.io/ashupednekar/charts" |
There was a problem hiding this comment.
Note: if this goes upstream, this can change to file:// to pick from the same repo
| @@ -0,0 +1,10 @@ | |||
| apiVersion: v2 | |||
| version: 0.1.0 | |||
| appVersion: 1.4.2 | |||
There was a problem hiding this comment.
this should be version of latest nats-s3?, latest we have 0.3.3
|
|
||
| auth: | ||
| # Enable authentication (disabled by default) | ||
| enabled: true |
There was a problem hiding this comment.
it is commented as disabled by default, so this should be false?
|
Hey! However, we should not add support for non-nats-io org project k8s chart here. |
|
Yes, makes sense... will add it to the nats-s3 repo for now... There's a proposal from its maintainer to add nats-s3 to natsio, we could come back to this if that happens |
Co-authored-by: Pradeep Peiris <wpnpeiris@gmail.com>
@ashupednekar could you bring this PR into |
Yeah, sure... will do |
This PR introduces a new Helm chart for NATS S3, an S3-compatible object storage layer powered by NATS JetStream.
It enables simple, configurable deployment of NATS S3 on Kubernetes.
📂 Chart Overview
Adds a new Helm chart for deploying NATS S3, an S3-compatible object storage layer powered by NATS JetStream.
The chart is based on the wpnpeiris/nats-s3 project and includes configurable values for image, NATS servers, authentication, and service parameters.
⚙️ Configuration Overview
The chart is designed to make NATS S3 easily configurable through
values.yaml.Key configurable sections include:
General
nameOverride/fullnameOverride/namespaceOverride— Customize resource names and namespaces.replicaCount— Number of NATS S3 pod replicas to deploy.Image
image.repository— Container image to use (default:ghcr.io/wpnpeiris/nats-s3).image.tag— Image tag (default:latest).image.pullPolicy— Kubernetes pull policy (IfNotPresent,Always, etc.).Service
service.type— Kubernetes service type (ClusterIP,NodePort, etc.).service.port/service.targetPort— Define the external and internal ports for NATS S3.service.nodePort— Optional NodePort override (used if type isNodePort).NATS Connection
nats.servers— Comma-separated list of NATS server URLs, e.g.nats://nats:4222.Authentication
auth.enabled— Enables username/password authentication.auth.username/auth.password— Basic credentials for S3 access (used ifauth.enabledis true).auth.existingSecret— Optionally reference an existing Kubernetes Secret containing credentials.When set, this overrides inline username/password values.
🚀 Example Usage
Example
my-values.yaml:Usage
Note
Right now, we need to cd into the nats chart and build the dependencies to pull in the s3 chart
The chart can then be installed by enabling the
s3.enabled=truevalue.🧰 Future Enhancements
Maintainers: