新增部署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,65 @@
---
# 校验 Loki 是否安装
- name: '<{{ cmd | upper }}> | 校验 Loki 是否安装'
stat:
path: '{{ flag }}'
register: ret
# 安装 Loki
- block:
- name: '<{{ cmd | upper }}> | 创建 Loki 相关目录'
file:
path: '{{ item.value }}'
state: directory
loop: '{{ loki.dir | dict2items }}'
- name: '<{{ cmd | upper }}> | 安装 Loki'
template:
src: '{{ item.src }}'
dest: '{{ item.dest }}'
loop:
- src: docker-compose.yml.j2
dest: '{{ loki.dir.main }}/docker-compose.yml'
- src: conf/loki-config.yaml.j2
dest: '{{ loki.dir.conf }}/loki-config.yaml'
- name: '<{{ cmd | upper }}> | 启动 Loki 容器'
shell: |
. /etc/profile
chown -R 10001.10001 {{ loki.dir.conf }}
cd {{ loki.dir.main }}
docker-compose down
docker-compose up -d
- name: '<{{ cmd | upper }}> | 等待 Loki 服务启动'
wait_for:
port: '{{ loki.port }}'
- name: '<{{ cmd | upper }}> | 创建 Loki 安装标记'
shell: |
set -ex
mkdir -p ~/.flag
touch {{ flag }}
when:
- cmd == "install"
- not ret.stat.exists
- loki.enable
# 卸载 Loki
- block:
- name: '<{{ cmd | upper }}> | 卸载 Loki'
shell: |
. /etc/profile
cd {{ loki.dir.main }}
docker-compose down
- name: '<{{ cmd | upper }}> | 清除 Loki 相关文件'
shell: |
rm -rf {{ loki.dir.main }}
rm -rf {{ flag }}
when:
- cmd == "remove"
- ret.stat.exists
- loki.enable

View File

@@ -0,0 +1,30 @@
auth_enabled: false
server:
http_listen_port: 3100
grpc_listen_port: 9096
common:
path_prefix: /tmp/loki
storage:
filesystem:
chunks_directory: /tmp/loki/chunks
rules_directory: /tmp/loki/rules
replication_factor: 1
ring:
instance_addr: 127.0.0.1
kvstore:
store: inmemory
schema_config:
configs:
- from: 2020-10-24
store: boltdb-shipper
object_store: filesystem
schema: v11
index:
prefix: index_
period: 24h
ruler:
alertmanager_url: http://{{ groups.server.0 }}:{{ alertmanager.port }}

View File

@@ -0,0 +1,21 @@
version: "3.9"
services:
loki:
image: {{ loki.image }}
container_name: {{ docker.network.name }}-loki
hostname: loki
restart: always
volumes:
- /etc/localtime:/etc/localtime:ro
- {{ loki.dir.conf }}/loki-config.yaml:/etc/loki/loki-config.yaml
networks:
- {{ docker.network.name }}
ports:
- {{ loki.port }}:3100
command: "-config.file=/etc/loki/loki-config.yaml"
networks:
{{ docker.network.name }}:
external: true
name: {{ docker.network.name }}