mirror of
https://github.com/ansible/awx.git
synced 2026-01-11 10:00:01 -03:30
add an example config file and make target for starting a prometheus
This commit is contained in:
parent
e1c6057b4c
commit
fc9da002d2
3
Makefile
3
Makefile
@ -631,6 +631,9 @@ docker-compose-elk: docker-auth
|
||||
docker-compose-cluster-elk: docker-auth
|
||||
TAG=$(COMPOSE_TAG) DEV_DOCKER_TAG_BASE=$(DEV_DOCKER_TAG_BASE) docker-compose -f tools/docker-compose-cluster.yml -f tools/elastic/docker-compose.logstash-link-cluster.yml -f tools/elastic/docker-compose.elastic-override.yml up --no-recreate
|
||||
|
||||
prometheus:
|
||||
docker run -u0 --net=tools_default --link=`docker ps | egrep -o "tools_awx(_run)?_([^ ]+)?"`:awxweb --volume `pwd`/tools/prometheus:/prometheus --name prometheus -d -p 0.0.0.0:9090:9090 prom/prometheus --web.enable-lifecycle --config.file=/prometheus/prometheus.yml
|
||||
|
||||
minishift-dev:
|
||||
ansible-playbook -i localhost, -e devtree_directory=$(CURDIR) tools/clusterdevel/start_minishift_dev.yml
|
||||
|
||||
|
||||
@ -1,54 +1,11 @@
|
||||
# Prometheus Support
|
||||
|
||||
## Development
|
||||
AWX comes with an example prometheus container and make target. To use it:
|
||||
|
||||
Starting a Prometheus container.
|
||||
|
||||
docker run --net=tools_default --link=tools_awx_1:awxweb --volume <FULL_PATH>/prometheus.yml:/prometheus.yml --name prometheus -d -p 127.0.0.1:9090:9090 prom/prometheus --web.enable-lifecycle --config.file=/prometheus.yml
|
||||
|
||||
Example Prometheus config.
|
||||
|
||||
# prometheus.yml
|
||||
# my global config
|
||||
global:
|
||||
scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
|
||||
evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
|
||||
# scrape_timeout is set to the global default (10s).
|
||||
|
||||
# Alertmanager configuration
|
||||
alerting:
|
||||
alertmanagers:
|
||||
- static_configs:
|
||||
- targets:
|
||||
# - alertmanager:9093
|
||||
|
||||
# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
|
||||
rule_files:
|
||||
# - "first_rules.yml"
|
||||
# - "second_rules.yml"
|
||||
|
||||
|
||||
# A scrape configuration containing exactly one endpoint to scrape:
|
||||
# Here it's Prometheus itself.
|
||||
scrape_configs:
|
||||
# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
|
||||
- job_name: 'prometheus'
|
||||
# metrics_path defaults to '/metrics'
|
||||
# scheme defaults to 'http'.
|
||||
static_configs:
|
||||
- targets: ['localhost:9090']
|
||||
|
||||
- job_name: 'awx'
|
||||
tls_config:
|
||||
insecure_skip_verify: True
|
||||
metrics_path: /api/v2/metrics
|
||||
scrape_interval: 5s
|
||||
scheme: http
|
||||
params:
|
||||
format: ['txt']
|
||||
basic_auth:
|
||||
username: awx
|
||||
password: password
|
||||
static_configs:
|
||||
- targets:
|
||||
- awxweb:8013
|
||||
1. Edit `tools/prometheus/prometheus.yml` and update the `basic_auth` section
|
||||
to specify a valid user/password for an AWX user you've created.
|
||||
Alternatively, you can provide an OAuth2 token (which can be generated at
|
||||
`/api/v2/users/N/personal_tokens/`).
|
||||
2. Start the Prometheus container:
|
||||
`make prometheus`
|
||||
|
||||
1
tools/prometheus/.gitignore
vendored
Normal file
1
tools/prometheus/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
./data
|
||||
45
tools/prometheus/prometheus.yml
Normal file
45
tools/prometheus/prometheus.yml
Normal file
@ -0,0 +1,45 @@
|
||||
# prometheus.yml
|
||||
# my global config
|
||||
global:
|
||||
scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
|
||||
evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
|
||||
# scrape_timeout is set to the global default (10s).
|
||||
|
||||
# Alertmanager configuration
|
||||
alerting:
|
||||
alertmanagers:
|
||||
- static_configs:
|
||||
- targets:
|
||||
# - alertmanager:9093
|
||||
|
||||
# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
|
||||
rule_files:
|
||||
# - "first_rules.yml"
|
||||
# - "second_rules.yml"
|
||||
|
||||
|
||||
# A scrape configuration containing exactly one endpoint to scrape:
|
||||
# Here it's Prometheus itself.
|
||||
scrape_configs:
|
||||
# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
|
||||
- job_name: 'prometheus'
|
||||
# metrics_path defaults to '/metrics'
|
||||
# scheme defaults to 'http'.
|
||||
static_configs:
|
||||
- targets: ['127.0.0.1:9090']
|
||||
|
||||
- job_name: 'awx'
|
||||
tls_config:
|
||||
insecure_skip_verify: True
|
||||
metrics_path: /api/v2/metrics
|
||||
scrape_interval: 5s
|
||||
scheme: http
|
||||
params:
|
||||
format: ['txt']
|
||||
basic_auth:
|
||||
username: admin
|
||||
password: password
|
||||
# bearer_token: oauth-token
|
||||
static_configs:
|
||||
- targets:
|
||||
- awxweb:8013
|
||||
Loading…
x
Reference in New Issue
Block a user