Installation
Supported FIWARE GEs and third-party open source software
Supported FIWARE GEs
- Keyrock
- Wilma
- Orion
- Orion-LD
- Mintaka
- Cygnus
- Comet
- Perseo
- QuantumLeap
- WireCloud
- Ngsiproxy
- IoT Agent for UltraLight (over HTTP and MQTT)
- IoT Agent for JSON (over HTTP and MQTT)
Supported third-party open source software
- Node-RED
- Grafana
- Apache Zeppelin
- Mosquitto
- Elasticsearch (as a database for persitenting context data)
Requirements
Virtual machine
A virtual machine with a public IP address (global IP address) or a virtual machine that can be accessed from the Internet via a network equipment
Supported Linux distribution
The FIWARE Big Bang supports Ubuntu, Rocky Linux and AlmaLinux as Linux distribution. The recommended Linux distribution is Ubuntu 24.04.
- Ubuntu 24.04 LTS (Recommended Linux distribution)
- Ubuntu 22.04 LTS
- Ubuntu 20.04 LTS
- CentOS Stream release 9
- CentOS Stream release 8
- Rocky Linux 9
- Rocky Linux 8
- AlmaLinux 9
- AlmaLinux 8
Domain name
An own domain name is needed to access Web Applications and APIs with a domain name. You can access each Web Application or API with a sub-domain name.
Ports exposed on the internet
The Web Applications and APIs installed by FIWARE Big Bang uses some ports.
- Port 443 (HTTPS) is used by Web Applications and APIs
- Port 80 (HTTP) is used to get Let's encrypt Server certificates
- Port 1883 is used by Mosquitto when enabling MQTT
- Port 8883 is used by Mosquitto when enabling MQTT TLS
Prerequisite
Before running the setup script, you need to register sub-domain names of FIWARE GEs in DNS using A records or CNAME records.
- keyrock.example.com
- orion.example.com
Getting Started
Download a tar.gz file for the FIWARE Big Bang.
curl -sL https://github.com/lets-fiware/FIWARE-Big-Bang/releases/download/v0.40.0/FIWARE-Big-Bang-0.40.0.tar.gz | tar zxf -
Move to the FIWARE-Big-Bang-0.40.0
directory.
cd FIWARE-Big-Bang-0.40.0/
Run the lets-fiware.sh
script with your own domain name and a public IP address.
./lets-fiware.sh example.com XX.XX.XX.XX
Command syntax
The lets-fiware.sh
command accepts two arguments. The first argument is a domain name. The second one is
a public IP address. It can be omitted when your virtual machine has a public IP address.
./lets-fiware.sh DOMAIN_NAME [PUBLIC_IP_ADDRESS]
Examples:
- ./lets-fiware.sh example.com
- ./lets-fiware.sh example.com XX:XX:XX:XX
Configuration
You can specify configurations by editing the config.sh
file.
Please see each documentation for details as below:
- Keyrock
- Orion
- Orion-LD
- Mintaka
- Cygnus
- Comet
- Perseo
- Quantumleap
- IoT Agent for UltraLight
- IoT Agent for JSON
- WireCloud
- Node-RED
- Grafana
- Zeppelin
- Regproxy
- Queryproxy
- Certbot
- Firewall
Multi-server installation
The multi-server installation allows to install FIWARE GEs and other OSS to multiple servers. Please see this documentation for details.
Expose ports
Some FIWARE GEs and other OSS running in a Docker container can expose a port for their service. Please see this documentation for details.
Examples
Configuration examples are as shown:
Example 1
Configure Orion Context broker.
KEYROCK=keyrock
ORION=orion
Example 2
To store persistent context data to PostgreSQL, configure Cygnus and PostgreSQL.
KEYROCK=keyrock
ORION=orion
CYGNUS=cygnus
CYGNUS_POSTGRES=true
Example 3
To persists Time Series Context Data, configure Comet and Cygnus.
KEYROCK=keyrock
ORION=orion
COMET=comet
CYGNUS=cygnus
Example 4
Configure IoT Agent for UltraLight 2.0 over HTTP with basic authentication.
KEYROCK=keyrock
ORION=orion
IOTAGENT_UL=iotagent-ul
IOTAGENT_HTTP=iotagent-http
IOTA_HTTP_AUTH=basic
Example 5
Configure IoT Agent for UltraLight 2.0 over MQTT TLS.
KEYROCK=keyrock
ORION=orion
IOTAGENT_JSON=iotagent-json
MOSQUITTO=mosquitto
MQTT_TLS=true
Example 6
Configure WireCloud.
KEYROCK=keyrock
ORION=orion
WIRECLOUD=wirecloud
NGSIPROXY=ngsiproxy
Example 7
Configure Node-RED.
KEYROCK=keyrock
ORION=orion
NODE_RED=node-red