Configuration Reference
This reference guide provides details on configuring Faast for all parameters.
API Configuration
Here is an example of the API configuration:
apiVersion: lambdo.io/v1alpha1
kind: Config
api:
web_host: 0.0.0.0
web_port: 3000
grpc_host: 0.0.0.0
gprc_port: 50051
bridge: lambdo0
ip: 10.0.50.0/8
API Server
The API server configuration includes:
web_host
: The interface on which the API server will listenExample:
0.0.0.0
(all interfaces)web_port
: The port on which the API server will listenExample:
3000
gRPC Server
The gRPC server configuration includes:
grpc_host
: The interface on which the gRPC server will listenExample:
0.0.0.0
(all interfaces)gprc_port
: The port on which the gRPC server will listenExample:
50051
Bridge Configuration
The bridge configuration includes:
bridge
: The name of the bridgeExample:
lambdo0
ip
: The IP address of the bridgeExample:
10.0.50.0/8
VMM Configuration (Virtual Machine Monitor)
Here is an example of the VMM configuration:
apiVersion: lambdo.io/v1alpha1
kind: Config
vmm:
kernel: /var/lib/lambdo/kernel/vmlinux.bin
The VMM configuration includes:
kernel
: The path to the Linux kernel binary utilized by the VMMExample:
/var/lib/lambdo/kernel/vmlinux.bin
Agent Configuration
The agent configuration is not implemented yet.
Here is an example of the agent configuration:
apiVersion: lambdo.io/v1alpha1
kind: Config
agent: # NOT IMPLEMENTED
path: /usr/local/bin/lambdo-agent
config: /etc/lambdo/agent.yaml
The agent configuration includes:
path
: The path to the agent binaryExample:
/usr/local/bin/lambdo-agent
config
: The path to the agent configuration fileExample:
/etc/lambdo/agent.yaml
Language Runtime Configuration
Here is an example of the language runtime configuration:
apiVersion: lambdo.io/v1alpha1
kind: Config
languages:
- name: NODE
version: 12
initramfs: /var/lib/lambdo/initramfs/node-12.img
steps:
- name: Run the code
command: /usr/local/bin/node {{filename}}
output:
enabled: true
debug: false
The configuration for a Node.js runtime includes:
name
: The name of the runtimeExample:
NODE
version
: The version of the runtimeExample:
12
initramfs
: The path to the initramfs for the runtimeExample:
/var/lib/lambdo/initramfs/node-12.img
steps
: The steps to run the code. Each step includes the following parameters:name
: The name of the stepExample:
Run the code
command
: The command to run for the stepExample:
/usr/local/bin/node {{filename}}
output
: The output configuration for the step. This includes the following parameters:enabled
: Whether to enable the outputExample:
true
debug
: Whether to enable debug output (useful for build steps)Example:
false