安裝 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
就可以了。
# "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 的權限就好,下圖就是我給的權限
再來是 postgresql.conf
這邊,記得 dbname 要換成要監控的 DB
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 看到資料進來了