目录
用influxdb连上freetsdb查看与influxdb兼容性:
摘要:
记录freetsdb编译及运行.
freetsdb版本:
采用最新的release版本v0.1.2, 改造自influxdb1.9.4
https://github.com/freetsdb/freetsdb/releases/tag/v0.1.2
编译:
进入根目录下载依赖的go模块:
go env -w GOPROXY=https://goproxy.cn,direct
# go mod init
go mod verify
go mod download
go mod vendor
进入根目录编译:
#!/bin/bash
HERE=`pwd`
cd $HERE
cd cmd/freets
echo `date` go build -o freets ./main.go
go build -o freets ./main.go
cp ./freets /usr/bin -f
cd $HERE
cd cmd/freetsd
echo `date` go build -o freetsd ./main.go
go build -o freetsd ./main.go
cp ./freetsd /usr/bin -f
cd $HERE
cd cmd/freetsd-ctl
echo `date` go build -o freetsd-ctl ./main.go
go build -o freetsd-ctl ./main.go
cp ./freetsd-ctl /usr/bin -f
cd $HERE
cd cmd/freetsd-meta
echo `date` go build -o freetsd-meta ./main.go
go build -o freetsd-meta ./main.go
cp ./freetsd-meta /usr/bin -f
cd $HERE
cd cmd/freets_inspect
echo `date` go build -o freets_inspect ./main.go
go build -o freets_inspect ./main.go
cp ./freets_inspect /usr/bin -f
cd $HERE
cd cmd/freets_tools
echo `date` go build -o freets_tools ./main.go
go build -o freets_tools ./main.go
cp ./freets_tools /usr/bin -f
# cd $HERE
# cd cmd/freets_tsm
# echo `date` go build -o freets_tsm ./main.go
# go build -o freets_tsm ./main.go
# cp ./freets_tsm /usr/bin -f
cd $HERE
cd cmd/store
echo `date` go build -o store ./main.go
go build -o store ./main.go
cp ./store /usr/bin -f
cd $HERE
运行:
生成配置文件:
生成freetsd-meta元数据服务配置:
freetsd-meta config > freetsd-meta.conf
生成freetsd数据服务配置:
freetsd config > freetsd.conf
首次运行:
#!/bin/bash
echo pkill freetsd
pkill freetsd
echo `date` sleep 2s
sleep 2s
echo `date` rm /root/.freetsdb -rf
rm /root/.freetsdb -rf
echo `date` sleep 2s
sleep 2s
echo `date` bash ./run-meta.sh
bash ./run-meta.sh
echo `date` sleep 2s
sleep 2s
echo `date` freetsd-ctl add-meta localhost:8091
freetsd-ctl add-meta localhost:8091
echo `date` bash ./run-data.sh
bash ./run-data.sh
echo `date` sleep 2s
sleep 2s
echo `date` freetsd-ctl add-data localhost:8088
freetsd-ctl add-data localhost:8088
运行要点:
- 本次运行是使用单meta节点, 如果此前存在raft.db, 则认为已建立集群, 一直等待leader出现
- 强行删除数据目录目的在于避免raft.db的出现
- 使用前必须 add-meta 和 add-data
用influxdb连上freetsdb查看与influxdb兼容性:
默认端口为8086, 测试与influxdb兼容
root@localhost:~/.freetsdb/meta# influx
Connected to http://localhost:8086 version 1.8.4
InfluxDB shell version: 1.8.10
>
>
> show databases
name: databases
name
----
_internal
NOAA_water_database
>
>
写入数据后查看 /roo/.freetsdb/数据目录
root@localhost:~/.freetsdb# tree
.
├── data
│ ├── _internal
│ │ ├── monitor
│ │ │ └── 1
│ │ │ └── fields.idx
│ │ └── _series
│ │ ├── 00
│ │ │ └── 0000
│ │ ├── 01
│ │ │ └── 0000
│ │ ├── 02
│ │ │ └── 0000
│ │ ├── 03
│ │ │ └── 0000
│ │ ├── 04
│ │ │ └── 0000
│ │ ├── 05
│ │ │ └── 0000
│ │ ├── 06
│ │ │ └── 0000
│ │ └── 07
│ │ └── 0000
│ ├── NOAA_water_database
│ │ ├── autogen
│ │ │ ├── 2
│ │ │ │ ├── 000000001-000000001.tsm
│ │ │ │ └── fields.idx
│ │ │ ├── 3
│ │ │ │ ├── 000000001-000000001.tsm
│ │ │ │ └── fields.idx
│ │ │ ├── 4
│ │ │ │ ├── 000000001-000000001.tsm
│ │ │ │ └── fields.idx
│ │ │ ├── 5
│ │ │ │ ├── 000000001-000000001.tsm
│ │ │ │ └── fields.idx
│ │ │ ├── 6
│ │ │ │ ├── 000000001-000000001.tsm
│ │ │ │ └── fields.idx
│ │ │ └── 7
│ │ │ ├── 000000001-000000001.tsm
│ │ │ └── fields.idx
│ │ └── _series
│ │ ├── 00
│ │ │ └── 0000
│ │ ├── 01
│ │ │ └── 0000
│ │ ├── 02
│ │ │ └── 0000
│ │ ├── 03
│ │ │ └── 0000
│ │ ├── 04
│ │ │ └── 0000
│ │ ├── 05
│ │ │ └── 0000
│ │ ├── 06
│ │ │ └── 0000
│ │ └── 07
│ │ └── 0000
│ └── node.json
├── meta
│ ├── node.json
│ ├── raft.db
│ └── snapshots
└── wal
├── _internal
│ └── monitor
│ └── 1
│ └── _00001.wal
└── NOAA_water_database
└── autogen
├── 2
│ └── _00002.wal
├── 3
│ └── _00002.wal
├── 4
│ └── _00002.wal
├── 5
│ └── _00002.wal
├── 6
│ └── _00002.wal
└── 7
└── _00002.wal
44 directories, 39 files