用Prometheus + Grafana来可视化MySQL的信息的规程
我想用 MySQL + Prometheus + Grafana (+ Percona Dashboard) 创建一个可以将 MySQL 性能可视化的环境,所以我用 ansible 编写了一个脚本,并创建了该环境。
执行方式
克隆 https://github.com/hkrn/ansible-playbooks,并运行以下playbook。请根据需要自行替换方括号中的内容。
cd 20171223
ansible-playbook \
-e 'gce_project_id=[project_id]' \
-e 'gce_service_account_email=[service_account_email]' \
-e 'gce_credentials_file=[path/to/credentials_file]' \
-e 'ansible_ssh_user=[ssh_user]' \
-e 'ansible_ssh_private_key_file=[path/to/gce_ssh_private_key_path]' \
site.yml
虽然需要相当长的时间,但一旦执行,将会启动总共3个实例。
-
- MySQL 5.7 マスターサーバの VM
-
- MySQL 5.7 レプリカサーバの VM
-
- モニターサーバ
Prometheus と Grafana が同居している
所有这些实例都是使用最小的 f1-micro 创建的。
确认在实例启动后,访问 http://[监控服务器的IP地址]:3000 查看Grafana界面。
Grafana仪表板界面
MySQL概述的界面
使用这个 playbook 时需要注意的事项
-
- デモ用に作ってあるものなので、確認したらインスタンスをすぐに削除すること
仮にこの playbook 流用にするせよ一回踏み台のインスタンスを建ててそこから流すように改修すべき
ついでにいうとパスワードも丸見えなので Ansible Vault で暗号化しておくこと
デフォルトのファイアウォールに 3000 を追加で開けるため、試したあとは削除すること
参数说明
GCE项目ID
在Google Compute Engine 上执行的项目的ID。
GCE 服务帐号电子邮件
在Google Compute Engine上运行的服务账号的电子邮件地址。
谷歌云凭证文件
在 Google Compute Engine 上的服务帐号密钥。如果尚未创建过,则需要按照以下步骤进行创建。
IAM と管理 を選択
サービスアカウント を選択
利用するサービスアカウントを選び、縦三点リーダーをクリックして「キーを作成」を選択
JSON 形式を選択して作成
作成したファイルをダウンロードし、配置する
配置したパスが gce_credentials_file の値となる
ansible_ssh_user 可以以母语中文为以下:
远程登录用户名
在 GCE 实例上可以登录的SSH用户名。如果您是在Mac上使用echo $USER命令得到的用户名,您应该可以用该用户名登录。
ansible_ssh_private_key_file 可以翻译为 “Ansible SSH 私钥文件”。
通常情况下,我们可以使用由gcloud生成的~/.ssh/google_compute_engine文件来登录到GCE实例的SSH私钥。