diff --git a/CHANGELOG.md b/CHANGELOG.md index eedd40833..cda2699bc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,22 +1,28 @@ Percona Monitoring and Management (PMM) Server -unreleased 2016-06-24 +v1.0.2 unreleased 2016-07-21 -* Prometheus 0.20.0 -* Various updates for MongoDB dashboards -* Minor updates to the landing page +* Grafana 3.1.0. +* Prometheus 1.0.0. +* Set default metrics retention to 30 days. +* Eliminated port 9001. Now the container uses only one configurable port, 80 by default. +* Eliminated the need to specify ADDRESS variable when creating docker container. +* Added support to name instances using the new pmm-admin. +* Redesigned query profile table on Query Analytics App. +* Added sparkline charts to Query Analytics App. +* Various updates for MongoDB dashboards. v1.0.1 released 2016-06-09 -* Grafana 3.0.4 -* Prometheus 0.19.2 -* Added MongoDB dashboards -* Replaced prom-config-api with Consul 0.6.4 -* Eliminated most of the ports for PMM server container (now only two: 9001 and configurable 80) -* Added "Server Summary" with aggregated query metrics to QAN app -* MySQL dashboard updates, added "MySQL InnoDB Metrics Advanced" dashboard -* Added options to configure Prometheus memory and retention +* Grafana 3.0.4. +* Prometheus 0.19.2. +* Added MongoDB dashboards. +* Replaced prom-config-api with Consul 0.6.4. +* Eliminated most of the ports for PMM server container (now only two: 9001 and configurable 80). +* Added "Server Summary" with aggregated query metrics to QAN app. +* MySQL dashboard updates, added "MySQL InnoDB Metrics Advanced" dashboard. +* Added options to configure Prometheus memory and retention. v1.0.0 released 2016-04-17 -* First release +* First release. diff --git a/Dockerfile b/Dockerfile index e19e20604..1fdb45fad 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,6 @@ FROM ubuntu:latest -EXPOSE 80 9001 +EXPOSE 80 WORKDIR /opt @@ -22,9 +22,9 @@ RUN apt-get -y update && apt-get install -y \ # Prometheus # # ########## # -ADD https://github.com/prometheus/prometheus/releases/download/0.20.0/prometheus-0.20.0.linux-amd64.tar.gz /opt/ +ADD https://github.com/prometheus/prometheus/releases/download/v1.0.0/prometheus-1.0.0.linux-amd64.tar.gz /opt/ RUN mkdir prometheus && \ - tar xfz prometheus-0.20.0.linux-amd64.tar.gz --strip-components=1 -C prometheus + tar xfz prometheus-1.0.0.linux-amd64.tar.gz --strip-components=1 -C prometheus COPY prometheus.yml /opt/prometheus/ # ####### # @@ -51,13 +51,13 @@ RUN chgrp grafana /etc/grafana/grafana.ini && \ # Percona Query Analytics # # ####################### # -ADD https://www.percona.com/downloads/TESTING/pmm/percona-qan-api-1.0.0-20160607.067b82c-x86_64.tar.gz \ - https://www.percona.com/downloads/TESTING/pmm/percona-qan-app-1.0.0-20160610.f450c8e.tar.gz \ +ADD https://www.percona.com/downloads/TESTING/pmm/percona-qan-api-1.0.0-20160706.9f5c394-x86_64.tar.gz \ + https://www.percona.com/downloads/TESTING/pmm/percona-qan-app-1.0.0-20160706.2df9671.tar.gz \ /opt/ RUN mkdir qan-api && \ - tar zxf percona-qan-api-1.0.0-20160607.067b82c-x86_64.tar.gz --strip-components=1 -C qan-api && \ + tar zxf percona-qan-api-1.0.0-20160706.9f5c394-x86_64.tar.gz --strip-components=1 -C qan-api && \ mkdir qan-app && \ - tar zxf percona-qan-app-1.0.0-20160610.f450c8e.tar.gz --strip-components=1 -C qan-app + tar zxf percona-qan-app-1.0.0-20160706.2df9671.tar.gz --strip-components=1 -C qan-app COPY install-qan.sh /opt RUN /opt/install-qan.sh diff --git a/VERSION b/VERSION index 7dea76edb..6d7de6e6a 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.0.1 +1.0.2 diff --git a/docker-compose.yml b/docker-compose.yml index 1b859583b..53db6bc4a 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -16,12 +16,9 @@ services: container_name: pmm-server image: percona/pmm-server ports: - - "9001:9001" - "80:80" volumes_from: - pmm-data - ### EDIT WITH YOUR IP ### - environment: - - ADDRESS=192.168.56.107 - #- METRICS_RETENTION=192h - #- METRICS_MEMORY=262144 +# environment: +# - METRICS_RETENTION=720h +# - METRICS_MEMORY=262144 diff --git a/install-qan.sh b/install-qan.sh index 2863c6a8d..22ca00fe2 100755 --- a/install-qan.sh +++ b/install-qan.sh @@ -5,6 +5,8 @@ set -eu service mysql start # START=no SYSINT=no because Supervisor starts and manages these processes. - cd /opt/qan-api START="no" SYSINT="no" ./install + +# Define /qan-api path for QAN app +sed -i "s/':9001',/':' + window.location.port + '\/qan-api',/" /opt/qan-app/client/app/app.js diff --git a/landing-page/index.html b/landing-page/index.html index 5b4f163df..0ebe0c8a8 100644 --- a/landing-page/index.html +++ b/landing-page/index.html @@ -46,7 +46,7 @@

Percona Monitoring and Management

-

Percona Monitoring and Management (PMM) is a free and open-source solution for managing and monitoring MySQL performance, and provides thorough time-based analysis of MySQL performance to ensure that your data works as efficiently as possible.

+

Percona Monitoring and Management (PMM) is a free and open-source solution for managing and monitoring performance on MySQL and MongoDB, and provides time-based analysis of performance to ensure that your data works as efficiently as possible.

diff --git a/nginx.conf b/nginx.conf index e752eed82..c2c997026 100644 --- a/nginx.conf +++ b/nginx.conf @@ -55,6 +55,11 @@ http { location /qan-api { proxy_pass http://localhost:9001; rewrite ^/qan-api/(.*) /$1 break; + proxy_set_header Host $http_host; + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "upgrade"; + proxy_read_timeout 86400; } } } diff --git a/prometheus.yml b/prometheus.yml index 07cda8c09..b4adfb370 100644 --- a/prometheus.yml +++ b/prometheus.yml @@ -6,7 +6,7 @@ global: scrape_configs: - job_name: prometheus metrics_path: /prometheus/metrics - target_groups: + static_configs: - targets: ['localhost:9090'] @@ -20,20 +20,20 @@ scrape_configs: regex: '(.*)' target_label: 'job' replacement: '$1' - - source_labels: ['__meta_consul_node'] - regex: '(.*)' + - source_labels: ['__meta_consul_tags'] + regex: '.*,alias_([\w-:\.]+),.*' target_label: 'alias' replacement: '$1' - source_labels: ['__meta_consul_tags'] - regex: '.*,replset_([\w-]+),.*' + regex: '.*,replset_([\w-\.]+),.*' target_label: 'replset' replacement: '$1' - source_labels: ['__meta_consul_tags'] - regex: '.*,cluster_([\w-]+),.*' + regex: '.*,cluster_([\w-\.]+),.*' target_label: 'cluster' replacement: '$1' - source_labels: ['__meta_consul_tags'] - regex: '.*,nodetype_([\w-]+),.*' + regex: '.*,nodetype_([\w-\.]+),.*' target_label: 'nodetype' replacement: '$1' @@ -46,8 +46,8 @@ scrape_configs: relabel_configs: - target_label: 'job' replacement: 'mysql' - - source_labels: ['__meta_consul_node'] - regex: '(.*)' + - source_labels: ['__meta_consul_tags'] + regex: '.*,alias_([\w-:\.]+),.*' target_label: 'alias' replacement: '$1' @@ -62,8 +62,8 @@ scrape_configs: relabel_configs: - target_label: 'job' replacement: 'mysql' - - source_labels: ['__meta_consul_node'] - regex: '(.*)' + - source_labels: ['__meta_consul_tags'] + regex: '.*,alias_([\w-:\.]+),.*' target_label: 'alias' replacement: '$1' @@ -79,8 +79,8 @@ scrape_configs: relabel_configs: - target_label: 'job' replacement: 'mysql' - - source_labels: ['__meta_consul_node'] - regex: '(.*)' + - source_labels: ['__meta_consul_tags'] + regex: '.*,alias_([\w-:\.]+),.*' target_label: 'alias' replacement: '$1' diff --git a/supervisord.conf b/supervisord.conf index 7c5aa427a..fdc2830b7 100644 --- a/supervisord.conf +++ b/supervisord.conf @@ -24,7 +24,7 @@ autorestart = true [program:qan-api] priority = 4 -environment = BG=no,ADDRESS=%(ENV_ADDRESS)s +environment = BG=no,BASE_PATH=/qan-api command = /usr/local/percona/qan-api/start stdout_logfile = /var/log/qan-api.log stderr_logfile = /var/log/qan-api.log @@ -46,7 +46,7 @@ autorestart = true [program:prometheus] priority = 7 -command = bash -c "sleep 5 && /opt/prometheus/prometheus -config.file=/opt/prometheus/prometheus.yml -storage.local.path=/opt/prometheus/data -web.listen-address=:9090 -storage.local.retention=${METRICS_RETENTION:-192h} -storage.local.memory-chunks=${METRICS_MEMORY:-262144} -web.console.libraries=/opt/prometheus/console_libraries -web.console.templates=/opt/prometheus/consoles -web.external-url=http://localhost:9090/prometheus/" +command = bash -c "sleep 5 && /opt/prometheus/prometheus -config.file=/opt/prometheus/prometheus.yml -storage.local.path=/opt/prometheus/data -web.listen-address=:9090 -storage.local.retention=${METRICS_RETENTION:-720h} -storage.local.memory-chunks=${METRICS_MEMORY:-262144} -web.console.libraries=/opt/prometheus/console_libraries -web.console.templates=/opt/prometheus/consoles -web.external-url=http://localhost:9090/prometheus/" stdout_logfile = /var/log/prometheus.log stderr_logfile = /var/log/prometheus.log autorestart = true