Sign inSign up

currycan/node-exporter

By currycan

•Updated almost 8 years ago

node-exporter

Image
0

229

currycan/node-exporter repository overview

⁠1、准备
基础环境:所有机器安装docker、完成时间校准

⁠2、关闭防火墙

所有机器运行

systemctl stop firewalld
systemctl disable firewalld

⁠3、创建docker swarm集群

a、在prometheus主机上运行

docker swarm init

控制台会打印加入集群口令,如:

docker swarm join --token SWMTKN-1-69tr1fx5grwub5b7zi7qq4tq1crkddpurvf44kn3m57eb0w3xw-1xdagda6avqc512j88j9db70t 192.168.211.117:2377

Tips: 如忘记口令,可通过以下命令查询

docker swarm join-token worker

b、所有需要监控节点运行加入监控口令,如:

docker swarm join --token SWMTKN-1-69tr1fx5grwub5b7zi7qq4tq1crkddpurvf44kn3m57eb0w3xw-1xdagda6avqc512j88j9db70t 192.168.211.117:2377

运行完后,可在manager节点查询节点信息:

docker node ls

c、拉取exporter镜像 所有节点都需要用到:cadvisor、node-exporter、dockerd-exporter

docker pull harbor.iibu.com/base/cadvisor:v0.31.0
docker pull harbor.iibu.com/base/node-exporter:v0.16.0
docker pull harbor.iibu.com/base/dockerd-exporter:v0.0.1

d、修改配置 ./prometheus/config 如需要监控rabbitmq,配置其IP端口 ./docker-compose.yml 修改redis_exporter、mysqld_exporter 配置项 e、主节点启动服务 在docker-compose.yml所在目录运行

mkdir -p /monitor/grafana/data   
mkdir -p /monitor/prometheus/data   
docker stack deploy -c docker-compose.yml monitor

服务启动后可查询启动状态:

docker service ls

如:

[root@sup117211 ~]# docker service ls
ID                  NAME                       MODE                REPLICAS            IMAGE                                          PORTS
x5zqc37rgth3        monitor_alertmanager       replicated          0/0                 harbor.iibu.com/base/alertmanager:v0.15.2      
bsy8fkk0cmvg        monitor_caddy              replicated          1/1                 harbor.iibu.com/base/caddy:v0.11.0             *:23000->3000/tcp, *:28080->8080/tcp, *:29080->9080/tcp, *:29090-29091->9090-9091/tcp, *:29093->9093/tcp, *:29100->9100/tcp, *:29323->9323/tcp
43eg2l8h7knb        monitor_cadvisor           global              18/18               harbor.iibu.com/base/cadvisor:v0.31.0          
exe9cf1oyd1r        monitor_dockerd-exporter   global              17/18               harbor.iibu.com/base/dockerd-exporter:v0.0.1   
7fs33k5x5bgo        monitor_grafana            replicated          1/1                 harbor.iibu.com/base/grafana:v5.3.1            
3rcxs9ngy1k2        monitor_node-exporter      global              18/18               harbor.iibu.com/base/node-exporter:v0.16.0     
x88hm8yrbtpu        monitor_prometheus         replicated          1/1                 harbor.iibu.com/base/prometheus:v2.4.3         
9xrx7pnojyab        monitor_pushgateway        replicated          1/1                 harbor.iibu.com/base/pushgateway:v0.6.0        
2doq1da3frdd        monitor_unsee              replicated          1/1                 harbor.iibu.com/base/unsee:v0.9.2 

⁠4、删除集群
docker stack rm monitor   
docker container prune   

⁠5、相关命令

a、更新docker-compose文件

docker stack deploy -c docker-compose.yml <swarm name>_<app_name>

b、更新config文件

docker service rm <swarm name>_<app_name>
docker config rm <swarm name>_<config_name>
docker stack deploy -c docker-compose.yml <swarm name>_<app_name>

c、集群节点down

# manager节点上删除该节点
docker node rm <node_id>
# manager节点查询加入口令
docker swarm join-token worker/manager
# down节点上运行加入节点口令
docker swarm join --token <token> <manager_ip>:2377

d、集群节点添加label

docker node update --label-add <key>=<value> <node_name>

e、如何查看节点label

docker node inspect <node_name>

f、更新服务镜像版本

docker service update --image <image_name:tag> <swarm name>_<app_name>
可以增加优化参数
# 设定容器间更新时间间隔
--update-delay 10s \
# 更新时同时并行更新数量,默认1
--update-parallelism 2 \
# 任务容器更新失败时的模式 continue为继续使用
--update-failure-action continue

g、回滚版本

docker service update --rollback <swarm name>_<app_name>
可以增加优化参数
--rollback-parallelism 2 \
--rollback-monitor 20s \
--rollback-max-failure-ratio .2 \

Tag summary

Content type

Image

Digest

Size

14.4 MB

Last updated

almost 8 years ago

docker pull currycan/node-exporter:v0.16.0