演示網址:https://my-netdata.io/
官方首頁:http://netdata.cloud/
文檔地址:http://docs.netdata.cloud
官方安裝文檔:http://docs.netdata.cloud/docs/agent
github地址:https://github.com/netdata/netdata#infographic
先上一張安裝完成的截圖,讓初識的朋友看看這個工具
安裝
目前使用ubuntu系統,只講此系統
不需要下載netdata安裝包然后導入,咱們直接使用命令進行安裝
先安裝依賴包 (自動)
安裝的軟件包用於具有基本Netdata安裝(系統監視和許多應用程序,而 mysql
/ mariadb
,postgres
,named
,硬件傳感器和SNMP
):
curl -Ss 'https://raw.githubusercontent.com/netdata/netdata/master/packaging/installer/install-required-packages.sh' >/tmp/install-required-packages.sh && bash /tmp/install-required-packages.sh -i netdata
curl -Ss 'https://raw.githubusercontent.com/netdata/netdata/master/packaging/installer/install-required-packages.sh' >/tmp/install-required-packages.sh && bash /tmp/install-required-packages.sh -i netdata-all
上面自動如果失敗就手動進行安裝,不知道失敗還是成功,就都執行,反正新手嘛,多裝沒壞處,都是監控依賴包,下面是linux各系統的手動命令
# Debian / Ubuntu apt-get install zlib1g-dev uuid-dev libuv1-dev liblz4-dev libjudy-dev libssl-dev libmnl-dev gcc make git autoconf autoconf-archive autogen automake pkg-config curl python cmake # Fedora dnf install zlib-devel libuuid-devel libuv-devel lz4-devel Judy-devel openssl-devel libmnl-devel gcc make git autoconf autoconf-archive autogen automake pkgconfig curl findutils python cmake # CentOS / Red Hat Enterprise Linux yum install autoconf automake curl gcc git libmnl-devel libuuid-devel openssl-devel libuv-devel lz4-devel Judy-devel make nc pkgconfig python zlib-devel cmake # openSUSE zypper install zlib-devel libuuid-devel libuv-devel liblz4-devel judy-devel libopenssl-devel libmnl-devel gcc make git autoconf autoconf-archive autogen automake pkgconfig curl findutils python cmake
官方文檔其實比較全,大家有空可以看下,裝完依賴和環境就裝代碼了,自己選擇一個路徑,創建一個netdata文件夾,存放代碼
root@cyberpeace:/test/netdata# pwd /test/netdata root@cyberpeace:/test/netdata#
我這是已經建立好的 cd /test mkdir netdata
從git上直接拉去netdata代碼
git clone https://github.com/firehol/netdata.git --depth=1
代碼拉去成功之后進行安裝
root@controller:/test/sunxiaolei# cd netdata/ root@controller:/test/sunxiaolei/netdata# ls aclk cgroup-network config.h contrib Dockerfile HISTORICAL_CHANGELOG.md netdatacli packaging system aclocal.m4 CHANGELOG.md config.h.in CONTRIBUTING.md Dockerfile.docs install-sh netdata.cppcheck perf.plugin test-driver apps.plugin claim config.h.in~ CONTRIBUTORS.md Dockerfile.test libnetdata netdata-installer.log README.md tests autom4te.cache cli config.log coverity-scan.sh docs LICENSE netdata-installer.sh REDISTRIBUTED.md web backends CMakeLists.txt configs.signatures cppcheck.sh DOCUMENTATION.md Makefile netdata.spec registry BREAKING_CHANGES.md CODE_OF_CONDUCT.md config.status daemon ebpf_process.plugin Makefile.am netdata.spec.in SECURITY.md build collectors config.sub database exporting Makefile.in netlify.toml slabinfo.plugin build_external compile configure depcomp externaldeps missing package.json stamp-h1 BUILD.md config.guess configure.ac diagrams health netdata package-lock.json streaming root@controller:/test/sunxiaolei/netdata# ./netdata-installer.sh
進入安裝過程 ,如果期間出現依賴錯誤,就說明有些依賴沒有裝成功,上面那3條安裝依賴命令都執行一遍,執行完命令會顯示
輸出包含有關Netdata將存儲其所有組件的位置的信息。你可以通讀這些內容,這樣你就可以更熟悉程序在安裝后如何在文件系統上展開。
Installer Output . . . It will be installed at these locations: - the daemon at /usr/sbin/netdata - config files at /etc/netdata - web files at /usr/share/netdata - plugins at /usr/libexec/netdata - cache files at /var/cache/netdata - db files at /var/lib/netdata - log files at /var/log/netdata - pid file at /var/run . . .
可能存在位置有點差異,但是大體都是這個,怕忘記你可以保存下來 ,然后回車繼續安裝
安裝成功之后看到這個結果就代表成功
Installer Output . . . ^ |.-. .-. .-. .-. .-. . netdata .-. .- | '-' '-' '-' '-' '-' is installed and running now! -' '-' +----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+---> enjoy real-time performance and health monitoring...
安裝成功之后默認啟動狀態,可以訪問 http://ip:19999 進行暢快的監控了 ,漢化版我百度找了一下,安裝了幾個,替換文件啥啥的,發現並不好使,果斷放棄了
當前是一個服務器監控,我們平時肯定會使用多台服務器,那么就需要都進行監控,所以需要建立一個集群
集群配置
選擇一台主機 ,其他作為從節點 ,需要監控的服務器都需要安裝netdata,上面步驟來回跑吧
先進行從節點的配置
修改netdata.conf文件配置,一般路徑在/etc/netdata/netdata.conf
vim /etc/netdata/netdata.conf [global] memory mode = none hostname = slave-10 [web] mode = none [health] enabled = no
修改里面這幾項配置,配置項都是默認注釋狀態
新增 stream.conf 配置文件
vim /etc/netdata/stream.conf [stream] enabled = yes destination = 10.10.10.10:19999 api key =9b9e8472-6399-4372-afc5-cd9da9717f98
其中api key 是一個uuid格式的字符串,可以使用uuidgen命令生成,關聯主機時使用 ,destination是主節點ip地址
從節點配置結束之后,開始配置主節點:
同樣修改配置文件,路徑和從節點一樣
vim netdata.conf
[global] hostname = Master
這是主節點名稱
新增 stream.conf 配置文件
vim stream.conf [b25a8036-6b4d-4108-b0bd-96937720f303] enabled = yes default history = 3600 default memory mode = save health enabled by default = auto allow from = *
配置文件中這個b25a8036-6b4d-4108-b0bd-96937720f303 對應從節點生成的uuid ,我這是隨便復制的,和上面不一樣 ,下面內容不變 ,如果有多個從節點,就復制多個就行,uuid改變即可
配置結束后,主節點和從節點全部重啟 :
systemctl restart netdata
執行命令匯總:
啟動 service netdata start 停止 service netdata stop 重啟 service netdata restart