暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

dbops1.5 强力升级:支持 Prometheus 全家桶,监控 MySQL 更简单(一)

51

Prometheus 是 DBA 们必须掌握的云原生监控工具之一,本方案主要介绍使用 dbosp1.5 如何快速搭建 Prometheus 监控 MySQL 数据库。

本篇是第一篇,介绍如何使用 dbops1.5 部署 Prometheus + Grafana + Alertmanager。第二篇会介绍使用dbops1.5 如何部署MySQL8.4。第三篇介绍,如何部署MySQL exporter 和注册 exporter 到 Prometheus。第四篇演示告警和短信。
第五篇介绍,dbops1.5 开发这个功能,都做了什么努力。

使用说明

1. 安装

以安装 dbops1.5开发版为例

1.1 安装 Prometheus + Grafana + Alertmanager 全家桶

1.1.1 下载 dbops
yum install git -y
cd usr/local
git clone https://gitee.com/fanderchan/dbops/

复制
1.1.2 切换到最新dbops1.5
cd dbops/
git checkout dbops1.5

复制
1.1.3 安装 ansible

dbops 自带绿色版 ansible,安装注册绿色版 ansible 的步骤在 这里也有涉及。

cd portable-ansible-v0.5.0-py3
sh setup_portable_ansible.sh
source ~/.bashrc

复制

检查ansible是否成功

ansible --version

复制
1.1.4 配置ansible主机
cd ..
cd monitoring_prometheus_ansible
vi inventory/hosts.ini

复制

把你的主机信息填入到 inventory/hosts.ini 文件中。主要包含以下信息:

  • 主机IP

  • 操作主机的用户名(只支持root)

  • 操作主机的密码

## Configuration for monitoring_prometheus_deployment.yml only ##
[prometheus]
192.168.199.133 ansible_user=root ansible_ssh_pass="'密码'"

[grafana]
192.168.199.133 ansible_user=root ansible_ssh_pass="'密码'"

[alertmanager]
192.168.199.133 ansible_user=root ansible_ssh_pass="'密码'"


[all:vars]
#ansible_python_interpreter=/usr/bin/python3

复制
1.1.5 上传软件安装包

保证/usr/local/dbops/downloads 目录下有以下文件:

alertmanager-0.27.0.linux-amd64.tar.gz
grafana-enterprise-10.4.6.linux-amd64.tar.gz
prometheus-2.54.0.linux-amd64.tar.gz

复制

下载地址

# 下载 Alertmanager 0.27.0
wget https://github.com/prometheus/alertmanager/releases/download/v0.27.0/alertmanager-0.27.0.linux-amd64.tar.gz

# 下载 Grafana Enterprise 10.4.6
wget https://dl.grafana.com/enterprise/release/grafana-enterprise-10.4.6.linux-amd64.tar.gz

# 下载 Prometheus 2.54.0
wget https://github.com/prometheus/prometheus/releases/download/v2.54.0/prometheus-2.54.0.linux-amd64.tar.gz


复制
1.1.6 修改 Prometheus + Grafana + Alertmanager 配置
cd playbooks
vi common_config.yml #修改通用设置

复制

由于本篇是快速入门,所以只需要修改以下几个参数:

alert_email_to: '510386283@qq.com'  # The email address to receive alert notifications.
alert_email_from: '510386283@qq.com' # The sender email address for alert notifications.
alert_smtp_smarthost: 'smtp.qq.com:587' # The SMTP server address (e.g., smtp.qq.com:587).
alert_smtp_auth_username: '510386283@qq.com' # The SMTP server authentication username.
alert_smtp_auth_password: 'xxxxxxxxxx' # The SMTP server authentication password.

复制

示例是作者的QQ邮箱,把邮箱改为你的告警邮箱,smtp_smarthost 改为你的邮箱smtp服务器地址,smtp_auth_username 改为你的邮箱地址,smtp_auth_password 改为你的邮箱的授权密码。

授权密码获取方式:QQ邮箱的话点击 这里 获取帮助。

接着修改剧本设置

vi vars/var_monitoring_prometheus_deployment.yml

复制

本篇傻瓜式教程不涉及修改此配置,也不建议修改。

1.1.7 安装 Prometheus + Grafana + Alertmanager 全家桶
ansible-playbook monitoring_prometheus_deployment.yml

复制
1.1.8 确认信息

在执行 playbook 后,会输出以下信息,请确认无误后输入 confirm 继续。

TASK [Display the list of target hosts and additional information] ***********************************************
ok: [192.168.199.133] => {
"msg": [
"Hosts to be affected by Deploy Prometheus+Grafana+Alertmanager using binary installation: 192.168.199.133",
"prometheus ip: 192.168.199.133",
"prometheus port: 9090",
"prometheus package: prometheus-2.54.0.linux-amd64.tar.gz",
"grafana ip: 192.168.199.133",
"grafana port: 3000",
"grafana package: grafana-enterprise-10.4.6.linux-amd64.tar.gz",
"alertmanager ip: 192.168.199.133",
"alertmanager port: 9093",
"alertmanager package: alertmanager-0.27.0.linux-amd64.tar.gz"
]
}

TASK [Prompt user for confirmation] ******************************************************************************
[Prompt user for confirmation]
This will perform Deploy Prometheus+Grafana+Alertmanager using binary installation on the displayed hosts. Please type 'confirm' to continue or press Ctrl+C to cancel.:

复制

输入 confirm 后,会开始安装。安装完成后,会输出以下信息:

TASK [../roles/alertmanager : Start alertmanager service] ********************************************************
changed: [192.168.199.133]

TASK [../roles/alertmanager : Check if Alertmanager is operational] **********************************************
ok: [192.168.199.133]

TASK [../roles/alertmanager : Fail if Alertmanager is not operational] *******************************************
skipping: [192.168.199.133]

TASK [../roles/alertmanager : Touch alertmanager_finish.flag] ****************************************************
changed: [192.168.199.133]

PLAY RECAP *******************************************************************************************************
192.168.199.133 : ok=71 changed=40 unreachable=0 failed=0 skipped=16 rescued=0 ignored=0

Playbook run took 0 days, 0 hours, 2 minutes, 30 seconds

复制
1.1.9 打开 Web 页面确认安装完成
prometheus

http://192.168.199.133:9090/alerts?search= 

grafana

http://192.168.199.133:3000/ 

alertmanager

http://192.168.199.133:9093/ 

官方文档:

https://gitee.com/fanderchan/dbops_docs/blob/master/monitoring_prometheus_ansible/Prometheus%E7%9B%91%E6%8E%A7mysql%E5%BF%AB%E9%80%9F%E5%85%A5%E9%97%A8.md#https://gitee.com/link?target=https%3A%2F%2Fk49r1gqq90.feishu.cn%2Fdocx%2FRgXPdLx4Wod4BWxuQMucQ5yTnMb

文章转载自芬达的学习笔记,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论