Netdata是系統和應用程序的分佈式,實時,性能和健康監控。它是您在所有系統和容器上安裝的高度優化的監視代理程序。
Netdata 使用高度交互的Web儀表板,實時提供其運行的系統(包括Web服務器,數據庫,應用程序)上發生的所有事情的無與倫比的見解。它可以自動運行,無需任何第三方組件,也可以集成到現有的監控工具鏈(Prometheus,Graphite,OpenTSDB,Kafka,Grafana等)。
Netdata是快速和有效的,設計成在所有的系統(永久運行物理及虛擬服務器,容器,的IoT裝置),而不破壞它們的核心功能。
Netdata是免費的開源軟件,目前可在Linux,FreeBSD和MacOS上運行。
Netdata位於Cloud Native Computing Foundation(CNCF)領域。檢查CNCF TOC Netdata演示文稿。
人們沉迷於netdata。
一旦你在你的系統上使用它,就沒有回頭路了!你被警告了...
內容
看起來如何 - 快速瀏覽一下
用戶羣 - 誰使用netdata?
快速入門 - 立即在您的系統上試用
爲何選擇Netdata - 爲什麼人們喜歡netdata,以及它與其他解決方案的比較
新聞 - 關於netdata的最新消息
它是如何工作的 - netdata如何工作的高級圖表
信息圖表 - 關於netdata的一切,在一個頁面中
功能 - 它具有哪些功能
可視化 - 獨特的可視化功能
它監控什麼 - 它收集哪些指標
文檔 - 閱讀文檔
社區 - 與他人討論並獲得支持
許可證 - 檢查netdata的許可證
這有什麼好處嗎? - 是的
真棒嗎? - 是的
看起來如何
以下動畫圖像顯示了典型netdata儀表板的頂部。
典型的netdata儀表板,以1:1的時間安排。可以通過拖動圖表來平移圖表,使用SHIFT
+ 放大/縮小圖表mouse wheel
,可以選擇使用SHIFT
+ 放大的區域mouse selection
。Netdata具有高度的交互性和實時性,經過優化可以完成工作!
我們有幾個在線演示來體驗它:https://my-netdata.io
用戶羣
Netdata被全世界數十萬用戶使用。查看我們的GitHub觀察者列表。你會發現在亞馬遜,Atos,百度,思科系統,思傑,德國電信,DigitalOcean, Elastic,EPAM Systems,愛立信,谷歌,Groupon,Hortonworks,惠普,華爲, IBM,微軟,NewRelic,Nvidia,紅帽,SAP,Selectel,TicketMaster, Vimeo等等!
Docker拉扯
我們爲最常見的架構提供docker鏡像。這些是docker hub報告的統計信息:
註冊處
安裝多個netdata時,它們通過netdata註冊表集成到一個分佈式應用程序中。這是一個Web瀏覽器功能,它允許我們計算安裝的唯一用戶和唯一的netdata服務器的數量。以下信息來自我們運行的全球公共netdata註冊表:
快速開始
您可以使用以下命令在Linux機器(物理,虛擬,容器,IoT)上快速安裝netdata:
#確保爲shell運行`bash`慶典#從GitHub源安裝netdata,直接 的bash <(捲曲-Ss https://my-netdata.io/kickstart.sh )
上面的命令將:
在您的系統上安裝任何所需的軟件包(它會要求您在此之前確認),
下載netdata源碼
/usr/src/netdata.git
編譯它,安裝它並啓動它
可以在安裝頁面找到更多安裝方法和其他選項。
要在docker容器中嘗試netdata,請運行以下命令:
docker run -d --name=netdata \ -p 19999:19999 \ -v /proc:/host/proc:ro \ -v /sys:/host/sys:ro \ -v /var/run/docker.sock:/var/run/docker.sock:ro \ --cap-add SYS_PTRACE \ --security-opt apparmor=unconfined \ netdata/netdata
有關在docker中運行netdata的更多信息,請查看docker 安裝頁面。
爲何選擇Netdata
Netdata採用完全不同的監控方法。
Netdata是您在所有系統上安裝的監視代理程序。它是:
一個度量收集器 -進行系統和應用度量(包括網絡服務器,數據庫,容器等)
一時間序列數據庫 -存儲在內存(當它運行不接觸磁盤)
一個指標可視化 -超快速的,互動的,現代的,異常檢測優化
一個警報通知引擎 -先進的看門狗檢測性能和可用性問題
以上所有內容都是在非常靈活,極其模塊化的分佈式應用程序中打包在一起的。
這就是netdata與其他監控解決方案的比較:
netdata | 其他(開源和商業) |
---|---|
高分辨率指標(1s粒度) | 低分辨率指標(最佳粒度爲10秒) |
監控所有內容,每個節點有數千個指標 | 只監控幾個指標 |
UI速度超快,針對異常檢測進行了優化 | UI僅適用於抽象視圖 |
有意義的演示,以幫助您瞭解指標 | 您必須在開始之前瞭解指標 |
立即安裝並獲得結果 | 需要做長的準備才能獲得任何有用的結果 |
用它來解決性能問題 | 使用它們來獲取過去表現的統計數據 |
殺死控制檯以跟蹤性能問題 | 始終需要控制檯進行故障排除 |
需要零專用資源 | 需要大量專用資源 |
Netdata是開源的,免費的,超快速的,非常容易的,完全開放的,非常高效的, 靈活的和可集成的。
它由SysAdmins,DevOps和Developers設計,用於解決性能問題,而不僅僅是可視化指標。
新聞
Nov 22nd, 2018
- netdata v1.11.1發佈!
改進了內部數據庫以支持64位以上的值。
新的數據採集插件:
openldap
,tor
,nvidia_smi
。改進了數據採集插件:netdata現在支持監控網絡接口別名
smartd_log
,cpufreq
,sensors
。健康監控改進:恢復網絡接口擁塞警報
alerta.io
,conntrack_max
。my-netdata
菜單已經過重構。包裝:
openrc
服務定義得到了一些改進。
Sep 18, 2018
- netdata有自己的組織
Netdata曾經是一個firehol.org項目,可以訪問firehol/netdata
。
Netdata現在有自己的github組織netdata
,所以現在所有的github URL netdata/netdata
。舊的github URL,repo克隆,分叉等會自動重定向到新的repo。
這個怎麼運作
Netdata是一種高效,高度模塊化的度量管理引擎。其無鎖設計使其成爲指標併發操作的理想選擇。
這是它的工作原理:
功能 | 描述 | 文檔 |
---|---|---|
蒐集 | 多個獨立的數據收集工作者正在使用每個應用程序的最佳協議從其來源收集指標,並將指標推送到數據庫。每個數據收集工作者都對其收集的指標具有無鎖寫入權限。 | collectors |
商店 | 度量標準存儲在循環數據庫(環形緩衝區)的RAM中,使用自定義浮點數來實現最小佔用空間。 | database |
校驗 | 無鎖獨立監視程序正在評估對收集的度量標準的運行狀況檢查,觸發警報,維護運行狀況事務日誌以及分派警報通知。 | health |
流 | 無鎖獨立工作人員會在收集後立即將指標全部詳細地實時傳輸到遠程netdata服務器。 | streaming |
檔案 | 無鎖獨立工作者正在對指標進行下采樣並將其推送到後端時間序列數據庫。 | backends |
詢問 | 多個獨立工作者連接到內部Web服務器,爲API請求提供服務,包括數據查詢。 | web/api |
結果是一個高效,低延遲的系統,支持每個指標上的多個讀者和一個作者。
資料圖
這是netdata功能集和體系結構的高級概述。
單擊它以與其交互(它具有文檔的直接鏈接)。
特徵
這是您對Netdata的期望:
一般
1s粒度 - 所有指標的最高分辨率。
無限制指標 - 收集所有可用指標,越多越好。
單核的1%CPU利用率 - 超快速,令人難以置信的優化。
幾MB的RAM - 默認情況下它使用25MB RAM。你的大小。
零磁盤I / O - 運行時,它不會加載或保存任何內容(除了
error
和access
日誌)。零配置 - 自動檢測所有內容,每個服務器開箱即可收集多達10000個指標。
零維護 - 你只需運行它,它完成其餘的工作。
零依賴 - 它甚至是它自己的Web服務器,因爲它的靜態Web文件和它的Web API(儘管它的插件可能需要額外的庫,具體取決於所監視的應用程序)。
擴展到無限 - 您可以將其安裝在所有服務器,容器,VM和IoT上。默認情況下,度量標準不是集中式的,因此沒有限制。
幾種操作模式 - 自主主機監控(默認),無頭數據採集器,轉發代理,存儲和轉發代理,中央多主機監控,所有可能的配置。每個節點可能具有不同的度量標準保留策略,無論是否使用運行狀況監視
健康監測和警報
先進的警報 - 帶有數百個警報,開箱即用!支持動態閾值,滯後,警報模板,多種基於角色的通知方法。
聲明:alerta.io,亞馬遜SNS,discordapp.com,電子郵件,flock.com,國稅局,kavenegar.com,messagebird.com,pagerduty.com,pushbullet.com,pushover.net,rocket.chat,slack.com,系統日誌,telegram.org,twilio.com,網站。
集成
時間序列DBS -可以存檔其度量
graphite
,opentsdb
,prometheus
,JSON文檔DB中,在相同或較低分辨率(低級:防止它從這些服務器擁塞由於收集的數據量)。
可視化
令人驚歎的交互式儀表板 - 鼠標,觸摸板和觸摸屏友好的2個主題:(
slate
黑暗)和white
。驚人的快速可視化 - 即使在低端硬件上,每個度量標準的響應時間不到1毫秒。
視覺異常檢測 - 儀表板經過優化,可直觀地檢測異常情況。
可嵌入 - 其圖表可嵌入您的網頁,維基和博客中。您甚至可以使用Atlassian的Confluence作爲監控儀表板。
可自定義 - 可以使用簡單的HTML(無需javascript)構建自定義儀表板。
正面和負面的價值觀
爲了改善圖表清楚起見,netdata儀表板呈現陽性值用於表示指標read
,input
,inbound
,received
和負的值來表示的指標write
,output
,outbound
,sent
。
Netdata圖表顯示網絡接口的帶寬和數據包。received
是積極的,sent
是消極的。
自動縮放的y軸
Netdata圖表會自動垂直縮放,以顯示可見時間範圍內每個指標的變化。
基於零的stacked
圖表,area
在選擇單個維度時自動切換到自動縮放圖表。
圖表是同步的
netdata儀表板上的圖表彼此同步。沒有主圖表。任何圖表都可以隨時平移或縮放,其他所有圖表都會跟隨。
通過用鼠標拖動圖表來平移圖表。當鼠標指針在圖表上時,圖表可以用SHIFT
+ 放大/縮小mouse wheel
。
當通過
my-netdata
菜單導航時,可見時間範圍(平移和縮放)從netdata服務器傳播到netdata服務器。
突出顯示的時間範圍
爲了改善跨圖表的視覺異常檢測,用戶可以在所有圖表上突出顯示時間範圍(通過按ALT
+ mouse selection
)。
通過在任何圖表上按ALT
+ 可以給出突出顯示的時間範圍mouse selection
。Netdata將在所有圖表上突出顯示相同的範圍。
當通過
my-netdata
菜單導航時,突出顯示的範圍從netdata服務器傳播到netdata服務器。
它監控什麼
Netdata數據收集是可擴展的 - 您可以監控任何可以獲得指標的內容。它的Plugin API支持所有編程語言(任何東西都可以是netdata插件,BASH,python,perl,node.js,java,Go,ruby等)。
爲了獲得更好的性能,大多數與系統相關的插件(cpu,內存,磁盤,文件系統,網絡等)都已編寫完成
C
。爲了更快的開發和更輕鬆的貢獻,大多數與應用程序相關的插件(數據庫,Web服務器等)都已編寫
python
。
APM(應用程序性能監控)
statsd - netdata是一個功能齊全的statsd服務器。
Go expvar - 使用expvar包收集用Go編程語言編寫的應用程序公開的度量標準。
Spring Boot - 運行Java Spring Boot應用程序,通過使用Spring Boot庫中包含的Spring Boot Actuator來公開其指標。
uWSGI - 從uWSGI應用程序收集性能指標。
系統資源
中斷 - 總CPU和每核CPU中斷。
SoftIRQs - 總核心和每核心SoftIRQs。
SoftNet - 與網絡活動相關的總核心和每核心SoftIRQ。
CPU限制 - 收集每個CPU的CPU限制。
CPU Frequency - 收集當前CPU頻率。
CPU空閒 - 收集每個處理器狀態所花費的時間。
IdleJitter - 測量CPU延遲。
熵 - 隨機數池,在密碼學中使用。
進程間通信 - IPC - 如信號量和信號量數組。
記憶
ram - 收集有關RAM使用情況的信息。
swap - 收集有關交換內存使用情況的信息。
可用內存 - 收集可用於用戶空間進程的RAM量。
已提交的內存 - 收集提交給用戶空間進程的RAM量。
頁面錯誤 - 收集系統頁面錯誤(主要和次要)。
writeback memory - 收集系統髒內存和回寫活動。
巨大的頁面 - 收集用於大頁面的RAM量。
KSM - 收集有關內核相同合併(內存重複數據刪除)的信息。
Numa - 在支持它的系統上收集Numa信息。
slab - 收集有關Linux內核內存使用情況的信息。
磁盤
塊設備 - 每個磁盤:I / O,操作,積壓,利用率,空間等。
BCACHE - SSD緩存設備的詳細性能。
DiskSpace - 監視磁盤空間使用情況。
mdstat - 軟件RAID。
hddtemp - 磁盤溫度。
smartd - 磁盤SMART值。
設備映射器 - 命名磁盤。
Veritas Volume Manager - 命名磁盤。
megacli - 適配器,物理驅動器和電池統計信息。
adaptec_raid - 邏輯和物理設備運行狀況指標。
文件系統
BTRFS - 詳細的磁盤空間分配和使用情況。
Ceph - OSD使用,池使用,對象數量等
NFS文件服務器和客戶端 - NFS v2,v3,v4:I / O,緩存,預讀,RPC調用
Samba - Samba SMB2文件共享的性能指標。
ZFS - 詳細的性能和資源使用情況。
聯網
網絡堆棧 - 關於網絡堆棧的所有內容(所有協議的IPv4和IPv6:TCP,UDP,SCTP,UDPLite,ICMP,多播,廣播等)和所有網絡接口(每個接口:帶寬,數據包,錯誤,丟棄) 。
Netfilter - 關於netfilter連接跟蹤器的一切。
SynProxy - 收集有關Linux SYNPROXY(DDoS)的性能數據。
NFacct - 從iptables收集會計數據。
網絡QoS -
tc
實時可視化網絡類的唯一工具FPing - 測量任意數量主機之間的延遲和數據包丟失。
ISC dhcpd - 池利用率,租約等
AP - 收集Linux接入點性能數據(
hostapd
)。SNMP - 也可以監視SNMP設備(儘管您需要配置這些設備)。
port_check - 檢查TCP端口的可用性和響應時間。
虛擬專用網
流程
系統進程 - 運行,阻止,分叉,活動。
應用程序 - 通過對進程樹進行分組並報告CPU,內存,磁盤讀取,磁盤寫入,交換,線程,管道,套接字 - 每個進程組。
systemd - 使用CGROUPS監視系統服務。
用戶
用戶和用戶組資源使用情況 - 通過彙總每個用戶和組的進程樹,報告:CPU,內存,磁盤讀取,磁盤寫入,交換,線程,管道,套接字
logind - 收集連接的會話,用戶和席位。
容器和VM
容器 - 使用CGROUPS(systemd-nspawn,lxc,lxd,docker,kubernetes等)收集各種容器的資源使用情況。
libvirt虛擬機 - 使用CGROUPS收集各種虛擬機的資源使用情況。
dockerd - 收集碼頭工人健康指標。
Web服務器
Apache和lighttpd -
mod-status
(v2.2,v2.4)和緩存日誌統計信息,適用於多個服務器。IPFS - 帶寬,同行。
LiteSpeed - 讀取litespeed rtreport文件以收集指標。
Nginx -
stub-status
,適用於多臺服務器。Nginx + - 連接到多個nginx_plus服務器(本地或遠程)以收集實時性能指標。
PHP-FPM - 多個實例,每個實例報告連接,請求,性能等。
Tomcat - 訪問,線程,空閒內存,卷等。
Web服務器
access.log
文件 - 實時提取,Web服務器和代理性能指標,並應用多個運行狀況檢查等。HTTP檢查 - 檢查一個或多個Web服務器的HTTP狀態代碼和返回的內容。
代理,平衡器,加速器
HAproxy - 帶寬,會話,後端等
Squid - 多個服務器,每個服務器都顯示:客戶端帶寬和請求,服務器帶寬和請求。
Traefik - 連接到多個traefik實例(本地或遠程)以收集API指標(響應狀態代碼,響應時間,平均響應時間和服務器正常運行時間)。
清漆 - 線程,會話,命中,對象,後端等。
IPVS - 從Linux IPVS負載均衡器收集指標。
數據庫服務器
CouchDB - 讀/寫,請求方法,狀態代碼,任務,複製,每db等。
MemCached - 多個服務器,每個服務器顯示:帶寬,連接,項目等。
MongoDB - 操作,客戶端,事務,遊標,連接,斷言,鎖等。
MySQL和mariadb - 多個服務器,每個服務器都顯示:帶寬,查詢/處理程序,鎖,問題,tmp操作,連接,binlog指標,線程,innodb指標等。
PostgreSQL - 多個服務器,每個服務器顯示:每個數據庫統計信息(連接,元組讀取 - 寫入 - 返回,事務,鎖定),後端進程,索引,表,預寫,後臺編寫器等。
代理SQL - 收集代理SQL後端和前端性能指標。
Redis - 多個服務器,每個服務器顯示:操作,命中率,內存,密鑰,客戶端,從屬。
RethinkDB - 連接到多個rethinkdb服務器(本地或遠程)以收集實時指標。
消息代理
beanstalkd - 全球和每管監測。
RabbitMQ - 性能和健康指標。
搜索和索引
ElasticSearch - 搜索和索引性能,延遲,計時,集羣統計,線程統計等。
DNS服務器
bind_rndc - 解析
named.stats
轉儲文件以收集實時性能指標。支持9.6之後的所有版本的bind。dnsdist - 績效和健康指標。
ISC綁定(命名) - 多個服務器,每個服務器顯示:客戶端,請求,查詢,更新,故障和每個視圖度量標準。支持9.9.10之後的所有版本的bind。
NSD - 查詢,區域,協議,查詢類型,傳輸等。
PowerDNS - 查詢,答案,緩存,延遲等。
未綁定 - 性能和資源使用指標。
dns_query_time - DNS查詢時間統計信息。
時間服務器
chrony - 使用該
chronyc
命令收集chrony統計信息(頻率,最後偏移,RMS偏移,殘餘頻率,根延遲,根分散,偏斜,系統時間)。ntpd - 連接到多個ntpd服務器(本地或遠程)以提供系統變量和可選的對等變量的統計信息。
郵件服務器
硬件傳感器
IPMI - 企業硬件傳感器和事件。
lm-傳感器 - 溫度,電壓,風扇,功率,溼度等
Nvidia - 收集Nvidia GPU的信息。
RPi - Raspberry Pi溫度傳感器。
w1sensor - 從連接的1-Wire傳感器收集數據。
的UPS
社交共享服務器
RetroShare - 連接到多個retroshare服務器(本地或遠程)以收集實時性能指標。
安全
Fail2Ban - 監視fail2ban日誌文件以檢查所有活動jail的所有禁令。
身份驗證,授權,記帳(AAA,RADIUS,LDAP)服務器
FreeRadius - 使用該
radclient
命令提供freeradius統計信息(身份驗證,記帳,代理身份驗證,代理記帳)。
電話服務器
opensips - 連接到opensips服務器(僅限localhost)以收集實時性能指標。
家用設備
SMA webbox - 連接到多個遠程SMA網絡盒,以收集光伏(太陽能)發電的實時性能指標。
Fronius - 連接到多個遠程Fronius Symo服務器,以收集光伏(太陽能)發電的實時性能指標。
StiebelEltron - 使用其Internet服務網關(ISG Web)從Stiebel Eltron加熱系統收集溫度和其他指標。
遊戲服務器
SpigotMC - 使用Minecraft遠程控制檯監控Spigot Minecraft服務器每秒鐘的滴答數和在線玩家數量。
分佈式計算
BOINC - 使用遠程GUI RPC接口監視本地和遠程BOINC客戶端軟件的任務狀態。還爲少數錯誤情況提供警報。
媒體流服務器
IceCast - 收集活動源的偵聽器數量。
監控系統
Monit - 收集有關監控目標(文件系統,應用程序,網絡)的指標。
供應系統
Puppet - 連接到多個Puppet Server和Puppet數據庫實例(本地或遠程)以收集實時狀態指標。
您可以使用任何計算機語言編寫從任何來源收集數據的插件,從而輕鬆擴展Netdata。
文檔
netdata文檔位於https://docs.netdata.cloud。但是你也可以在repo中找到它,所以只需在github上導航repo就可以找到所有的文檔。
這是一個快速列表:
目錄 | 描述 |
---|---|
installer | 在您的系統上安裝netdata的說明。 |
docker | 使用docker安裝netdata的說明。 |
daemon | 有關netdata守護程序及其配置的信息。 |
collectors | 有關數據收集插件的信息。 |
health | netdata的運行狀況監控如何工作,如何創建自己的警報以及如何配置警報通知方法。 |
streaming | 如何通過在它們之間傳輸指標來構建netdata服務器的層次結構。 |
backends | 指標到行業標準的時間序列數據庫的長期歸檔,如prometheus ,graphite ,opentsdb 。 |
web/api | 瞭解如何查詢netdata API及其支持的查詢。 |
web/api/badges | 瞭解如何從實時數據生成徽章(SVG圖像)。 |
web/gui/custom | 瞭解如何創建自定義netdata儀表板。 |
web/gui/confluence | 瞭解如何在Atlassian的Confluence上創建netdata儀表板。 |
您還可以檢查所有其他目錄。他們中的大多數都有大量的文檔。
社區
我們歡迎捐款。所以,隨時加入團隊。
要報告錯誤或獲得幫助,請使用GitHub問題。
您還可以在以下網址找到netdata:
執照
netdata是GPLv3 +。
Netdata重新分發其他開源工具和庫。請檢查第三方許可證。
這有什麼好處嗎?
是。
當人們第一次聽到新產品時,他們經常會問是否有任何好處。***新聞用戶評論說:
自我注意:立即開始,所有raganwald項目將在自述文件中有一個“它是否有用?”部分,答案應爲“是”。
所以,我們遵循傳統......
真棒嗎?
這些人似乎喜歡它