自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

這款 7k Star 的國產(chǎn)監(jiān)控系統(tǒng),真不錯!

安全 移動安全
目前,大多數(shù)公司都有很多機房,它們分布在不同的區(qū)域,這讓監(jiān)控變得不再簡單。因為如果機房之間網(wǎng)絡(luò)鏈路很好,那么只需要部署一套監(jiān)控系統(tǒng)就搞定了。但如果機房之間的網(wǎng)絡(luò)不太好,無法做到監(jiān)控數(shù)據(jù)實時、可靠的上傳,但是告警規(guī)則又想在一個中心管理。

我們都知道天下沒有“永不宕機”的系統(tǒng),但每次線上出問題都要拉出一個程序員“祭天”。所以一款靠譜、好用的監(jiān)控工具就顯得十分重要,它可以在生產(chǎn)環(huán)境出故障的第一時間發(fā)出告警,并提供詳實的數(shù)據(jù),幫助程序員盡早發(fā)現(xiàn)故障、盡快定位問題。

可以毫不夸張地說,監(jiān)控就是運維的眼睛、研發(fā)的“免死金牌”,程序員“明哲保身、自證清白”的必備利器!

一、夜鶯監(jiān)控

今天 HelloGitHub 給大家?guī)淼氖且豢铋_箱即用、默認(rèn)中文、界面美觀的開源監(jiān)控系統(tǒng)——夜鶯監(jiān)控(Nightingale),100% 國產(chǎn)更懂你的苦。你還在為搭建/配置/調(diào)優(yōu)「Prometheus + AlertManager + Grafana」的監(jiān)控平臺而煩惱嗎?開箱即用的夜鶯監(jiān)控輕松解決你的問題。

GitHub:https://github.com/ccfos/nightingale

夜鶯監(jiān)控是一款先進(jìn)的開源云原生監(jiān)控分析系統(tǒng),采用 All-In-One 的設(shè)計,集數(shù)據(jù)采集、可視化、監(jiān)控告警、數(shù)據(jù)分析、權(quán)限管理于一體,擁有企業(yè)級的監(jiān)控分析和告警能力。

圖片圖片

圖片圖片

圖片圖片

夜鶯監(jiān)控在運維圈里很有名,它“出身名門”最初是由滴滴孵化并開源,在此期間沉淀了一線互聯(lián)網(wǎng)公司可觀測性的最佳實踐,有大廠的實踐背書可靠性和實用性上毋庸置疑。之后則捐贈給了中國計算機學(xué)會(CCF)進(jìn)行托管,由運維圈的“老炮”秦曉輝等人設(shè)計、開發(fā)和維護(hù)。截止到發(fā)文前,夜鶯監(jiān)控已在 GitHub 上獲得了 7200+ 個 Star、1200+ 次 Fork,發(fā)展勢頭迅猛、開源社區(qū)活躍,并且已經(jīng)服務(wù)了上千家分布在各行各業(yè)的企業(yè)。

圖片圖片

接下來,就和 HelloGitHub 一起上手這款開箱即用的開源監(jiān)控利器吧!

二、安裝啟動

最簡單的部署方式是使用 docker-compose,可實現(xiàn)一鍵啟動,執(zhí)行下面的命令即可:

git clone https://github.com/ccfos/nightingale.git
cd nightingale/docker
docker-compose up -d
# 成功后會有以下輸出
# Creating mysql      ... done
# Creating redis      ... done
# Creating prometheus ... done
# Creating ibex       ... done
# Creating agentd     ... done
# Creating n9e        ... done
# Creating telegraf   ... done

啟動之后瀏覽器直接訪問:127.0.0.1:17000,輸入賬號 root 密碼:root.2020,登陸后就能看到管理界面啦!

圖片圖片

不過,我還是更推薦大家使用二進(jìn)制方式部署,因為這種方式不依賴 Docker、更穩(wěn)定、升級也方便,可用于生產(chǎn)環(huán)境(官方推薦),部署起來也不麻煩,也就多幾行命令的事。下面是 linux x86 環(huán)境的示例和注解:

# 創(chuàng)建個 n9e 的目錄,后面把 n9e 相關(guān)的文件解壓到這里
mkdir -p /opt/n9e && cd /opt/n9e

# 下載 n9e 發(fā)布包,amd64 是 x84 的包,下載站點也提供 arm64 的包,如果需要其他平臺的包則要自行編譯了
tarball=n9e-v6.1.0-linux-amd64.tar.gz
urlpath=https://download.flashcat.cloud/${tarball}
wget -q $urlpath || exit 1

# 解壓縮發(fā)布包
tar zxvf ${tarball}

# 解壓縮之后,可以看到 n9e.sql 是建表語句,導(dǎo)入數(shù)據(jù)庫
mysql -uroot -p1234 < n9e.sql

# 啟動 n9e,先使用 nohup 簡單測試,如果需要 systemd 托管,請自行準(zhǔn)備 service 文件
nohup ./n9e &> n9e.log &

# 檢查 n9e.log 是否有異常日志,檢查端口是否在監(jiān)聽,正常應(yīng)該監(jiān)聽在 17000
ss -tlnp|grep 17000

至此,安裝部分就結(jié)束了,接下來就是上手體驗了。

三、快速上手

3.1 配置數(shù)據(jù)源

夜鶯不生產(chǎn)日志,只是日志的“監(jiān)工”。所以安裝完第一件事就是配置日志數(shù)據(jù),用法類似 Grafana 可直接接入數(shù)據(jù)源,菜單位置:「系統(tǒng)配置」-「數(shù)據(jù)源」,目前支持:prometheus、victoriametrics、thanos、m3、elasticsearch、loki 等數(shù)據(jù)源。

圖片圖片

完成數(shù)據(jù)源接入之后,就可以十分方便地通過可視化的方式查看日志了。

圖片圖片

夜鶯默認(rèn)提供了一些可視化大盤(菜單位置:「儀表盤」-「內(nèi)置儀表盤」)和內(nèi)置告警規(guī)則(菜單位置:「告警管理」-「內(nèi)置規(guī)則」),導(dǎo)入自己的業(yè)務(wù)組(這是個管理概念,不同的告警規(guī)則和儀表盤可以使用不同的業(yè)務(wù)組分門別類管理 + 控制權(quán)限)就能使用啦。

3.2 好看的儀表盤

夜鶯的儀表盤展示效果美觀、性能出眾、功能豐富,雖然還沒有 Grafana 的全面,但基本可以作為 Grafana 的國產(chǎn)化平替了。夜鶯的儀表盤支持暗黑主題,效果如下:

圖片圖片

前端 GitHub 地址:https://github.com/n9e/fe

3.3 采集器

如果之前沒有做過監(jiān)控數(shù)據(jù)收集,可以使用夜鶯團隊提供的采集器 categraf,這同樣是一款開源的 telemetry 數(shù)據(jù)采集器,它內(nèi)置了 OS、SNMP、IPMI、MySQL、Redis、MongoDB、Oracle、Kafka、ElasticSearch、cAdvisor 等多種采集插件。

GitHub:https://github.com/flashcatcloud/categraf

當(dāng)然,也可以使用其他采集器,比如 telegraf、grafana-agent 等,但是 categraf 的對接最為絲滑。夜鶯支持多種數(shù)據(jù)接入?yún)f(xié)議,比如 prometheus remote write、OpenTSDB、Datadog 等,接收到數(shù)據(jù)之后做統(tǒng)一轉(zhuǎn)換,然后轉(zhuǎn)發(fā)給后端時序庫,具體轉(zhuǎn)發(fā)給哪些時序庫可以在夜鶯的配置文件中配置。

3.4 告警管理

靈活的告警是優(yōu)秀監(jiān)控系統(tǒng)的標(biāo)配,夜鶯在這方面做得十分出色。它可以將一套規(guī)則應(yīng)用于多個數(shù)據(jù)源,支持級別抑制、生效時間、告警屏蔽、告警訂閱、告警自愈等規(guī)則。

  • 級別抑制:高級別抑制低級別告警,比如磁盤利用率超過 95% 產(chǎn)生 P1 告警,超過 85% 產(chǎn)生 P2 告警,如果某一時刻磁盤利用率跑到 100%,就只會觸發(fā) P1 告警,P2 被抑制,避免告警打擾;
  • 生效時間:可配置告警規(guī)則判定的生效時間,支持配置不同的多個日期和時段;
  • 告警屏蔽:減少已知告警的干擾,比如某個機器要維護(hù),可以提前屏蔽相關(guān)告警;
  • 告警訂閱:告警消息分組通知;
  • 告警自愈:告警可觸發(fā)預(yù)先設(shè)定好的腳本,自動解決故障;

菜單「告警管理」-「規(guī)則配置」的界面和示例如下:

圖片圖片

四、深入了解

監(jiān)控并不僅僅是可視化+告警那么簡單,里面有很多道道,下面讓我們“往下”走一點,深入了解下夜鶯監(jiān)控的架構(gòu)和解決的痛點。

4.1 架構(gòu)介紹

夜鶯作為一款 Go 寫的監(jiān)控系統(tǒng),不僅部署方便,而且整體設(shè)計上非常開放和靈活,可以和開源生態(tài)上其他軟件組合使用,適用于已有監(jiān)控系統(tǒng)升級或從零搭建監(jiān)控平臺等場景。

  • 采集器:可對接 telegraf、categraf、grafana-agent、datadog-agent、以及各類 exporter;
  • 存儲:可對接 prometheus、thanos、m3、victoriametrics 等;

架構(gòu)圖如下:

圖片圖片

從依賴上看,夜鶯就只依賴 MySQL 和 Redis,它倆對于技術(shù)人員來說,都是非常熟悉的。除此之外,夜鶯在部署時只需一個二進(jìn)制文件 + 配置文件,將開箱即用的精神貫徹到底!

4.2 項目結(jié)構(gòu)

下面簡單介紹一下夜鶯的項目結(jié)構(gòu),即核心功能模塊介紹,方便想要深入了解夜鶯的同學(xué)快速進(jìn)入源碼。

? # 夜鶯的目錄結(jié)構(gòu)介紹
.
├── ...
├── alert         告警引擎相關(guān)邏輯,對 Prometheus、Loki、TDEngine 等數(shù)據(jù)源做異常數(shù)據(jù)判斷并產(chǎn)生告警事件。
├── center        Web 后端的邏輯。
├── cli           命令行工具,用于 v5 版本升級 v6 版本時的數(shù)據(jù)遷移。
├── cmd           入口包,所有的二進(jìn)制的 main 函數(shù)入口都在這里。
├── conf          配置文件在內(nèi)存里映射的數(shù)據(jù)結(jié)構(gòu)。
├── docker        容器相關(guān)的文件,包括 Dockerfile 和 docker-compose 等,數(shù)據(jù)庫的建表 SQL 也在這里。
├── etc           配置文件,重點關(guān)注 config.toml,如果使用了邊緣機房的部署方案,還需要關(guān)注 edge.toml。
├── integrations  集成目錄,包含比如 MySQL、Redis、Elasticsearch 等各個監(jiān)控目標(biāo)的內(nèi)置儀表盤、告警規(guī)則等。
├── models        數(shù)據(jù)庫操作相關(guān)的代碼。
├── pkg           通用 lib 庫。
├── prom          Prometheus 相關(guān)的代碼,包括 remote write 寫數(shù)據(jù)以及查詢接口的封裝。
├── tdengine      查詢 TDEngine(時序數(shù)據(jù)庫)相關(guān)的代碼。
├── storage       MySQL 和 Redis 的初始化連接相關(guān)的代碼。
└── pushgw        Pushgateway 相關(guān)的代碼,用于接收 remote write 數(shù)據(jù)、opentsdb 格式的數(shù)據(jù)、datadog 格式的數(shù)據(jù)、open-falcon 格式的數(shù)據(jù),然后統(tǒng)一做格式轉(zhuǎn)換寫入后端存儲。

4.3 多機房場景

你是否遇到過需要監(jiān)控多機房的場景?

目前,大多數(shù)公司都有很多機房,它們分布在不同的區(qū)域,這讓監(jiān)控變得不再簡單。因為如果機房之間網(wǎng)絡(luò)鏈路很好,那么只需要部署一套監(jiān)控系統(tǒng)就搞定了。但如果機房之間的網(wǎng)絡(luò)不太好,無法做到監(jiān)控數(shù)據(jù)實時、可靠的上傳,但是告警規(guī)則又想在一個中心管理。

這個時候就需要高級部署方案,夜鶯提供了現(xiàn)成的邊緣機房部署方案,可以方便地解決上面的問題。架構(gòu)圖如下:

圖片圖片

通過夜鶯提供的高級部署方案,即在網(wǎng)絡(luò)不好的機房(邊緣)部署(下沉)時序數(shù)據(jù)庫和告警引擎(n9e-edge),從而保證數(shù)據(jù)不丟失和告警規(guī)則的同步,輕松構(gòu)建統(tǒng)一的監(jiān)控中心,實現(xiàn)多機房監(jiān)控只需管理一套告警規(guī)則和可視化平臺。

真·企業(yè)級監(jiān)控和告警一體化解決方案!

五、最后

開源的監(jiān)控系統(tǒng),目前用的比較廣泛的是 Zabbix 和 Prometheus,但它們或多或少都有一些不擅長的場景。

Zabbix 擅長設(shè)備監(jiān)控,對各類操作系統(tǒng)、網(wǎng)絡(luò)設(shè)備有較好的兼容適配,但是不擅長微服務(wù)和云原生環(huán)境的監(jiān)控。

  • 不擅長動態(tài)變化對象的監(jiān)控:Zabbix 是資產(chǎn)管理式,在云原生環(huán)境下,資產(chǎn)是動態(tài)變化的,比如 Pod、Service、Deployment 等。
  • 不擅長微服務(wù)的監(jiān)控:在微服務(wù)和云原生環(huán)境下,監(jiān)控指標(biāo)爆炸性增長,而且指標(biāo)有不同的維度描述,Zabbix 使用關(guān)系型數(shù)據(jù)庫存儲時序數(shù)據(jù),不擅長處理這種大規(guī)模的多維度的指標(biāo)數(shù)據(jù)。

Prometheus 擅長微服務(wù)和云原生環(huán)境的監(jiān)控,基本已經(jīng)成為 Kubernetes 的標(biāo)配,在云原生環(huán)境下非常流行,但它也有缺點。

  • 設(shè)計上偏工具化,使用配置文件來管理規(guī)則,缺少權(quán)限化管理的 WebUI。
  • 使用 Prometheus 的公司通常會不止一套,比如每個 Kubernetes 一套 Prometheus,多個 Prometheus 可能有很多相同的規(guī)則,管理起來比較重復(fù)。
  • 其他一些小點:告警引擎是單點,告警事件沒有持久化;告警規(guī)則缺乏一些更為靈活的配置,比如生效時間。

夜鶯作為一款開源的云原生監(jiān)控系統(tǒng),在云原生方面有著先天優(yōu)勢,而且使用國外的開源監(jiān)控項目,最擔(dān)心的就是沒有技術(shù)支持,夜鶯作為“100% 國產(chǎn)”開源項目,在技術(shù)支持上分為社區(qū)支持和商業(yè)支持(響應(yīng)更及時)兩種,服務(wù)的企業(yè)用戶已有上千家,比如移動、聯(lián)通、電信、米哈游、莉莉絲、方正證券、國泰君安、海底撈、??怠⑺押?、新浪等,分布在各行各業(yè)。

圖片圖片

最后,還是那句話:開源不易如果覺得夜鶯監(jiān)控不錯的話,就請給個 Star 支持一下,試用反饋遇到的問題,也是對開源的一種支持!

GitHub:https://github.com/ccfos/nightingale

官網(wǎng):https://flashcat.cloud/

責(zé)任編輯:武曉燕 來源: HelloGitHub
相關(guān)推薦

2024-11-13 16:32:21

aviatorJava表達(dá)式引擎

2023-11-01 11:04:12

Javaaviator

2021-03-24 14:46:52

Python工具代碼

2025-04-03 00:00:03

2012-05-09 11:45:43

蘋果

2020-09-22 18:35:31

AI

2023-12-15 09:38:40

開源管理平臺

2024-04-02 10:38:29

開源Bruno開發(fā)

2021-05-24 10:49:59

監(jiān)控系統(tǒng)架構(gòu)技術(shù)

2018-09-07 11:12:19

CICD工具

2012-03-04 20:31:37

Android

2009-06-22 08:38:33

Windows 7微軟操作系統(tǒng)

2019-12-23 14:17:18

紅黑樹二叉數(shù)據(jù)

2022-06-06 12:18:44

配置可視化Nginx

2022-12-06 09:31:19

Windows 11NeoWin

2020-11-15 18:42:12

微信企業(yè)微信移動應(yīng)用

2023-12-21 08:02:31

React DnD拖拽庫組件

2015-07-29 10:34:50

Linux系統(tǒng)命令行工具
點贊
收藏

51CTO技術(shù)棧公眾號