新增部署Prometheus监控工具脚本;更新README.md文件
This commit is contained in:
2
prometheus/roles/loki/defaults/main.yml
Normal file
2
prometheus/roles/loki/defaults/main.yml
Normal file
@@ -0,0 +1,2 @@
|
||||
---
|
||||
flag: ~/.flag/{{ role_name }}
|
||||
65
prometheus/roles/loki/tasks/main.yml
Normal file
65
prometheus/roles/loki/tasks/main.yml
Normal 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
|
||||
30
prometheus/roles/loki/templates/conf/loki-config.yaml.j2
Normal file
30
prometheus/roles/loki/templates/conf/loki-config.yaml.j2
Normal 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 }}
|
||||
21
prometheus/roles/loki/templates/docker-compose.yml.j2
Normal file
21
prometheus/roles/loki/templates/docker-compose.yml.j2
Normal 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 }}
|
||||
Reference in New Issue
Block a user