* Helm K8s minimum version to 1.28 Signed-off-by: Sanket Sudake <sanketsudake@gmail.com> * Workflow image changes Signed-off-by: Sanket Sudake <sanketsudake@gmail.com> * Update tools version Signed-off-by: Sanket Sudake <sanketsudake@gmail.com> --------- Signed-off-by: Sanket Sudake <sanketsudake@gmail.com>
5.9 KiB
fission-all
Fission is a framework for serverless functions on Kubernetes.
Prerequisites
- Kubernetes 1.28+
- Helm 3+
Get Repo Info
helm repo add fission-charts https://fission.github.io/fission-charts
helm repo update
See helm repo for command documentation.
Install Chart
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.
Dependencies
By default, this chart installs additional, dependent charts:
To disable dependencies during installation, see multiple releases below.
See helm dependency for command documentation.
Uninstall Chart
# 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"
Upgrading Chart
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.
Upgrading an existing Release to a new major version
A major chart version change (like v1.2.3 -> v2.0.0) indicates that there is an incompatible breaking change needing manual actions.
Upgrade from 1.18.x to 1.20.x
We have removed controller service from fission-all chart.
Upgrade from 1.17.x to 1.18.x
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.
Upgrade from 1.16.x to 1.17.x
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.
Upgrade from 1.15.x to 1.16.x
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.
Upgrade from 1.14.x to 1.15.x
With 1.15.x release, following changes are made:
-
fission-corechart is removed -
fission-allchart is made similarfission-corechart -
In the
fission-allchart, the following components are disabled which were enabled by default earlier. If you want to enable them, please use--setflag.- nats - Set
nats.enabled=trueto enable Fission Nats integration - influxdb - Set
influxdb.enabled=trueto enable Fission InfluxDB and logger component - prometheus - Set
prometheus.enabled=trueto install Prometheus with Fission - canaryDeployment - Set
canaryDeployment.enabled=trueto enable Canary Deployment
- nats - Set
Migrating from fission-core chart
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
Configuration
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.
Multiple releases
The same chart can be used to run multiple Fission instances in the same cluster if required.