Files
sa-charts/helm/fastdfs-nginx/README.md
marsal wang 1e5a703cce swarm
2023-07-26 10:07:34 +08:00

72 lines
3.6 KiB
Markdown

# FastDF-Nginx - Multiple tracker, Multiple storage
[FastDFS](https://github.com/happyfish100/fastdfs) is an open source high performance distributed file system (DFS). It's major functions include: file storing, file syncing and file accessing, and design for high capacity and load balance.
## Introduction
This chart bootstraps tracker and storage stateful-application on a [Kubernetes](http://kubernetes.io) cluster using the [Helm](https://helm.sh) package manager. Largely inspired by this [tutorial](https://kubernetes.io/docs/tutorials/stateful-application/run-replicated-stateful-application/), further work was made to 'production-ize' the example.
## Prerequisites
- Kubernetes 1.6+
- PV provisioner support in the underlying infrastructure
## Installing the Chart
To install the chart with the release name `my-release`:
```bash
$ helm install my-release local/fastdfs-nginx
```
The command deploys FastDFS-Nginx cluster on the Kubernetes cluster in the default configuration. The [configuration](#configuration) section lists the parameters that can be configured during installation.
### Uninstall
To uninstall/delete the `my-release` deployment:
```bash
$ helm delete my-release
```
## Configuration
The following table lists the configurable parameters of the FastDFS-Nginx chart and their default values.
| Parameter | Description | Default |
| ----------------------- | ----------------------------------- | -------------------------------------- |
| `fastdfs.storage` | storage replicas number and pvc size| See `values.yaml` |
| `fastdfs.tracker` | tracker replicas number, pvc size and nginx config file.| See `values.yaml` |
| `service.type` | Service type. | `ClusterIP` |
| `image` | `fastdfs-nginx` image, tag. | `ygqygq2/fastdfs-nginx` `V6.07` |
| `trackerPorts` | tracker and nginx ports. | See `values.yaml` |
| `storagePorts` | storage and nginx ports. | See `values.yaml` |
| `ingress` | Ingress for the fastdfs tracker nginx.| `false` |
| `persistentVolume.enabled` | Create a volume to store data | true |
| `persistence.storageClass` | Type of persistent volume claim | `nil` |
| `persistence.accessModes` | Persistent volume access modes | `[ReadWriteOnce]` |
| `persistence.annotations` | Persistent volume annotations | `{}` |
| `resources` | CPU/Memory resource requests/limits | Memory: `128Mi`, CPU: `100m` |
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
## Persistence
The [FastDFS image](https://github.com/ygqygq2/fastdfs-nginx) stores the data and configurations at the `/var/fdfs` path of the container.
By default persistence is enabled, and a PersistentVolumeClaim is created and mounted in that directory. As a result, a persistent volume will need to be defined:
```
# https://kubernetes.io/docs/user-guide/persistent-volumes/#azure-disk
kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
name: fast
provisioner: kubernetes.io/azure-disk
parameters:
skuName: Premium_LRS
location: westus
```
In order to disable this functionality you can change the values.yaml to disable persistence and use an emptyDir instead.