夜鶯Nightingale:打造高可用監控平臺

新鈦雲服已累計為您分享817篇技術乾貨
01
夜鶯監控簡介
夜鶯監控(Nightingale)是一款集資料採集、視覺化、監控告警和資料分析於一體的開源雲原生觀測分析工具。它採用All-in-One設計理念,與雲原生生態緊密整合,為企業提供即插即用的監控分析和告警能力。
02
夜鶯Nightingale高可用架構

實現夜鶯的高可用性,只需將服務部署在不同的機器上,並確保配置檔案一致,同時連線到同一個MySQLRedis例項。透過在夜鶯前端配置虛擬IPVIP)並部署叢集或主從模式的中介軟體,即可實現高可用架構。
03
部署步驟詳解
Redis叢集部署
1. 啟動Redis容器:使用Docker在兩臺伺服器上分別啟動3個Redis容器。
2. 配置Redis:在redis.conf中設定叢集相關引數,如開啟叢集模式、配置檔案、節點超時等。
Plain Textprotected-mode noport 7001#三個不同的埠即可cluster-enabled yescluster-config-file nodes.confcluster-node-timeout 5000cluster-announce-ip IP #伺服器本機ipcluster-announce-port 7001#同port引數cluster-announce-bus-port 17001#三個不同的埠即可appendonly yes
3. 建立叢集:所有容器啟動後,透過redis-cli命令建立叢集。
Bashredis-cli--clustercreaten9e-01IP:7001n9e-01IP:7002 1n9e-01IP:7003n9e-02IP:7001n9e-02IP:7002n9e-02IP:7003--cluster-replicas 1
MySQL主從部署
1. 部署MySQL服務:在兩臺伺服器上使用二進位制方式部署MySQL,確保server_id不同,並開啟gtid_mode
2. 建立同步賬戶:在主庫上建立從庫同步賬戶並授權。
SQLCREATEUSER'slave'@'%'IDENTIFIEDBY'password';GRANTREPLICATIONSLAVEREPLICATIONCLIENTON . TO'slave'@'%';
3. 開啟同步:在從庫上配置主庫資訊,開啟資料同步。
SQLCHANGEMASTERTO MASTER_HOST='n9e-01IP', MASTER_USER='slave', MASTER_PASSWORD='password', MASTER_PORT=3306, MASTER_AUTO_POSITION=1, MASTER_CONNECT_RETRY=10;
Prometheus部署
1. 部署Prometheus:在伺服器上部署Prometheus,作為資料來源。
2. 配置引數:開啟熱過載和遠端寫入監控資料接收。
YAML--web.enable-lifecycle--web.enable-remote-write-receiver
夜鶯服務部署
1. 部署夜鶯:在兩臺伺服器上部署夜鶯服務。
2. 配置日誌:在config.toml中配置日誌目錄、級別和輸出方式。
TOML[Log]Dir = "logs"Level = "INFO"Output = "file"
3. 配置Redis和MySQL:在config.toml中配置Redis叢集地址和MySQL主庫地址,並匯入夜鶯資料庫表結構。
TOML[Redis]Address = "n9e-01IP:7001,n9e-01IP:7002,n9e-01IP:7003,n9e-02IP:7001,n9e-02IP:7002,n9e-02IP:7003"[DB]DSN = "root:password@tcp(n9e-01IP:3306)/n9e_v6?charset=utf8mb4&parseTime=True&loc=Local&allowNativePasswords=true"
Bashmysql-uroot-ppassword < n9e.sql
Keepalived配置
1. 安裝Keepalived:在兩臺伺服器上安裝Keepalived。
2. 配置搶佔:配置為BACKUP模式,使用不同優先順序進行搶佔。
3. 配置檢測指令碼:配置檢測指令碼檢測夜鶯程序。
夜鶯平臺配置
1. 訪問夜鶯:透過配置的VIP訪問夜鶯服務,夜鶯服務的埠預設為17000,使用http://vip:17000/進行訪問,賬戶密碼預設為root/root.2020。
2. 新增資料來源:在整合中心新增Prometheus-like資料來源,URL填入http://n9e-01IP:9090。
整合grafana儀表盤
1.整合Grafana:如果有正在使用的Grafana,可以在夜鶯中整合。
2.配置Grafana:修改defaults.ini配置,允許嵌入式整合和匿名訪問,需要修改defaults.ini配置,allow_embedding取消註釋並設為true,將[server]下的domain
設為grafana的伺服器ip,將[auth.anonymous]下的配置取消註釋並將enabled設為true,然後即可將grafana中的儀表盤透過短鏈整合到夜鶯。
在本文中,我們詳細介紹瞭如何部署和配置夜鶯Nightingale監控平臺,以實現高可用性監控架構。透過精心設計的Redis叢集、MySQL主從複製、Prometheus資料來源整合,以及Keepalived的高可用配置,我們確保了監控服務的穩定性和可靠性。此外,透過整合Grafana儀表盤,我們進一步增強了監控資料的視覺化和分析能力。
隨著監控平臺的成功部署和執行,我們不僅提升了對IT基礎設施的即時監控能力,還為未來的業務擴充套件和效能最佳化奠定了堅實的基礎。我們期待夜鶯Nightingale監控平臺在持續的運營中發揮關鍵作用,幫助我們更好地理解和最佳化系統性能,確保業務連續性和資料安全。
如有相關問題,請在文章後面給小編留言,小編安排作者第一時間和您聯絡,為您答疑解惑。

相關文章