Service Overview
The Qinling project consists of the following components:
- qinling-api
- A WSGI app that authenticates and routes requests to qinling-engine after
a preliminary handling for the request.
- qinling-engine
- A standalone service whose purpose is to process operations such as runtime
maintenance, function execution operations, function autoscaling, etc.
- kubernetes
- Qinling uses kubernetes as the default backend orchestrator, in order to
manage and maintain the underlying pods to run the functions.
- database
- Qinling needs to interact with the database(usually MySQL) to store and
retrieve resource information.
- etcd
- etcd is a distributed key-value store that provides fast read/write
operations for some specific internal resources in Qinling such as the
mapping from functions to the function services, mapping from function to the
workers, etc. In addition, etcd provides the locking mechanism in Qinling.
- Messaging queue
- Routes information between the Qinling processes.
Additionally, users can interact with Qinling service either by sending HTTP
request or using openstack CLI provided by
python-qinlingclient.
Qinling Horizon dashboard is also available
here.