Installation
Install via Docker
Now visit localhost:3000 in your browser.
Use Postgres as the application database
SQLite is the default storage database for CueObserve. However, it might not be suitable for production. To use Postgres instead, do the following:
Uncomment given variable in .env
file:
Authentication
CueObserve comes with built-in authentication (powered by Django). By default authentication is disabled, to enable authentication uncomment given variables.
If authentication is enabled you can access the Django Admin console to do the database operations with a nice UI. To access Django Admin go to http://localhost:3000/admin and enter the username and password provided in the .env
file.
Email Notification
CueObserve comes with built-in email alert notification system(powered by Django). By default email notifications are disabled, to enable notifications uncomment given variables.
Allow less secure apps: ON for your given EMAIL_HOST_USER email Id, click on enable access to less secure app
Unlock Captcha for your gmail account, click on Unlock Captcha
Scaling Anomaly Detection using AWS Lambda
By default Anomaly Detection tasks run on a celery workers, which are limited by CPU cores hence, limiting the parallelisation. For running 1000's of anomaly detection tasks simultaneously one available option is AWS Lambda. For configuring CueObserve to use AWS Lambda follow the steps:
Requirements
AWS ECR - Image Registry for lambda service
Steps
Building and Deploying Image to ECR
Ensure you have aws-cli
installed
Run below script after installing aws-cli
and updating variable values
Setting up Lambda
Open the Functions page of the Lambda console.
Choose Create function.
Choose the Container image option.
Under Basic information,
For function name, enter "cueObserveAnomalyDetection".
For Container image URI select "cueobserve-lambda-image" repository & 'latest" tag.
Choose Create function.
Go to "cueObserveAnomalyDetection" function's details page & in Function Overview select + Add Trigger.
Select API Gateway
Select Create an API > "Rest API" with "open" security.
Choose Add.
In function details page, select Configuration > General Configuration and update Memory to "512 MB" & Timeout to "30 sec".
Configuring CueObserve
Update variables in .env and .env.dev file
Install on Kubernetes
To install CueObserve on kubernetes you need helm installed. To install follow these steps
Scaling Application
Scaling is only supported only in Kubernetes deployment and you need Keda 2.0.0 installed. It is enabled by default, to disable scaling, update following variables in k8s/cue-observe/values.yml
before installing CueObserve on kubernetes.
Whenever an anomaly detection is ran it scales up celery-workers & scales down in some time when finished.
Infra Requirements
The minimum infrastructure requirement for CueObserve is 1 GB RAM/ 1 CPU. If Multiple CPUs(cores) are provided, they can be utilized by tasks like Anomaly Detection & Root Cause Analysis for faster processing.
Last updated