2018/06/07

How to install Open Falcon on Ubuntu 16.04

Python
sudo su
apt update
apt install -y libsasl2-dev python-dev libldap2-dev libssl-dev

MySQL
apt install -y mysql-server libmysqlclient-dev

Go Lang
curl -O https://storage.googleapis.com/golang/go1.10.2.linux-amd64.tar.gz
tar -xvf go1.10.2.linux-amd64.tar.gz
mv go /usr/local

nano ~/.profile
export PATH=$PATH:/usr/local/go/bin

source ~/.profile
go version
go version go1.10.2 linux/amd64

Redis
apt install build-essential tcl -y
cd /tmp/
curl -O http://download.redis.io/redis-stable.tar.gz
tar zxvf redis-stable.tar.gz
cd redis-stable
make
make test
make install
mkdir /etc/redis
cp /tmp/redis-stable/redis.conf /etc/redis
nano /etc/redis/redis.conf

supervised systemd
dir /var/lib/redis

nano /etc/systemd/system/redis.service

[Unit]
Description=Redis In-Memory Data Store
After=network.target

[Service]
User=redis
Group=redis
ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
ExecStop=/usr/local/bin/redis-cli shutdown
Restart=always

[Install]
WantedBy=multi-user.target

adduser --system --group --no-create-home redis
mkdir /var/lib/redis
chown redis:redis /var/lib/redis
chmod 770 /var/lib/redis

systemctl start redis
systemctl status redis
systemctl enable redis

redis-cli
127.0.0.1:6379> ping
PONG

Open Falcon
DB
cd /tmp/ && git clone https://github.com/open-falcon/falcon-plus.git
cd /tmp/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

Backend
cd /tmp/ && wget https://github.com/open-falcon/falcon-plus/releases/download/v0.2.1/open-falcon-v0.2.1.tar.gz
export FALCON_HOME=/usr/local
export WORKSPACE=$FALCON_HOME/open-falcon
mkdir -p $WORKSPACE
tar -xzvf open-falcon-v0.2.1.tar.gz -C $WORKSPACE
cd $WORKSPACE
./open-falcon start
./open-falcon start agent
./open-falcon check

Frontend
export HOME=/usr/local
export WORKSPACE=$HOME/open-falcon
mkdir -p $WORKSPACE
cd $WORKSPACE
git clone https://github.com/open-falcon/dashboard.git
cd $WORKSPACE/dashboard/
virtualenv ./env
./env/bin/pip install -r pip_requirements.txt -i https://pypi.douban.com/simple
nano rrd/config.py
API_ADDR = os.environ.get("API_ADDR","http://127.0.0.1:8080/api/v1")
PORTAL_DB_USER = os.environ.get("PORTAL_DB_USER","root")
PORTAL_DB_PASS = os.environ.get("PORTAL_DB_PASS","root")
ALARM_DB_USER = os.environ.get("ALARM_DB_USER","root")
ALARM_DB_PASS = os.environ.get("ALARM_DB_PASS","root")

Debug mode
./env/bin/python wsgi.py
Prod mode
./control start
See Log
./control tail

沒有留言:

張貼留言