If you are heavily using k8s and adopting microservices architecture, we recommend you to upgrade to use Nightingale building your modern monitoring system.
- Nightingale is an enterprise-level cloud-native monitoring tool, which can be used as drop-in replacement of Prometheus for alerting and management.
- Categraf is one-stop telemetry collector for Nightingale / Prometheus / M3DB / VictoriaMetrics / Thanos / Influxdb / TDengine.
It is recommended that you use FlashDuty as the OnCall system to realize alarm aggregation convergence, claiming, upgrading, scheduling, and coordination, so that the alarm can be reached efficiently and ensure that the alarm processing is not missed.
- Git >= 1.7.5
- Go >= 1.6
Please refer to ./docker/README.md.
before start, please make sure you prepared this:
yum install -y redis
yum install -y mysql-server
NOTE: be sure to check redis and mysql-server have successfully started.
And then
# Please make sure that you have set `$GOPATH` and `$GOROOT` correctly.
# If you have not golang in your host, please follow [https://golang.org/doc/install] to install golang.
mkdir -p $GOPATH/src/github.com/open-falcon
cd $GOPATH/src/github.com/open-falcon
git clone https://github.com/open-falcon/falcon-plus.git
And do not forget to init the database first (if you have not loaded the database schema before)
cd $GOPATH/src/github.com/open-falcon/falcon-plus/scripts/mysql/db_schema/
mysql -h 127.0.0.1 -u root -p < 1_uic-db-schema.sql
mysql -h 127.0.0.1 -u root -p < 2_portal-db-schema.sql
mysql -h 127.0.0.1 -u root -p < 3_dashboard-db-schema.sql
mysql -h 127.0.0.1 -u root -p < 4_graph-db-schema.sql
mysql -h 127.0.0.1 -u root -p < 5_alarms-db-schema.sql
NOTE: if you are upgrading from v0.1 to v0.2.0(or above),then. More upgrading instruction
mysql -h 127.0.0.1 -u root -p < 5_alarms-db-schema.sql
cd $GOPATH/src/github.com/open-falcon/falcon-plus/
# make all modules
make all
# make specified module
make agent
# pack all modules
make pack
- after
make pack
you will gotopen-falcon-vx.x.x.tar.gz
- if you want to edit configure file for each module, you can edit
config/xxx.json
before you domake pack
export WorkDir="$HOME/open-falcon"
mkdir -p $WorkDir
tar -xzvf open-falcon-vx.x.x.tar.gz -C $WorkDir
cd $WorkDir
cd $WorkDir
./open-falcon start
# check modules status
./open-falcon check
for example:
# ./open-falcon [start|stop|restart|check|monitor|reload] module
./open-falcon start agent
./open-falcon check
falcon-graph UP 53007
falcon-hbs UP 53014
falcon-judge UP 53020
falcon-transfer UP 53026
falcon-nodata UP 53032
falcon-aggregator UP 53038
falcon-agent UP 53044
falcon-gateway UP 53050
falcon-api UP 53056
falcon-alarm UP 53063
- For debugging , You can check
$WorkDir/$moduleName/logs/xxx.log
- Follow this.
NOTE: if you want to use grafana as the dashboard, please check this.
make clean all pack
- Any issue or question is welcome, Please feel free to open github issues :)
- FAQ
This project exists thanks to all the people who contribute. [Contribute].