89 lines
4.6 KiB
Markdown
89 lines
4.6 KiB
Markdown
# Fission
|
|
|
|
[Fission](http://fission.io/) is a framework for serverless functions on Kubernetes.
|
|
|
|
|
|
## Prerequisites
|
|
|
|
- Kubernetes 1.8 or later
|
|
|
|
|
|
## Helm charts
|
|
|
|
The following table lists two helm charts for Fission.
|
|
|
|
| Parameter | Description |
|
|
| ---------------| ---------------------------------------------------------------------------------------|
|
|
| `fission-core` | FaaS essentials, and triggers for HTTP, Timers and Kubernetes Watches |
|
|
| `fission-all` | Log aggregation with fluentd and InfluxDB; NATS for message queue triggers; Fission-UI |
|
|
|
|
## Installing the chart
|
|
|
|
To install the chart with the release name `my-release`,
|
|
|
|
```bash
|
|
$ helm install --name my-release fission-all
|
|
```
|
|
|
|
## Uninstalling the chart
|
|
|
|
To uninstall/delete chart,
|
|
|
|
```bash
|
|
$ helm delete my-release
|
|
```
|
|
|
|
## Configuration
|
|
|
|
The following table lists the configurable parameters of the Fission chart and their default values.
|
|
|
|
| Parameter | Description | Default |
|
|
| ------------------- | ------------------------------------------ | ------------------------ |
|
|
| `serviceType` | Type of service to use | `LoadBalancer` |
|
|
| `image` | Fission image | `fission/fission-bundle` |
|
|
| `imageTag` | Fission image tag | `alpha20170124` |
|
|
| `fetcherImage` | Fission fetcher image | `fission/fetcher` |
|
|
| `fetcherImageTag` | Fission fetcher image tag | `latest` |
|
|
| `controllerPort` | Fission Controller Service Port | `31313` |
|
|
| `routerPort` | Fission Router Service Port | `31314` |
|
|
| `functionNamespace` | Namespace for Fission functions | `fission-function` |
|
|
| `builderNamespace` | Namespace for Fission environment builders | `fission-builder` |
|
|
|
|
### Extra configuration for `fission-all`
|
|
|
|
| Parameter | Description | Default |
|
|
| ------------------------------- | --------------------------- | ---------------------------------------------------------- |
|
|
| `logger.influxdbAdmin` | Log database admin username | `admin` |
|
|
| `logger.fluentdImage` | Logger fluentd image | `fission/fluentd` |
|
|
| `fissionUiImage` | Fission ui image | `fission/fission-ui:0.1.0` |
|
|
| `nats.enabled` | Nats streaming enabled | `true` |
|
|
| `nats.authToken` | Nats streaming auth token | `defaultFissionAuthToken`(required if `nats.enabled` is `true`) |
|
|
| `nats.clusterID` | Nats streaming clusterID | `fissionMQTrigger`(required if `nats.enabled` is `true`) |
|
|
| `azureStorageQueue.enabled` * | Azure storage account name | `false` |
|
|
| `azureStorageQueue.accountName` | Azure storage account name | `None` (required if `azureStorageQueue.enabled` is `true`) |
|
|
| `azureStorageQueue.key` | Azure storage access key | `None` (required if `azureStorageQueue.enabled` is `true`) |
|
|
| `kafka.enabled` * | Kafka trigger enabled | `false` |
|
|
| `kafka.brokers` | Kafka brokers uri | `broker.kafka:9092` (required if `kafka.enabled` is `true`) |
|
|
| `kafka.version` | Kafka broker version | `None` (should be `>= 0.11.0.0` to enable Kafka record headers support) |
|
|
|
|
* - Please note that deploying of Azure Storage Queue or Kafka is not done by Fission chart and you will have to explicitly deploy them.
|
|
|
|
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
|
|
|
|
```bash
|
|
$ helm install --name my-release --set image=custom/fission-bundle,imageTag=v1 fission-all
|
|
```
|
|
|
|
If you're using minikube, set serviceType to NodePort:
|
|
|
|
```bash
|
|
$ helm install --name my-release --set serviceType=NodePort fission-all
|
|
```
|
|
|
|
You can also set parameters with a yaml file (see [values.yaml](fission-all/values.yaml) for
|
|
what it should look like):
|
|
|
|
```bash
|
|
$ helm install --name my-release -f values.yaml fission-all
|
|
```
|