-
Notifications
You must be signed in to change notification settings - Fork 1
Edge Cloud
Dimitris Lioprasitis edited this page Feb 9, 2021
·
2 revisions
On Edge node Prometheus server and the two exporters need to be installed.
Node exporter collects OS metrics from the underlying Edge Cloud machine.
- Install Node exporter on Edge node:
https://prometheus.io/docs/guides/node-exporter/
Prometheus exporter for metrics provided by Amarisoft RAN socket API, written in `Go`. The exporter needs to be placed on a network accessible from Prometheus server and Amarisoft.
Download and extract the latest executable for your architecture and edit the config.yml.
Binaries availlable for amd64
, arm64
and 386
linux platforms.
Example:
- Extract binary:
tar -xf amari-exporter-linux-amd64.tar.gz
cd amari-exporter-linux-amd64
- Specify the port exporter is running on Edge node, the interval to query Amarisoft API and Amarisoft url
config.yml
amari_url: ws://192.168.137.10:9001/
port: 3333
interval: 10s
- Pass the config.yml as flag to binary
./amarisoft-exporter-linux-amd64 -config config.yml
- Amarisoft exporter is now running, you can verify metrics show up
Prometheus server scrapes both exporters (targets), performs filtering on collected metrics and publishes to remote Influx DB.
-
Install Prometheus server either as standalone or using Docker image
-
Configure targets to scrape, remote write to Influx DB and metrics filtering using a config.yml:
# Remote write configuration for Influx
remote_write:
- url: "http://{influx_host}:{port}/api/v1/prom/write?db={db}&u={user}&p={pass}"
scrape_configs:
- job_name: ‘amari exporter’
scrape_interval: 15s
static_configs:
- targets: ["{url}:{port}"]
- job_name: 'node_exporter_dellEdge'
scrape_interval: 15s
static_configs:
- targets: ["{url}:{port}"]
metric_relabel_configs:
- source_labels: [__name__]
regex: 'node_cpu_seconds_total|node_memory_Buffers_bytes|node_memory_Cached_bytes|node_memory_Mem.+|node_memory_Swap.+|node_network_receive_bytes_total|node_network_transmit_bytes_total|node_filesyste$
action: keep
Example:
prometheus.yml
# Remote write configuration for Influx
remote_write:
- url: "http://10.10.x.x:8086/api/v1/prom/write?db=prometheus_db&u=user&p=passwd"
scrape_configs:
- job_name: 'amari_exporter'
scrape_interval: 15s
static_configs:
- targets: ["localhost:3333"]
- job_name: 'node_exporter_dellEdge'
scrape_interval: 15s
static_configs:
- targets: ["localhost:9100"]
metric_relabel_configs:
- source_labels: [__name__]
regex: 'node_cpu_seconds_total|node_memory_Buffers_bytes|node_memory_Cached_bytes|node_memory_Mem.+|node_memory_Swap.+|node_network_receive_bytes_total|node_network_transmit_bytes_total|node_filesyste$
action: keep