新增部署Prometheus监控工具脚本;更新README.md文件

This commit is contained in:
2023-12-12 16:08:29 +08:00
committed by huty
parent 32e4e8070b
commit 30c8ad0f9a
98 changed files with 4591 additions and 2 deletions

View File

@@ -0,0 +1,2 @@
---
flag: ~/.flag/{{ role_name }}

View File

@@ -0,0 +1,63 @@
---
# 校验 Blackbox Exporter 是否安装
- name: '<{{ cmd | upper }}> | 校验 Blackbox Exporter 是否安装'
stat:
path: '{{ flag }}'
register: ret
# 安装 Blackbox Exporter
- block:
- name: '<{{ cmd | upper }}> | 创建 Blackbox Exporter 相关目录'
file:
path: '{{ item.value }}'
state: directory
loop: '{{ blackbox_exporter.dir | dict2items }}'
- name: '<{{ cmd | upper }}> | 安装 Blackbox Exporter'
template:
src: '{{ item.src }}'
dest: '{{ item.dest }}'
loop:
- src: docker-compose.yml.j2
dest: '{{ blackbox_exporter.dir.main }}/docker-compose.yml'
- src: conf/blackbox.yml.j2
dest: '{{ blackbox_exporter.dir.conf }}/blackbox.yml'
- name: '<{{ cmd | upper }}> | 启动 Blackbox Exporter 容器'
shell: |
. /etc/profile
chown -R 65534.65534 {{ blackbox_exporter.dir.conf }}
cd {{ blackbox_exporter.dir.main }}
docker-compose down
docker-compose up -d
- name: '<{{ cmd | upper }}> | 等待 Blackbox Exporter 服务启动'
wait_for:
port: '{{ blackbox_exporter.port }}'
- name: '<{{ cmd | upper }}> | 创建 Blackbox Exporter 安装标记'
shell: |
set -ex
mkdir -p ~/.flag
touch {{ flag }}
when:
- cmd == "install"
- not ret.stat.exists
# 卸载 Blackbox Exporter
- block:
- name: '<{{ cmd | upper }}> | 卸载 Blackbox Exporter'
shell: |
. /etc/profile
cd {{ blackbox_exporter.dir.main }}
docker-compose down
- name: '<{{ cmd | upper }}> | 清除 Blackbox Exporter 相关文件'
shell: |
rm -rf {{ blackbox_exporter.dir.main }}
rm -rf {{ flag }}
when:
- cmd == "remove"
- ret.stat.exists

View File

@@ -0,0 +1,50 @@
modules:
http_2xx:
prober: http
timeout: 10s
http_post_2xx:
prober: http
http:
method: POST
tcp_connect:
prober: tcp
pop3s_banner:
prober: tcp
tcp:
query_response:
- expect: "^+OK"
tls: true
tls_config:
insecure_skip_verify: false
grpc:
prober: grpc
grpc:
tls: true
preferred_ip_protocol: "ip4"
grpc_plain:
prober: grpc
grpc:
tls: false
service: "service1"
ssh_banner:
prober: tcp
tcp:
query_response:
- expect: "^SSH-2.0-"
- send: "SSH-2.0-blackbox-ssh-check"
irc_banner:
prober: tcp
tcp:
query_response:
- send: "NICK prober"
- send: "USER prober prober prober :prober"
- expect: "PING :([^ ]+)"
send: "PONG ${1}"
- expect: "^:[^ ]+ 001"
icmp:
prober: icmp
icmp_ttl5:
prober: icmp
timeout: 5s
icmp:
ttl: 5

View File

@@ -0,0 +1,22 @@
version: "3.9"
services:
blackbox-exporter:
image: {{ blackbox_exporter.image }}
container_name: {{ docker.network.name }}-blackbox-exporter
hostname: blackbox-exporter
restart: always
volumes:
- /etc/localtime:/etc/localtime:ro
- {{ blackbox_exporter.dir.conf }}/blackbox.yml:/etc/blackbox_exporter/config/blackbox.yml:ro
networks:
- {{ docker.network.name }}
ports:
- {{ blackbox_exporter.port }}:9115
environment:
- config.file=/etc/blackbox_exporter/config/blackbox.yml
networks:
{{ docker.network.name }}:
external: true
name: {{ docker.network.name }}