Getting Started
In order to automate the steps required to deploy a fully functional Lamassu instance, a handy script known as the fast-lane script. In order to use such script make sure to have a functional kubernetes cluster.
Info
If you need to deploy a simple kubernetes single-node cluster, follow this guide to launch a microk8s instance or this guide to launch a k3s instance
Installing Lamassu is as simple as running this commands and following the simple terminal-based wizzard:
curl -fsSL -o lamassu-fast-lane.sh https://raw.githubusercontent.com/lamassuiot/lamassu-helm/main/scripts/lamassu-fast-lane.sh
chmod +x lamassu-fast-lane.sh
bash lamassu-fast-lane.sh
Fast-Lane options
Non Interactive
By default, the script operates in an interactive mode, which means it prompts the user for input during its execution. However, the non-interactive mode allows the script to run without requiring user input. It is advised to specif This mode is activated by providing certain flags when running the script.
It is recommended to have a look to other flag options such as domain
or
tls-crt
and tls-key
to name a few
bash lamassu-fast-lane.sh --non-interactive
Custom / External TLS Certificates
In order to use custom or external TLS certificates to be used by Lamassu's API Gateway, it is required to provide the path to the PEM encoded certificate and key files.
bash lamassu-fast-lane.sh --tls-crt /path/to/cert.pem --tls-key /path/to/key.pem
Offline
The offline mode enables installing Lamassu in airgap environments. This mode requires the user to have the helm charts for Lamassu, RabbitMQ and Postgres as well as the used docker images already downloaded and present in the kubernetes cluster.
In order to enable the offline mode, it is required to provide the path to the helm charts for Lamassu, RabbitMQ and Postgres.
Although not required, consider also adding the --non-interactive
flag to
avoid any user input during the installation process.
bash lamassu-fast-lane.sh --offline --helm-chart-lamassu ./helm-lamassu-2.5.2.tgz --helm-chart-rabbitmq ./helm-rabbitmq-14.1.0.tgz --helm-chart-postgres ./helm-postgresql-15.2.7.tgz --non-interactive
All Options
The following table lists the available options for the fast-lane script:
Flag | Description | Default |
---|---|---|
-h, --help | Display help message | |
-n, --non-interactive | Enable non-interactive mode | not set / interactive |
-ns, --namespace | Kubernetes Namespace where LAMASSU will be deployed | lamassu-dev |
-d, --domain | Domain to be set while deploying LAMASSU | dev.lamassu.io |
--offline | Offline mode enabled | not set / online |
--tls-crt | Path to the PEM encoded certificate used for downstream communications | not set |
--tls-key | Path to the PEM encoded key used for downstream communications | not set |
--helm-chart-lamassu | Path to the Lamassu helm chart (.tgz format) | not set |
--helm-chart-postgres | Path to the Postgres helm chart (.tgz format) | not set |
--helm-chart-rabbitmq | Path to the RabbitMQ helm chart (.tgz format) | not set |
Upgrading Lamassu
There are two kinds of situations that may require an upgrade of the Lamassu instance:
Update the configuration of the Lamassu instance: The fastlane script
deploys lamassu with a starting configuration. If you need to update the
configuration of the Lamassu instance, you must update the values in the
lamassu.yaml
file and then run the helm upgrade
command as shown below:
helm upgrade lamassu lamassuiot/lamassu -f lamassu.yaml -n lamassu-dev
Update the Lamassu version: Depending on each upgrade, the update procedure may very. In general, the following steps are required:
-
Update the helm repository:
helm repo update
-
List the available versions of the Lamassu helm chart:
helm search repo lamassuiot/lamassu
-
Depending on the upgrade, the helm chart may have changed. In this case, you must update the helm chart values in the
lamassu.yaml
file. -
Run the
helm upgrade
command:helm upgrade lamassu lamassuiot/lamassu -f lamassu.yaml -n lamassu-dev --version <chart_version>