Will operate in the EMDC level to extract metrics and efficiently organize them. Licensed under MIT license
Storage Components: Object Storage (MinIO), Timeseries DB (TimescaleDB), Graph Store (Neo4j)Metrics Catalogue: REST API that exposes stored information and data in all storagesPull-Push Metrics Pipelines: Confluent Kafka, Prometheus, Metrics ScrapperMetrics Consumer: Kafka Consumer which receives extracted metrics
cd config/external/k8s/workflowcd minio/
kubectl apply -f pv.yaml
kustomize build infra | kubectl apply -f -
cd mc/
kubectl apply -f .cd prefect/
bash make_server.sh
cd set_prefect_scripts/
kubectl apply -f deployment.yaml
cd ../
bash make_agent.shcd jupyter/
kubectl apply -f . kubectl port-forward svc/console 9090:9090 -n minio-operator
kubectl describe secrets/console-sa-secret -n minio-operatorkubectl port-forward svc/prefect-server 4200:4200kubectl port-forward svc/notebook 8888:8888prefect deployment build flows/manage_metrics_flow.py:manage_metrics_flow -n 'manage_metrics_flow' -ib kubernetes-job/prod -sb 'remote-file-system/minio' --pool aces
prefect deployment apply manage_metrics_flow-deployment.yaml cd config/k8s/external/storage-componentscd neo4j/standalone
bash setup.shcd timescaledb
kubectl apply -f .kubectl port-forward svc/neo4j 7474:7474kubectl port-forward svc/timescaledb 5432:5432
cd storage/timescaledb
python init_table.pyHow to build Metrics catalogue dockerfilesee documentation herecd config/k8s/aces/metrics_cataloguekubectl apply -f .kubectl port-forward svc/metrics-catalogue 8000:8000- Init the Metrics Management System using the following CURL API
curl -X 'GET' \
'http://localhost:8000/init' \
-H 'accept: application/json'cd config/k8s/external/pull-push-pipeline
cd kafkakubectl apply -f .
cd prometheusbash setup.sh
cd prom-adapterkubectl apply -f .
kubectl port-forward svc/control-center 9021:9021How to build Metrics consumer dockerfilesee documentation herecd config/k8s/aces/metrics_consumerkubectl apply -f .