贊助商連結

安裝 Google Cloud Monitor Agent for PostgreSQL

Google Cloud Monitor Agent 除了可以 monitor instance 的狀態之外,還可以搭配外掛去監控 web server 或是 db 的狀態。

上一篇 提到安裝 Google Cloud Monitor Agent,我們主要是使用 PostgreSQL 做為資料庫系統,所以這篇講一下 PostgreSQL 的 plugin。

一樣,按照這篇 PostgreSQL Plugin - Google Cloud Monitoring 的步驟做,有些步驟沒提到的,下面補充一下

修改 pg_hba.conf 這邊,原本 PostgreSQL 就會有 local peer 的設定,只要把 peer 改成 md5 就可以了。

1
2
# "local" is for Unix domain socket connections only
local all all md5

peer 是表示說 user 如果在 server 上有 account 的話就可以直接登入 postgresql 不用密碼,改成 md5 的話,就是 server user 也要密碼才能登入。

另外還要在 postgresql 開個帳號給 stackdriver-agent,至於步驟說的

you must create a user/role with minimal privileges

這邊只要給到可以 login 的權限就好,下圖就是我給的權限

Google Cloud Monitoring

再來是 postgresql.conf 這邊,記得 dbname 要換成要監控的 DB

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
LoadPlugin postgresql
<Plugin postgresql>
<Database dbname>
# Host and port are only used for TCP/IP connections
# Leaving them out indicates you wish to connect via domain sockets
# Host "localhost"
# Port "5432"
User "stackdriver-agent"
Password "password"
Query backends
Query transactions
Query queries
Query table_states
Query disk_io
Query disk_usage
</Database>
</Plugin>

如果有多個 DB 要監控,可以參考 Generate Postgres stackdriver config with multiple databases 的 code 去生成postgresql.conf

都弄好,就重新啟動 agent,過一下子就可以看 monitor 看到資料進來了

更多 Google Cloud Platform 的文章