安裝 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 的權限就好,下圖就是我給的權限

Google Cloud Monitoring

再來是 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 看到資料進來了

更多 Google Cloud Platform 的文章

Follow 院長與芊比媽 on Google News