Fission is a framework for serverless functions on Kubernetes.
- Kubernetes 1.23+
- Helm 3+
helm repo add fission-charts https://fission.github.io/fission-charts
helm repo update
See helm repo for command documentation.
Replace {{version}}
with the latest Fission version.
# Helm
$ export FISSION_NAMESPACE="fission"
$ kubectl create namespace $FISSION_NAMESPACE
$ kubectl create -k "github.com/fission/fission/crds/v1?ref={{version}}"
$ helm install [RELEASE_NAME] fission-charts/fission-all --namespace fission
See configuration below.
See helm install for command documentation.
By default, this chart installs additional, dependent charts:
To disable dependencies during installation, see multiple releases below.
See helm dependency for command documentation.
# Helm
$ helm uninstall [RELEASE_NAME]
This removes all the Kubernetes components associated with the chart and deletes the release.
See helm uninstall for command documentation.
CRDs are not removed by this chart and should be manually cleaned up:
{{version}}
references the version you used during the installation of chart.
kubectl delete -k "github.com/fission/fission/crds/v1?ref={{version}}"
OR
You can list all Fission CRDs and clean them up with kubectl delete crd
command.
kubectl get crds| grep ".fission.io"
CRDs created by this chart are not updated by default and should be manually updated.
{{version}}
references the version you are upgrading to
kubectl replace -k "github.com/fission/fission/crds/v1?ref={{version}}"
# Helm
$ helm upgrade [RELEASE_NAME] fission-charts/fission-all
See configuration below.
See helm upgrade for command documentation.
A major chart version change (like v1.2.3 -> v2.0.0) indicates that there is an incompatible breaking change needing manual actions.
We have removed controller service from fission-all chart.
With 1.18.x, we have major change in the way we are deploying Fission.
We have added parameters defaultNamespace
, additionalFissionNamespaces
, functionNamespace
and builderNamespace
to manage the namespaces.
We watch and manage specific namespaces for Fission resources configured via defaultNamespace
and additionalFissionNamespaces
parameters.
You dont need to worry about builderNamespace
and functionNamespace
parameters, unless you want to consider legacy Fission resources.
Please refer to core changes for more details.
By default, Fission runs with the default security context. This means that it will be run as root. We have added settings in Helm chart for securityContext across all services in Fission. You can enable recommended securityContext settings during Fission installation.
Please refer to security context settings for more details.
If you have been using prometheus.enabled=true
in your fission-all chart, you will need to deploy the prometheus using prometheus community supported chart.
We have removed prometheus dependency from fission-all chart.
We would recommend prometheus-community/prometheus or prometheus-community/kube-prometheus-stack chart.
With 1.15.x release, following changes are made:
-
fission-core
chart is removed -
fission-all
chart is made similarfission-core
chart -
In the
fission-all
chart, the following components are disabled which were enabled by default earlier. If you want to enable them, please use--set
flag.- nats - Set
nats.enabled=true
to enable Fission Nats integration - influxdb - Set
influxdb.enabled=true
to enable Fission InfluxDB and logger component - prometheus - Set
prometheus.enabled=true
to install Prometheus with Fission - canaryDeployment - Set
canaryDeployment.enabled=true
to enable Canary Deployment
- nats - Set
With the release of Fission v1.15.x, the fission-core chart was removed. Fission-all is now exactly similar to fission-core and can be used to migrate from fission-core.
If you are upgrading from the fission-core chart, you can use the following command to migrate with required changes.
helm upgrade [RELEASE_NAME] fission-charts/fission-all --namespace fission
See Customizing the Chart Before Installing. To see all configurable options with detailed comments:
helm show values fission-charts/fission-all
You may also helm show values
on this chart's dependencies for additional options.
The same chart can be used to run multiple Fission instances in the same cluster if required.