3分鐘教你如何增加 SpringBoot Admin 來做監控

3分鐘教你如何增加 SpringBoot Admin 來做監控

很多時候,你根本不會知道你服務在哪臺實體機上執行,也不知道現在用到哪一版

所以在微服務系統架構中...監控管理是非常重要的一環

其實在 SpringBoot中有內建 提供非常多的資訊跟一些簡單的服務管理功能

後來有一個團隊做了不錯看的 UI 出來, 就是 SpringBoot Admin 也跟 Spring Cloud 做了不錯的整合, 就算不用 SpringCloud 單獨使用也非常好用.

Server 端

首先我再建立個新專案叫 admin

專案的 build.gradle 如下

3分鐘教你如何增加 SpringBoot Admin 來做監控

我們加上了 spring-boot-admin-server 這是監控端, spring-boot-admin-server-ui 就是 UI 啦

然後我們啟動程程序加上

3分鐘教你如何增加 SpringBoot Admin 來做監控

加上了 EnableAdminServer 就可以了

啟動之後 打開

http://localhost:8080

3分鐘教你如何增加 SpringBoot Admin 來做監控

然後當你用 Chrome 打開頁面的時候, 會跳出下面通知接收的詢問

3分鐘教你如何增加 SpringBoot Admin 來做監控

這邊我們先按允許

Client 端

客戶端更簡單, 只需要引入 spring-boot-admin-starter-client 套件

3分鐘教你如何增加 SpringBoot Admin 來做監控

application.yml 我們改一下 port 然後加上 client 的配置讓他知道 server 在哪

還有我們給應用程式一個名稱 bookservice 之後比較好辨識

3分鐘教你如何增加 SpringBoot Admin 來做監控

接下來只要啟動程序就可以了, 你可以看到我們

畫面中我們的 bookservice 是啟動狀態, 同時狀態變動的時候 springboot admin 也會透過 chrome 的機制來通知我們

3分鐘教你如何增加 SpringBoot Admin 來做監控

是不是感覺安心很多了呢? 至少不會發生服務掛掉一天一夜沒人發現這種鳥事。

Client 端 安全機制

但是 Client 端的 port 跟 api 是一樣的, 所以外面的人也可以透過這個 port 來監控你的應用

所以我們再做一點手腳來保護

簡單一點的呢....就直接加上

3分鐘教你如何增加 SpringBoot Admin 來做監控

3分鐘教你如何增加 SpringBoot Admin 來做監控

然後配置檔 application.yml 就改成 這樣

3分鐘教你如何增加 SpringBoot Admin 來做監控

management.security.enabled 一定要開啟, 不開啟等於沒有生效

security 這邊就是 basicAuth

admin.client 這邊就是讓 server 端可以透過 basicAuth 正常存取 Client 的資訊


分享到:


相關文章: