Fission
Fission 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,
$ helm install --name my-release fission-all
Uninstalling the chart
To uninstall/delete chart,
$ 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) |
-
- 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,
$ helm install --name my-release --set image=custom/fission-bundle,imageTag=v1 fission-all
If you're using minikube, set serviceType to NodePort:
$ helm install --name my-release --set serviceType=NodePort fission-all
You can also set parameters with a yaml file (see values.yaml for what it should look like):
$ helm install --name my-release -f values.yaml fission-all