Galileo FaaS
Project description
Galileo FaaS
This project aims to provide easy to use functions to monitor a running K3S cluster, including telemetry data and traces. The provided functions can help to build intelligent runtime optimizations, i.e., load balancing or scheduling strategies.
For this environment to work, you need to have the following setup:
- a running K3S cluster
- an etcd instance
- redis for storing nodeinfos and as pub/sub framework
- telemd daemons deployed to monitor resource usage
- telemd-kubernetes-adapter daemon deployed in the Kubernetes cluster that monitors all Pods an emits events upon changes.
In case you want to start a full-fledged experiment with galileo, you will also need:
- InfluxDB to store telemetry, traces and events
- MariaDB for experiment metadata
Visit the galileo-experiments project to get further information on setting up an experiment environment.
Example
Look for an example on how to quickly start all services under galileofaas.cli.main
.
Installation
Create a Python 3.9 virtual environment and install requirements.txt
and requirements-dev.txt
(see Makefile
).
Hint
Currently you have to install the following dependencies from source:
edgerun/faas and edgerun/skippy-core (model-updates
branch).
Environment Variables - Galileo FaaS
Variable | Default | Description |
---|---|---|
galileo_faas_logging | DEBUG | Log level (DEBUG, INFO, WARN, ERROR) |
galileo_faas_telemetry_window_size | 60 | the time window that will be cached, in s |
galileo_faas_trace_window_size | 60 | the time window that will be cached, in s |
galileo_faas_redis_host | localhost | |
galileo_faas_redis_port | 6379 | |
galileo_faas_redis_password | optional | Password for Redis |
galileo_faas_influxdb_url | http://localhost:8086 | URL to InfluxDB v2 instance |
galileo_faas_influxdb_token | token | Token for InluxDB instance |
galileo_faas_influxdb_org | org | InfluxDB organziation to save experiments in |
galileo_faas_influxdb_timeout | 10_000 | Timeout for InfluxDB connections (in ms) |
galileo_faas_k8s_config | local | Configures where the galileo-faas program is started (local or incluster ) |
galileo_faas_etcd_host | localhost | Host of the Etcd instance (relevant for load balancer to get weights) |
galileo_faas_etcd_port | 2379 | Port of the Etcd instance |
galileo_faas_async_pod | False | Set to True if Pod creation should by async |
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file edgerun-galileo-faas-0.0.1.dev9.tar.gz
.
File metadata
- Download URL: edgerun-galileo-faas-0.0.1.dev9.tar.gz
- Upload date:
- Size: 23.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 704be3130924cc31bdf38b4f3ecefc76fa5776e7aa5567db928a1f169d8e1749 |
|
MD5 | 6890bb73ddf96091b48c8977cb054baf |
|
BLAKE2b-256 | 77e97d898329fbc40f802e65afe1146bd79041127f4a4ac1c57f635116f54a5b |
File details
Details for the file edgerun_galileo_faas-0.0.1.dev9-py3-none-any.whl
.
File metadata
- Download URL: edgerun_galileo_faas-0.0.1.dev9-py3-none-any.whl
- Upload date:
- Size: 35.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d60df859db3f2039eeb6b002a9c6c0d1d29dfeb7929f450d063d19bfb3208060 |
|
MD5 | d71a489bf4e4dd7e7c471e912a752404 |
|
BLAKE2b-256 | 9d40c23187166305985079311a6715c0f3c33d46793c5eb44c8903a1abe00b6b |