1.镜像使用(一体化) 1.1.镜像安装 
手工配置
1 2 3 4 docker stop monitor docker rm monitor docker run --name monitor --privileged=true -p 9090:9090  -p 3000:3000  -d wuhaocn/monitor:1.0 docker update monitor --restart=always 
自动发现
1 2 3 4 5 docker stop monitor-consul docker rm monitor-consul docker run --name monitor-consul --privileged=true  -p 18500:8500  -p 19090:9090  -p 13000:3000  -d wuhaocn/monitor:2.0 docker update monitor-consul --restart=always 
注册节点信息
1 2 3 4 5 6 curl -X PUT -d '{"id": "test1","name": "test1","address": "192.168.56.12","port": 9100,"tags": ["service"],"checks": [{"http": "http://192.168.56.12:9100/","interval": "5s"}]}' http://192.168.56.12:8502/v1/agent/service/register curl -X PUT -d '{"id": "test1","name": "test1","address": "192.168.56.12","port": 9100,"tags": ["service"],"checks": [{"http": "http://192.168.56.12:9100/","interval": "5s"}]}' http://192.168.56.12:8502/v1/agent/service/unregister https://www.consul.io/api-docs/agent/service#register-service https://www.consul.io/api-docs/agent/service#deregister-service 
 
1.2.容器配置 docker exec -it monitor bash
配置修改地址
 /usr/local/grafana1 2 3 4 5 6 7 8 9 root@f23762ac5af0:/usr/local/grafana/conf# ll total 136 drwxr-xr-x 3 root root  4096 Mar 31 12:35 ./ drwxr-xr-x 1 root root  4096 Apr  7 02:09 ../ -rw-r--r-- 1 root root 56590 Mar 31 12:35 defaults.ini -rw-r--r-- 1 root root  2270 Mar 31 12:35 ldap.toml -rw-r--r-- 1 root root  1045 Mar 31 12:35 ldap_multiple.toml drwxr-xr-x 7 root root  4096 Mar 31 12:35 provisioning/ -rw-r--r-- 1 root root 57840 Mar 31 12:35 sample.ini 
 
/usr/local/prometheus 
 
1 2 3 4 5 6 7 8 9 10 11 12 13 root@f23762ac5af0:/usr/local/prometheus# ll total 197396 drwxr-xr-x 4 root root      4096 Apr  7 02:09 ./ drwxr-xr-x 1 root root      4096 Apr  7 02:16 ../ -rw-r--r-- 1 root root      6148 Apr  7 01:46 .DS_Store -rw-r--r-- 1 root root     11357 Mar 15 15:30 LICENSE -rw-r--r-- 1 root root      3773 Mar 15 15:30 NOTICE drwxr-xr-x 2 root root      4096 Mar 15 15:30 console_libraries/ drwxr-xr-x 2 root root      4096 Mar 15 15:30 consoles/ -rwxr-xr-x 1 root root 105137495 Mar 15 15:21 prometheus* -rw-r--r-- 1 root root       934 Apr  6 06:11 prometheus.yml -rwxr-xr-x 1 root root  96946761 Mar 15 15:23 promtool*        
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 root@9852cf5a3339:/# cat /usr/local/prometheus/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: 'mapplication'     metrics_path: /     static_configs:             - targets: ['192.168.3.41:8901'] 
1.3 配置生效 修改后重启配置
docker restart monitor
2.镜像使用(拆分) 2.1.安装 
1 2 3 4 5 6 7 8 9 docker stop prometheus docker rm prometheus docker run -d --name=prometheus  -p 9090:9090  prom/prometheus docker update prometheus --restart=always docker stop grafana docker rm grafana docker run -d --name=grafana  -p 3000:3000 grafana/grafana docker update grafana --restart=always 
1 2 3 4 docker stop prometheus docker rm prometheus docker run -d --name=prometheus  -p 9090:9090  -v /home/rcloud/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus docker update prometheus --restart=always 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 global:   # 默认情况下,每15s拉取一次目标采样点数据。   scrape_interval:     15s   # 我们可以附加一些指定标签到采样点度量标签列表中, 用于和第三方系统进行通信, 包括:federation, remote storage, Alertmanager   external_labels:     # 下面就是拉取自身服务采样点数据配置     monitor: 'codelab-monitor' scrape_configs:   # job名称会增加到拉取到的所有采样点上,同时还有一个instance目标服务的host:port标签也会增加到采样点上   - job_name: 'prometheus'     # 覆盖global的采样点,拉取时间间隔5s     scrape_interval: 5s     static_configs:       - targets: ['localhost:9090'] 
2.2 登录配置 
app(metrics)–data–> (?) + prometheus + grafana